Temario del curso
Introducción
- ¿Qué es la programación y por qué merece nuestra atención?
- Historia de la programación
- Oportunidad de automatizar tareas mediante software
- El rol del programador y del computador en la empresa
- La programación hoy: tendencias actuales del mercado de desarrollo
- Programación declarativa e imperativa: ¿Cómo o ¿Qué?
- Máquina de Turing
- Compilación, compilación y ejecución "al vuelo" (interpretación).
Repaso de conceptos de lógica y álgebra booleana
- Predicados
- Enunciados lógicos
- Tautologías
- Álgebra booleana
El primer programa
- Estructuralmente
- Funcionalmente
- Orientado a objetos
- ¿Y de qué otra manera?
Tipos simples
- Representación de cadenas de texto
- Números enteros
- Números de punto flotante
- Booleanos
- Tipo Null
- Valor vacío o no inicializado
- Tipado fuerte y débil
Estructuras de datos
- Conceptos FIFO y LIFO
- Pilas
- Colas
- Declaración de arreglos y listas
- Indexación
- Mapas
- Registros
- Árboles
Operadores
- Operadores de asignación.
- Operadores aritméticos.
- Operadores de comparación
- Comparación de valores en diferentes lenguajes
- Operadores bit a bit
- Concatenación
- Operadores de incremento y decremento
- Errores más comunes
Control del programa
- Instrucciones if e if-else
- Instrucciones goto; discusión sobre sus problemas de aplicación.
- Instrucción switch
- Bucle for, for-in
- Bucle while, do-while
- Bucle foreach
- Interrupción de bucles
Creación de código reutilizable
- Programación funcional
- Programación orientada a objetos
Paradigmas de programación funcional
- ¿Qué es una función?
- Función y procedimiento
- Fundamentos del cálculo lambda
- Argumentos de función
- Retorno de valores
- Funciones como argumentos
- Funciones anónimas
- Clausuras (Closures)
- Recursividad
Paradigmas de programación orientada a objetos
- Representación de entidades del mundo real en filosofía y ontología
- Decisión sobre qué objetos o tipos de datos modelar
- Declaración de clases
- Creación de instancias de clases
- Campos y estado del objeto
- Métodos y comportamiento del objeto
- Abstracción
- Encapsulamiento
- Herencia
- Polimorfismo
- Asociación y agregación
- Delegación y separación de relaciones entre objetos
- Módulos, paquetes y bibliotecas
- Compartición de API
- Modelado del sistema como clases y objetos
- Descripción y programación de relaciones entre clases
- Programación desde una perspectiva de negocios
Buenas prácticas de programación
- Pasos en falso y errores comunes
- Código de alto nivel y su interpretación a bajo nivel
- Optimización de código
- Principio KISS
- Principio DRY
- Principio "Lo peor es mejor"
- Separación entre abstracción e implementación
- Métodos de detección de errores en programas lógicos
- Convenciones de codificación
- Comentarios en el código
- Métricas de software
Visión general de estas tecnologías y lenguajes
- Ámbitos de aplicación de estos lenguajes
- Principales características de cada lenguaje
- Proyecciones de desarrollo
- Directrices futuras de desarrollo: algoritmos, optimización de código, aplicación de patrones, patrones de diseño, patrones arquitectónicos, estándares analíticos
- Reducción de estructuras de control mediante el uso de inteligencia artificial y toma de decisiones automatizada
- ¿Qué plataforma elegir? Consultas individuales
Testimonios (5)
El formador fue muy paciente con todos y estaba dispuesto a repetir si las personas no entendían. Se aseguró de que todos comprendieran antes de continuar.
Henry - Vodacom
Curso - Introduction to Programming
Traducción Automática
Me ha proporcionado una base sólida para adentrarme al apasionante mundo de la programación :)
Andrew Jones - Vodacom
Curso - Introduction to Programming
Traducción Automática
El conferencista tenía un conocimiento extenso sobre el tema y estaba dispuesto a compartirlo.
Clive Lloyd - Vodacom
Curso - Introduction to Programming
Traducción Automática
El contenido estaba lo suficientemente detallado para que pudiera comprender los fundamentos y conceptos, y la entrega fue bien ejecutada.
Anwar - Vodacom
Curso - Introduction to Programming
Traducción Automática
Paciencia y ritmo
vuyisa - Vodacom
Curso - Introduction to Programming
Traducción Automática