
Curso de programación de software
Aprenda a escribir software real desde cero — desde su primera línea de código hasta una aplicación completamente empaquetada y probada. Este curso cubre todo lo que un principiante necesita para desarrollar habilidades prácticas de programación rápidamente. Usted trabajará en proyectos prácticos, dominará conceptos fundamentales y finalizará listo para contribuir en un equipo de desarrollo profesional.
Lo que vas a aprender:
Usted comenzará configurando un entorno de desarrollo profesional y aprendiendo cómo los computadores ejecutan código en realidad. A partir de ahí, dominará la sintaxis básica, los tipos de datos, el flujo de control y las funciones antes de pasar a la programación orientada a objetos y las estructuras de datos. Aprenderá a manejar errores correctamente, a leer y escribir archivos, y a consumir API web. El curso también cubre la colaboración con Git, las pruebas automatizadas y las prácticas de calidad de código. Al finalizar, tendrá un proyecto completo en su portafolio y una ruta clara hacia su primer cargo como desarrollador.
Cómo estudias de forma práctica Curso de programación de software
Cómo practicas Curso de programación de software
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 • 39 LeccionesDuración entre 4 y 360 horas (tú decides)
Capítulo 1OcultarOcultar detallesVer detallesFundamentos de Programación y Configuración del Entorno
Fundamentos de Programación y Configuración del Entorno
Lección 1 • Elegir e Instalar un Lenguaje
Compara los paradigmas de los lenguajes de programación y guía la instalación de un entorno de ejecución de lenguaje amigable para principiantes. Establece una cadena de herramientas consistente para todo el curso.
Lección 2 • Cómo Ejecutan Programas los Computadores
Explica el ciclo de búsqueda-decodificación-ejecución, la memoria y el rol del sistema operativo. Fundamenta todos los conceptos de codificación posteriores en la realidad del hardware.
Lección 3 • Control de Versiones con Conceptos Básicos de Git
Presenta Git como una red de seguridad para cambios de código y colaboración. Los estudiantes confirman su primer proyecto, estableciendo hábitos usados en cada capítulo posterior.
Lección 4 • Configurar el Entorno de Desarrollo
Recorre la selección de editores, extensiones y conceptos básicos de la terminal. Un entorno configurado correctamente reduce la fricción a lo largo de todos los capítulos siguientes.
Capítulo 2OcultarOcultar detallesVer detallesSintaxis Central del Lenguaje y Tipos de Datos
Sintaxis Central del Lenguaje y Tipos de Datos
Lección 1 • Trabajar con Cadenas de Texto
Explora la indexación, segmentación, concatenación y métodos incorporados comunes de cadenas de texto. La manipulación de cadenas es esencial para la entrada y salida del usuario en proyectos posteriores.
Lección 2 • Variables y Asignación
Cubre la declaración de variables, convenciones de nomenclatura y vinculación en memoria. Entender las variables es un prerrequisito para cada concepto de codificación siguiente.
Lección 3 • Operadores y Expresiones
Enseña operadores aritméticos, de comparación, lógicos y de asignación con reglas de precedencia. Las expresiones son los bloques de construcción de todo el flujo de control que se cubre a continuación.
Lección 4 • Tipos de Datos Primitivos
Examina enteros, flotantes, booleanos y cadenas de texto con sus implicaciones de memoria. La selección correcta del tipo previene errores comunes introducidos más adelante en los capítulos de lógica.
Lección 5 • Operaciones de Entrada y Salida
Demuestra la lectura de entradas del usuario y la impresión de salida formateada en la consola. Estas habilidades permiten los programas interactivos que se construyen a lo largo del curso.
Capítulo 3OcultarOcultar detallesVer detallesFlujo de Control y Toma de Decisiones
Flujo de Control y Toma de Decisiones
Lección 1 • Sentencias Condicionales
Cubre las ramas if, else-if y else con condiciones booleanas. Las condicionales son el mecanismo principal para la lógica basada en decisiones en todos los programas.
Lección 2 • Depurar la Lógica del Flujo de Control
Usa declaraciones de impresión y un depurador para rastrear la ejecución condicional y de bucles. Las habilidades de depuración sistemática reducen el tiempo dedicado a corregir errores lógicos en proyectos posteriores.
Lección 3 • Bucles e Iteración
Introduce los bucles while y for para repetir operaciones sobre datos o conteos. La iteración sustenta las colecciones, los algoritmos y el procesamiento de datos cubiertos más adelante.
Lección 4 • Sentencias de Control de Bucles
Explica break, continue y return dentro de los bucles para alterar el flujo de iteración. El control preciso de los bucles es crítico para escribir algoritmos eficientes y correctos.
Lección 5 • Iterar sobre Colecciones
Aplica bucles a listas, cadenas de texto y rangos usando patrones idiomáticos. Prepara a los estudiantes para el capítulo de colecciones mostrando la iteración en contexto.
Capítulo 4OcultarOcultar detallesVer detallesFunciones y Organización del Código
Funciones y Organización del Código
Lección 1 • Organizar el Código en Módulos
Muestra cómo dividir el código entre archivos e importar funcionalidad entre módulos. El diseño modular es la base de los proyectos más grandes en los capítulos avanzados.
Lección 2 • Definir y Llamar Funciones
Cubre la sintaxis de funciones, parámetros, valores de retorno y mecánica de llamadas. Las funciones son la unidad principal de reutilización de código a lo largo del resto del curso.
Lección 3 • Fundamentos de Recursión
Introduce el pensamiento recursivo con casos base y casos recursivos. La recursión es fundamental para el recorrido de árboles y los algoritmos de divide y vencerás presentados más adelante.
Lección 4 • Argumentos por Defecto y de Palabra Clave
Demuestra parámetros opcionales, valores por defecto y paso de argumentos con nombre. Las firmas de función flexibles hacen que las API sean más fáciles de usar y extender.
Lección 5 • Alcance y Tiempo de Vida de las Variables
Explica el alcance local, envolvente y global con los riesgos de ocultamiento de variables. Una gestión adecuada del alcance previene errores sutiles en programas con múltiples funciones.
Capítulo 5OcultarOcultar detallesVer detallesEstructuras de Datos y Colecciones
Estructuras de Datos y Colecciones
Lección 1 • Elegir la Estructura de Datos Correcta
Compare la complejidad temporal y espacial de listas, diccionarios y conjuntos para operaciones comunes. La selección informada de estructuras es crítica para el capítulo de algoritmos que se avecina.
Lección 2 • Conjuntos y Operaciones de Unicidad
Introduzca los conjuntos para la deduplicación, pruebas de membresía y álgebra de conjuntos. Las operaciones de conjuntos proporcionan soluciones eficientes a problemas que involucran elementos únicos.
Lección 3 • Tuplas y Secuencias Inmutables
Explica las tuplas, su inmutabilidad y casos de uso como los valores de retorno múltiples. Elegir tuplas en lugar de listas señala la intención y previene la mutación accidental.
Lección 4 • Listas y Arreglos Dinámicos
Cubre la creación, indexación, segmentación y métodos de mutación de listas. Las listas son el tipo de colección más común y aparecen en cada proyecto siguiente.
Lección 5 • Diccionarios y Almacenes Clave-Valor
Enseña patrones de creación, búsqueda, actualización e iteración de diccionarios. Los diccionarios potencian la configuración, el almacenamiento en caché y el modelado de datos en proyectos posteriores.
Capítulo 6OcultarOcultar detallesVer detallesProgramación Orientada a Objetos
Programación Orientada a Objetos
Lección 1 • Clases e Instancias de Objetos
Define la sintaxis de las clases, constructores y creación de instancias. Las clases son el mecanismo de abstracción principal para todos los patrones de diseño orientado a objetos que se presentarán.
Lección 2 • Principios de Diseño Orientado a Objetos
Introduzca los principios SOLID y patrones de diseño comunes a nivel conceptual. Estos principios guían las decisiones de arquitectura tomadas en el capítulo del proyecto final.
Lección 3 • Polimorfismo y Duck Typing
Explica cómo objetos de diferentes clases comparten una interfaz común a través del polimorfismo. El diseño polimórfico hace que los sistemas sean flexibles y más fáciles de extender.
Lección 4 • Herencia y Reutilización de Código
Demuestra la herencia simple y multinivel con sobrescritura de métodos. La herencia permite un modelado jerárquico y reduce la duplicación de código entre clases relacionadas.
Lección 5 • Métodos y Encapsulamiento
Cubre métodos de instancia, el parámetro self y convenciones de control de acceso. El encapsulamiento oculta los detalles de implementación y reduce el acoplamiento entre componentes.
Capítulo 7OcultarOcultar detallesVer detallesManejo de Errores y Código Robusto
Manejo de Errores y Código Robusto
Lección 1 • Registro de Eventos y Observabilidad
Introduzca el registro estructurado como reemplazo de la depuración basada en impresiones. Los registros proporcionan visibilidad en tiempo de ejecución esencial para diagnosticar problemas en aplicaciones desplegadas.
Lección 2 • Comprender las Excepciones y los Errores
Distingue los errores de sintaxis, las excepciones en tiempo de ejecución y los errores lógicos por categoría. La clasificación correcta acelera el diagnóstico e informa la estrategia de manejo adecuada.
Lección 3 • Validación de Entradas y Codificación Defensiva
Aplica patrones de validación para proteger las funciones contra entradas incorrectas antes del procesamiento. La codificación defensiva reduce la superficie de fallas en tiempo de ejecución en producción.
Lección 4 • Lanzar y Crear Excepciones Personalizadas
Muestra cómo lanzar excepciones intencionalmente y definir clases de excepción específicas del dominio. Las excepciones personalizadas hacen explícitos los contratos de error de las librerías y las API.
Lección 5 • Bloques Try-Except y Finally
Enseña la sintaxis try, except, else y finally para el manejo estructurado de excepciones. Estas construcciones previenen fallos del sistema y aseguran que el código de limpieza siempre se ejecute.
Capítulo 8OcultarOcultar detallesVer detallesProyecto Aplicado y Desarrollo Profesional de Software
Proyecto Aplicado y Desarrollo Profesional de Software
Lección 1 • Planificación del Proyecto y Requisitos
Traduzca un enunciado de problema en historias de usuario, criterios de aceptación y un plan de módulos. Los requisitos claros previenen la expansión descontrolada del alcance y guían todas las decisiones de implementación.
Lección 2 • Documentación y Comentarios de Código
Enseña convenciones de docstrings, comentarios en línea y generación de documentación de referencia de API. Una buena documentación hace que el código sea utilizable por los compañeros de equipo y futuros mantenedores.
Lección 3 • Empaquetar y Compartir su Proyecto
Guía la gestión de dependencias, el empaquetado del proyecto y la publicación en un registro de paquetes. Los paquetes distribuibles son el entregable estándar en los equipos de software profesionales.
Lección 4 • Pruebas Automatizadas con Pruebas Unitarias
Cubre el diseño de casos de prueba, afirmaciones y la ejecución de un conjunto de pruebas con un framework estándar. Las pruebas automatizadas detectan regresiones y validan el comportamiento a medida que el proyecto crece.
Lección 5 • Calidad del Código y Refactorización
Aplica herramientas de linting, formateo y refactorización sistemática para mejorar la legibilidad y el mantenimiento. El código limpio reduce el tiempo de incorporación y el costo de mantenimiento a largo plazo.
Tu certificado válido de finalización
Este curso es para ti:
Personas en transición profesional: buscan un camino estructurado hacia el desarrollo de software desde campos no relacionados.
Recién egresados: desean añadir habilidades prácticas de codificación a su formación académica.
Emprendedores: quieren crear prototipos y construir sus propios productos digitales de forma independiente.
Analistas y profesionales de datos: listos para automatizar tareas repetitivas mediante scripts personalizados.
Aficionados: entusiasmados por convertir ideas de proyectos creativos en aplicaciones completamente funcionales.
Freelancers: buscan ampliar su oferta de servicios añadiendo capacidades de programación.
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




















