
Curso de Programación
Aprenda a escribir software real desde cero, partiendo de conceptos básicos de programación y avanzando hacia diseño orientado a objetos, algoritmos y flujos de trabajo profesionales. Este curso cubre todo lo que una persona principiante necesita para construir programas funcionales y bien estructurados, y todo lo que un desarrollador intermedio requiere para subir de nivel. Al finalizar, usted tendrá las competencias, el portafolio y la confianza para seguir una carrera en desarrollo de software.
Lo que vas a aprender:
Usted comenzará por entender cómo las computadoras ejecutan código, luego avanzará a través de variables, flujo de control y funciones antes de abordar estructuras de datos y programación orientada a objetos. Aprenderá a manejar archivos, procesar datos JSON y CSV, y consumir API REST. El curso cubre algoritmos fundamentales, análisis de complejidad Big-O y métodos de ordenamiento tanto básicos como eficientes. También aplicará prácticas profesionales como pruebas unitarias, control de versiones con Git, depuración y refactorización de código. Módulos complementarios presentan bases de datos SQL, visualización de datos, fundamentos de seguridad y estrategias de desarrollo profesional. Cada concepto se construye directamente sobre el anterior, brindándole una base completa y práctica en programación de computadores.
Cómo estudias de forma práctica Curso de Programación
Cómo practicas Curso de Programación
Para ti que eres empresa y quieres capacitar a tu equipo
En Dedika para empresas, el curso incluye ejercicios y ejemplos adaptados a tu propio negocio y a las necesidades de tu empresa.
Contenido del curso
8 Capítulos • 40 LeccionesDuración entre 4 y 360 horas (tú decides)
Capítulo 1OcultarOcultar detallesVer detallesFundamentos de programación y computación
Fundamentos de programación y computación
Lección 1 • Entrada, salida y formato básico
Enseña a leer la entrada del usuario e imprimir salida con formato. Conecta conceptos abstractos de datos con un comportamiento del programa visible e interactivo.
Lección 2 • Configuración de un entorno de desarrollo
Instala y configura un editor de código, un tiempo de ejecución y una terminal. Asegura que cada estudiante pueda escribir, ejecutar y depurar código desde el primer día.
Lección 3 • Operadores y expresiones
Cubre operadores aritméticos, relacionales, lógicos y de asignación. Los estudiantes pueden construir y evaluar expresiones compuestas correctamente.
Lección 4 • Variables, tipos de datos y literales
Introduce el almacenamiento con nombre, los tipos primitivos y la sintaxis literal. Establece el vocabulario utilizado a lo largo de cada capítulo subsiguiente.
Lección 5 • Cómo los computadores ejecutan programas
Cubre los ciclos de CPU, la jerarquía de memoria y el modelo de búsqueda-decodificación-ejecución. Fundamenta todos los conceptos de codificación posteriores en el comportamiento físico de la máquina.
Capítulo 2OcultarOcultar detallesVer detallesFlujo de control y toma de decisiones
Flujo de control y toma de decisiones
Lección 1 • Condiciones de comparación y lógicas
Profundiza la comprensión de las expresiones booleanas compuestas y la evaluación de cortocircuito. Previene errores lógicos comunes en el código de ramificación.
Lección 2 • Control de bucle y patrones de iteración
Enseña break, continue y modismos de bucle comunes como los patrones de acumulador y centinela. Refina el diseño de bucles para mayor claridad y corrección.
Lección 3 • Bucles controlados por condición
Cubre bucles while y do-while para la repetición impulsada por una condición. Los estudiantes manejan la validación de entrada y la repetición impulsada por eventos.
Lección 4 • Bucles controlados por conteo
Introduce bucles for e iteración basada en rango para un número conocido de repeticiones. Construye la base para todos los algoritmos iterativos.
Lección 5 • Declaraciones condicionales
Cubre bloques if, else-if y else con condiciones booleanas. Permite que los programas elijan diferentes rutas de ejecución según los datos.
Capítulo 3OcultarOcultar detallesVer detallesFunciones y diseño de código modular
Funciones y diseño de código modular
Lección 1 • Definición y llamada de funciones
Cubre la declaración de funciones, listas de parámetros y valores de retorno. Establece la unidad básica de reutilización de código utilizada en cada capítulo posterior.
Lección 2 • Argumentos por defecto, de palabra clave y variables
Introduce firmas de parámetros flexibles, incluyendo valores por defecto y argumentos variables. Permite funciones que se adaptan a diferentes contextos de llamada.
Lección 3 • Alcance y tiempo de vida de variables
Explica las reglas de alcance local, envolvente y global, y el sombreado de variables. Previene errores sutiles causados por el uso compartido involuntario de variables.
Lección 4 • Funciones de orden superior y lambdas
Cubre el paso de funciones como argumentos, el retorno de funciones y la sintaxis de lambda anónima. Prepara a los estudiantes para patrones de programación funcional.
Lección 5 • Recursión y la pila de llamadas
Enseña la descomposición recursiva de problemas y el diseño de casos base. Los estudiantes resuelven problemas como factorial y recorrido de árboles usando recursión.
Capítulo 4OcultarOcultar detallesVer detallesEstructuras de datos: colecciones y secuencias
Estructuras de datos: colecciones y secuencias
Lección 1 • Conjuntos y tuplas
Cubre colecciones únicas no ordenadas y secuencias inmutables. Los estudiantes aplican operaciones de conjuntos y usan tuplas para datos de estructura fija.
Lección 2 • Cadenas como secuencias
Trata las cadenas como secuencias de caracteres indexadas y cubre operaciones comunes de cadena. Une los tipos primitivos y el comportamiento de colección.
Lección 3 • Arreglos y listas
Cubre el almacenamiento secuencial indexado, el acceso a elementos y la mutación. Proporciona el tipo de colección más fundamental para datos ordenados.
Lección 4 • Elección y combinación de estructuras de datos
Analiza las compensaciones de tiempo y espacio entre los tipos de colección. Los estudiantes diseñan estructuras compuestas para tareas realistas de modelado de datos.
Lección 5 • Diccionarios y mapas hash
Introduce el almacenamiento clave-valor, el hashing y la eficiencia de búsqueda. Los estudiantes modelan entidades del mundo real y construyen tablas de frecuencia.
Capítulo 5OcultarOcultar detallesVer detallesPrincipios de programación orientada a objetos
Principios de programación orientada a objetos
Lección 1 • Herencia y anulación de métodos
Enseña la creación de subclases, la reutilización de clases padre y la anulación de métodos. Permite el modelado jerárquico y la reutilización de código entre tipos relacionados.
Lección 2 • Composición y principios de diseño
Introduce la composición sobre la herencia, la responsabilidad única y el principio abierto-cerrado. Los estudiantes refactorizan diseños de clases para mayor flexibilidad.
Lección 3 • Métodos y encapsulamiento
Cubre métodos de instancia, modificadores de acceso y ocultación de datos. Los estudiantes protegen el estado interno y exponen interfaces públicas limpias.
Lección 4 • Polimorfismo e interfaces
Cubre duck typing, clases abstractas y contratos de interfaz. Los estudiantes escriben código que opera en múltiples tipos a través de una interfaz común.
Lección 5 • Clases, objetos y atributos
Define las clases como planos y los objetos como instancias con estado. Introduce la abstracción central de la POO utilizada a lo largo del desarrollo de software.
Capítulo 6OcultarOcultar detallesVer detallesE/S de archivos, manejo de errores y excepciones
E/S de archivos, manejo de errores y excepciones
Lección 1 • Lectura y escritura de archivos de texto
Cubre la apertura, lectura, escritura y cierre de archivos con administradores de contexto. Conecta los datos en memoria con el almacenamiento persistente en disco.
Lección 2 • Tipos de excepción y la jerarquía de errores
Mapea las categorías comunes de excepciones y su jerarquía de herencia. Los estudiantes identifican el tipo de excepción correcto para cada escenario de fallo.
Lección 3 • Bloques try, except y finally
Cubre el manejo estructurado de excepciones, múltiples cláusulas except y código de limpieza. Los estudiantes previenen fallos y liberan recursos de manera confiable.
Lección 4 • Excepciones personalizadas y programación defensiva
Enseña a definir clases de excepción personalizadas y a validar entradas de forma proactiva. Los estudiantes diseñan APIs que comunican errores claramente.
Lección 5 • Formatos de datos estructurados
Enseña a analizar y serializar datos CSV y JSON. Prepara a los estudiantes para intercambiar datos con sistemas externos y APIs.
Capítulo 7OcultarOcultar detallesVer detallesAlgoritmos, búsqueda y ordenamiento
Algoritmos, búsqueda y ordenamiento
Lección 1 • Análisis de algoritmos y notación Big-O
Introduce la complejidad temporal y espacial, y la clasificación Big-O. Brinda a los estudiantes un marco para comparar la eficiencia de algoritmos objetivamente.
Lección 2 • Búsqueda lineal y binaria
Implementa y compara algoritmos de búsqueda secuencial y binaria. Los estudiantes comprenden las precondiciones y el rendimiento de cada enfoque.
Lección 3 • Resolución de problemas basada en recursión
Aplica el pensamiento recursivo a problemas clásicos como árboles de búsqueda binaria y permutaciones. Refuerza la recursión del capítulo tres en contextos algorítmicos.
Lección 4 • Algoritmos de ordenamiento eficientes
Implementa ordenamiento por mezcla y quicksort usando divide y vencerás. Los estudiantes analizan el rendimiento O(n log n) y las estrategias de partición.
Lección 5 • Algoritmos de ordenamiento elementales
Cubre los ordenamientos de burbuja, selección e inserción con trazas paso a paso. Construye la intuición para la mecánica de ordenamiento antes de los algoritmos avanzados.
Capítulo 8OcultarOcultar detallesVer detallesPrácticas de ingeniería de software y flujo de trabajo de proyectos
Prácticas de ingeniería de software y flujo de trabajo de proyectos
Lección 1 • Calidad de código y refactorización
Cubre convenciones de nomenclatura, olores de código y técnicas sistemáticas de refactorización. Los estudiantes mejoran el código existente sin cambiar su comportamiento externo.
Lección 2 • Control de versiones con Git
Cubre la inicialización de repositorios, confirmaciones, ramificación y fusión. Permite el desarrollo colaborativo e individual con un historial de cambios completo.
Lección 3 • Pruebas unitarias y desarrollo guiado por pruebas
Enseña a escribir pruebas unitarias, aserciones y el ciclo rojo-verde-refactorizar. Los estudiantes verifican la corrección y previenen regresiones automáticamente.
Lección 4 • Documentación y legibilidad del código
Enseña comentarios en línea, docstrings y autoría de README. Los estudiantes producen código que los compañeros de equipo pueden entender y mantener.
Lección 5 • Planificación y entrega del proyecto final
Guía a los estudiantes a través de la recopilación de requisitos, el desarrollo iterativo y la entrega final. Integra todas las competencias previas en un artefacto de software completo.
Tu certificado válido de finalización
Este curso es para ti:
Persona en transición laboral: busca una ruta estructurada hacia el desarrollo de software desde un campo no técnico.
Profesional recién graduado: quiere competencias prácticas de programación que la formación académica no le brindó por completo.
Emprendedor: necesita prototipar ideas y comunicarse eficazmente con un equipo de desarrollo.
Profesional de datos: busca automatizar flujos de trabajo e ir más allá de las herramientas de análisis basadas en hojas de cálculo.
Aficionado: ha experimentado con tutoriales pero desea construir aplicaciones completas y funcionales.
Profesional de TI: quiere expandirse desde el soporte de infraestructura hacia responsabilidades de desarrollo de software.
Lo que dicen nuestros estudiantes
Sus clases son perfectas. Adquirí el paquete de un año y, finalmente, tengo la oportunidad de seguir diversos temas de mi interés sin necesidad de cambiar de plataforma... les agradezco por todo lo que hacen, ya los he recomendado a otras personas...

Me gusta cómo las lecciones van directo al grano y cómo puedo cambiar capítulos y saltar contenidos que no necesito.

Me gusta el contenido y la forma de presentación y transcripción de videos, ¡lo que acelera el proceso!

La plataforma es rápida, simple de usar. La diversidad de contenido y los videos complementarios ayudan mucho en el aprendizaje.

Principales capacitaciones
Preguntas frecuentes
¿Quién es Dedika?
¿El certificado es válido en Perú?
¿Los cursos son gratuitos?
¿Cuál es la carga horaria del curso?
¿Cómo son los cursos?
¿Cómo funcionan los cursos?
¿Cuál es la duración de los cursos?
¿Cuál es el costo o precio de los cursos?
¿Qué es un curso EAD u online y cómo funciona?
Curso en PDF




















