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

Curso de Programación

4.7

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.

Dedika para empresas

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.

Haz clic aquí

Contenido del curso

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

Capítulo 1Ver detalles

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

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

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

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

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

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

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

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.

Certificación

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...
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