
Curso de programador de software
Pasa de escribir tu primera línea de código a diseñar sistemas de software escalables que empresas reales ponen en producción. Este curso cubre desde los conceptos básicos de programación y bases de datos hasta APIs, pruebas y despliegue en la nube. Te graduarás con un conjunto de habilidades listo para tu portafolio y la profundidad técnica que las empresas buscan en realidad.
Lo que vas a aprender:
Dominarás los conceptos fundamentales de programación en los que se basan todos los desarrolladores profesionales, incluyendo variables, flujo de control, funciones y diseño orientado a objetos. Crearás y protegerás APIs RESTful, diseñarás bases de datos relacionales y NoSQL, y escribirás pruebas automatizadas en todos los niveles de la pirámide de pruebas. El curso cubre patrones de arquitectura de software, canalizaciones de DevOps, contenerización con Docker y despliegue en la nube. También aprenderás optimización del rendimiento, prácticas de codificación segura y flujos de trabajo Agile en equipo. Al finalizar, tendrás las competencias para contribuir en equipos de ingeniería reales y el portafolio que lo demuestra.
Cómo estudias de forma práctica Curso de programador de software
Cómo practicas Curso de programador de software
Para ti que eres empresa y quieres formar 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 • Configuración de Tu Entorno de Desarrollo
Instala y configura un editor de código, un entorno de ejecución y un gestor de paquetes. Garantiza que cada estudiante tenga un espacio de trabajo idéntico y reproducible antes de escribir cualquier código.
Lección 2 • Competencia en la Línea de Comandos
Enseña navegación, manipulación de archivos y gestión de procesos en un terminal. La fluidez en la línea de comandos acelera cada flujo de trabajo posterior en el curso.
Lección 3 • Control de Versiones con Git
Presenta Git como la herramienta estándar de la industria para rastrear cambios y colaborar. Los estudiantes hacen commits, crean ramas y envían código al finalizar esta sección.
Lección 4 • Cómo Ejecutan Código los Ordenadores
Cubre los ciclos de instrucción de la CPU, la jerarquía de memoria y el papel de los sistemas operativos. Establece el contexto del hardware que explica cada concepto de nivel superior en el curso.
Capítulo 2OcultarOcultar detallesVer detallesConceptos Fundamentales de Programación
Conceptos Fundamentales de Programación
Lección 1 • Colecciones y Patrones de Iteración
Presenta arrays, listas y diccionarios para almacenar datos agrupados. Los estudiantes aplican patrones de iteración para procesar conjuntos de datos reales de manera eficiente.
Lección 2 • Variables, Tipos y Operadores
Explica cómo se almacenan, tipan y transforman los datos mediante expresiones. Proporciona el vocabulario necesario para leer y escribir cualquier sentencia de código.
Lección 3 • Funciones y Código Modular
Define las funciones como unidades de lógica reutilizables y comprobables. El diseño modular reduce la duplicación y es la base de todos los programas más grandes de este curso.
Lección 4 • Flujo de Control y Toma de Decisiones
Cubre los condicionales y bucles que dirigen las rutas de ejecución del programa. Los estudiantes implementan lógica de ramificación y algoritmos iterativos desde cero.
Lección 5 • Manejo de Errores y Depuración
Enseña el manejo estructurado de excepciones y técnicas sistemáticas de depuración. Los estudiantes aprenden a leer trazas de pila y aislar fallos utilizando un depurador.
Capítulo 3OcultarOcultar detallesVer detallesProgramación Orientada a Objetos
Programación Orientada a Objetos
Lección 1 • Composición e Inyección de Dependencias
Contrasta la composición con la herencia e introduce la inyección de dependencias. Los estudiantes aprenden cuándo preferir las relaciones tiene-un sobre las jerarquías es-un.
Lección 2 • Clases y Objetos
Define las clases como planos y los objetos como instancias con estado y comportamiento. Conecta la sintaxis de POO con las funciones modulares presentadas en el capítulo anterior.
Lección 3 • Herencia y Polimorfismo
Modela relaciones es-un mediante jerarquías de clases y sobreescritura de métodos. Los estudiantes escriben código polimórfico que maneja múltiples tipos a través de una única interfaz.
Lección 4 • Principios de Diseño SOLID
Aplica cinco principios fundamentales de diseño de OOP a ejemplos de código reales. Los estudiantes refactorizan clases mal estructuradas en diseños limpios y mantenibles.
Lección 5 • Encapsulación y Control de Acceso
Explica cómo ocultar el estado interno y exponer interfaces controladas. La encapsulación previene mutaciones no deseadas y refuerza límites de módulo claros.
Capítulo 4OcultarOcultar detallesVer detallesEstructuras de Datos y Algoritmos
Estructuras de Datos y Algoritmos
Lección 1 • Algoritmos de Ordenación y Búsqueda
Implementa y compara algoritmos clásicos de ordenación y búsqueda. Los estudiantes comparan implementaciones y justifican la selección de algoritmos por su complejidad.
Lección 2 • Estructuras de Datos Lineales
Cubre arrays, listas enlazadas, pilas y colas con sus ventajas y desventajas. Los estudiantes implementan cada estructura e identifican casos de uso apropiados.
Lección 3 • Análisis de Complejidad
Introduce la notación Big-O para medir la eficiencia de los algoritmos. Los estudiantes evalúan el rendimiento del código antes de elegir entre implementaciones competidoras.
Lección 4 • Estrategias de Diseño de Algoritmos
Introduce los enfoques divide y vencerás, programación dinámica y voraz. Los estudiantes descomponen problemas complejos en subproblemas resolubles.
Lección 5 • Árboles y Grafos
Explica los modelos de datos jerárquicos y de red utilizados en sistemas reales. Los estudiantes recorren árboles y grafos utilizando estrategias de profundidad y amplitud.
Capítulo 5OcultarOcultar detallesVer detallesBases de Datos y Persistencia de Datos
Bases de Datos y Persistencia de Datos
Lección 1 • Fundamentos de Bases de Datos Relacionales
Explica las tablas, claves y relaciones como la base de las bases de datos relacionales. Los estudiantes modelan un dominio utilizando diagramas entidad-relación antes de escribir cualquier consulta SQL.
Lección 2 • Integración de Bases de Datos en Código de Aplicación
Conecta una aplicación a una base de datos utilizando un ORM y patrones de consulta directa. Los estudiantes construyen una capa de repositorio que abstrae la persistencia de la lógica de negocio.
Lección 3 • NoSQL y Almacenes de Documentos
Contrasta los almacenes de documentos, clave-valor y familias de columnas con las bases de datos relacionales. Los estudiantes eligen el modelo de persistencia correcto para una forma de datos determinada.
Lección 4 • Lenguaje de Consulta SQL
Cubre las operaciones SELECT, INSERT, UPDATE, DELETE y JOIN. Los estudiantes escriben consultas que responden a preguntas de negocio reales sobre un conjunto de datos de ejemplo.
Lección 5 • Transacciones e Integridad de Datos
Explica las propiedades ACID y cómo las transacciones protegen la coherencia de los datos. Los estudiantes implementan lógica de commit y rollback en el código de la aplicación.
Capítulo 6OcultarOcultar detallesVer detallesDesarrollo Web y APIs
Desarrollo Web y APIs
Lección 1 • Construir una API RESTful
Diseña e implementa endpoints REST siguiendo convenciones orientadas a recursos. Los estudiantes crean una API CRUD respaldada por la capa de base de datos del capítulo anterior.
Lección 2 • Autenticación y Autorización
Implementa autenticación basada en tokens y control de acceso basado en roles. Los estudiantes aseguran los endpoints para que solo los usuarios autorizados puedan acceder a recursos protegidos.
Lección 3 • Consumir APIs Externas
Realiza solicitudes HTTP autenticadas a servicios de terceros y maneja las respuestas. Los estudiantes integran una API pública en su aplicación utilizando buenas prácticas.
Lección 4 • HTTP y el Ciclo de Solicitud Web
Explica los métodos HTTP, códigos de estado, cabeceras y el modelo de solicitud-respuesta. Este modelo mental sustenta cada API y framework web utilizado posteriormente.
Lección 5 • Documentación de API y Versionado
Genera documentación de API interactiva y gestiona cambios incompatibles mediante versionado. Una documentación clara reduce la fricción de integración para los consumidores de la API.
Capítulo 7OcultarOcultar detallesVer detallesPruebas de Software y Garantía de Calidad
Pruebas de Software y Garantía de Calidad
Lección 1 • Pruebas de Integración y de API
Prueba las interacciones entre componentes y valida los contratos de API de extremo a extremo. Los estudiantes detectan errores de integración que las pruebas unitarias no pueden detectar.
Lección 2 • Pruebas Unitarias en la Práctica
Escribe pruebas unitarias aisladas para funciones y clases utilizando un framework de pruebas. Los estudiantes logran una alta cobertura en los módulos centrales de lógica de negocio.
Lección 3 • Desarrollo Guiado por Pruebas
Aplica el ciclo rojo-verde-refactorizar para dirigir el diseño mediante pruebas fallidas. Los estudiantes experimentan cómo TDD produce código más simple y comprobable.
Lección 4 • Fundamentos y Estrategia de Pruebas
Presenta la pirámide de pruebas y las compensaciones coste-beneficio de cada capa. Los estudiantes planifican una estrategia de pruebas antes de escribir un solo caso de prueba.
Lección 5 • Integración Continua y Automatización de Pruebas
Configura una canalización de CI que ejecuta pruebas automáticamente en cada commit. Los estudiantes bloquean las fusiones cuando las pruebas fallan, aplicando puertas de calidad en el flujo de trabajo.
Capítulo 8OcultarOcultar detallesVer detallesArquitectura de Software y Diseño de Sistemas
Arquitectura de Software y Diseño de Sistemas
Lección 1 • Resiliencia y Tolerancia a Fallos
Diseña sistemas que se degradan de forma controlada ante fallos utilizando cortacircuitos y reintentos. Los estudiantes aplican patrones de resiliencia a la API construida en capítulos anteriores.
Lección 2 • Diseño de Escalabilidad y Rendimiento
Cubre el escalado horizontal, estrategias de almacenamiento en caché y balanceo de carga en la etapa de diseño. Los estudiantes identifican cuellos de botella antes de escribir código mediante la planificación de capacidad.
Lección 3 • Panorama de Patrones Arquitectónicos
Examina las arquitecturas en capas, dirigidas por eventos y de microservicios con sus compensaciones. Los estudiantes asignan un documento de requisitos a un estilo arquitectónico apropiado.
Lección 4 • Práctica de Diseño de Sistemas
Aplica todos los conceptos arquitectónicos para diseñar un sistema distribuido realista de extremo a extremo. Los estudiantes presentan y defienden sus diseños frente a escenarios de escalabilidad y fallos.
Lección 5 • Fundamentos de Diseño Guiado por el Dominio
Introduce los contextos acotados, agregados y el lenguaje ubicuo como herramientas de diseño. Los estudiantes particionan un modelo de dominio en módulos cohesivos e independientemente desplegables.
Tu certificado válido de finalización
Este curso es para ti:
Persona que cambia de carrera: busca una vía estructurada y alineada con las empresas para acceder al desarrollo de software.
Programador autodidacta: tiene lagunas en los fundamentos y necesita un plan de estudios coherente.
Profesional de TI: presta soporte a sistemas de software y desea pasar a construirlos.
Recién titulado: estudió una carrera no relacionada y está reorientándose hacia profesiones tecnológicas.
Emprendedor: crea productos y quiere colaborar de forma más eficaz con los desarrolladores.
Programador aficionado: ha completado tutoriales para principiantes y está preparado para profundizar a nivel profesional.
Lo que dicen nuestros alumnos
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... agradezco todo lo que hacéis, ya os he recomendado a otras personas...

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

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

La plataforma es rápida, fácil de usar. La diversidad de contenido y los vídeos complementarios ayudan mucho en el aprendizaje.

Principales capacitaciones
Preguntas frecuentes
¿Quién es Dedika?
¿El certificado es válido en España?
¿Los cursos son gratuitos?
¿Cuál es la carga lectiva 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 coste o precio de los cursos?
¿Qué es un curso EAD u online y cómo funciona?
Curso en PDF




















