Elige tu idioma
Curso de programación de software
Más de 2 millones de estudiantes en todo el mundo

Curso de programación de software

4.8

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.

Dedika para empresas

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.

Haz clic aquí

Contenido del curso

8 Capítulos • 39 LeccionesDuración entre 4 y 360 horas (tú decides)

Capítulo 1Ver detalles

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 2Ver detalles

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 3Ver detalles

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 4Ver detalles

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 5Ver detalles

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 6Ver detalles

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 7Ver detalles

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 8Ver detalles

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.

Certificación

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...
Giulio Carlo
Giulio CarloEstudiante de Marketing Digital
Me gusta cómo las lecciones van directo al grano y cómo puedo cambiar capítulos y saltar contenidos que no necesito.
Mariana Ferres
Mariana FerresEstudiante de Fotografía
Me gusta el contenido y la forma de presentación y transcripción de videos, ¡lo que acelera el proceso!
Luciana Alvarenga
Luciana AlvarengaEstudiante de Diseño de Uñas
La plataforma es rápida, simple de usar. La diversidad de contenido y los videos complementarios ayudan mucho en el aprendizaje.
André Felipe
André FelipeEstudiante de Ingeniería de Prompt

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