
Curso de programación en Java
Domine Java desde cero y construya las habilidades que los empleadores en realidad buscan. Este curso lo lleva desde la sintaxis básica y el diseño orientado a objetos hasta la concurrencia, la optimización de rendimiento y los flujos de trabajo profesionales. Cada concepto está respaldado por código práctico que usted mismo escribe. Empiece a escribir Java con calidad de producción hoy.
Lo que vas a aprender:
Usted aprenderá a configurar un entorno de desarrollo profesional en Java y a escribir código limpio y bien estructurado desde el primer día. El curso cubre programación orientada a objetos, el Collections Framework, genéricos, lambdas y la API de Streams. Usted manejará excepciones correctamente, trabajará con archivos y redes, y construirá aplicaciones multihilo usando herramientas modernas de concurrencia. Más allá del lenguaje en sí, usted usará Maven o Gradle, escribirá pruebas automatizadas con JUnit 5 y Mockito, y conectará aplicaciones Java a bases de datos relacionales con JDBC y JPA. También estudiará patrones de diseño, perfilamiento de rendimiento y las prácticas profesionales que hacen efectivos a los desarrolladores Java en equipos reales.
Cómo estudias de forma práctica Curso de programación en Java
Cómo practicas Curso de programación en Java
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 Java y Configuración del Entorno
Fundamentos de Java y Configuración del Entorno
Lección 1 • Panorama de la Plataforma y el Ecosistema Java
Cubre los roles de la JVM, el JDK y el JRE, y cómo Java logra la independencia de plataforma. Proporciona a los estudiantes una base arquitectónica antes de escribir código.
Lección 2 • Tipos de Datos Primitivos y Variables
Explica los ocho tipos primitivos, la declaración de variables y las reglas de conversión de tipos. Los estudiantes obtienen control preciso sobre la representación de datos en memoria.
Lección 3 • Sintaxis de Java y Estructura del Programa
Introduce clases, métodos y el punto de entrada main como esqueleto de todo programa Java. Construye la base sintáctica de la que dependen todos los capítulos posteriores.
Lección 4 • Instalación y Configuración del Entorno de Desarrollo
Guía la instalación del JDK y un IDE moderno, y luego verifica la configuración con una primera compilación. Asegura que cada estudiante tenga un espacio de trabajo funcional desde el primer día.
Lección 5 • Operadores y Expresiones
Cubre operadores aritméticos, relacionales, lógicos y a nivel de bits, con precedencia de operadores. Los estudiantes aprenden a construir expresiones correctas para cálculos y decisiones.
Capítulo 2OcultarOcultar detallesVer detallesFlujo de Control y Métodos
Flujo de Control y Métodos
Lección 1 • Fundamentos de Recursión
Introduce el pensamiento recursivo con casos base y llamadas recursivas. Prepara a los estudiantes para patrones de recorrido de árboles y divide y vencerás en capítulos posteriores.
Lección 2 • Estructuras de Bucle
Cubre los bucles for, while y do-while, junto con las sentencias de control de bucle. Los estudiantes aprenden a iterar sobre datos y evitar trampas comunes de bucles infinitos.
Lección 3 • Definición y Llamada de Métodos
Explica las firmas de métodos, los tipos de retorno y la mecánica de invocación. Establece la reutilización como un principio de diseño fundamental aplicado a lo largo del curso.
Lección 4 • Alcance, Tiempo de Vida y Ocultación de Variables
Define el alcance de bloque, las variables locales y los riesgos de ocultación. Previene errores sutiles que surgen cuando los nombres de las variables colisionan en ámbitos anidados.
Lección 5 • Sentencias Condicionales
Enseña cadenas if-else y sentencias switch para lógica de ramificación. Se conecta directamente con el conocimiento de operadores del Capítulo 1 para formar estructuras de decisión completas.
Capítulo 3OcultarOcultar detallesVer detallesFundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a Objetos
Lección 1 • Polimorfismo y Despacho Dinámico
Demuestra el polimorfismo en tiempo de ejecución a través de tipos de referencia y despacho de métodos. Los estudiantes escriben código flexible que opera sobre familias de tipos relacionados.
Lección 2 • Clases, Objetos y Constructores
Define planos de clase, instanciación de objetos y sobrecarga de constructores. Traduce entidades del mundo real a diseños de clases Java.
Lección 3 • Encapsulamiento y Modificadores de Acceso
Cubre los niveles de acceso public, private y protected con patrones getter/setter. Refuerza la ocultación de datos como el primer pilar de la POO.
Lección 4 • Clases Abstractas e Interfaces
Contrasta las clases abstractas con las interfaces y explica cuándo usar cada una. Completa la base de POO necesaria para patrones de diseño y frameworks.
Lección 5 • Herencia y la Jerarquía de Clases
Explica extends, la anulación de métodos y la palabra clave super para reutilizar el comportamiento de la clase padre. Construye el segundo pilar de la POO sobre los conceptos de encapsulamiento.
Capítulo 4OcultarOcultar detallesVer detallesArreglos, Cadenas y Estructuras de Datos Fundamentales
Arreglos, Cadenas y Estructuras de Datos Fundamentales
Lección 1 • Listas y la Clase ArrayList
Introduce la interfaz List y ArrayList como la colección más utilizada. Sirve de puente entre los arreglos crudos y el Collections Framework completo que se presenta a continuación.
Lección 2 • Arreglos y Arreglos Multidimensionales
Cubre la declaración, inicialización y recorrido de arreglos, incluyendo arreglos 2D. Proporciona la base de la estructura de datos de bajo nivel antes de introducir las colecciones.
Lección 3 • Ordenamiento y Búsqueda en Colecciones
Aplica Comparable, Comparator y los métodos de utilidad Collections para ordenar. Prepara a los estudiantes para el pensamiento a nivel de algoritmo utilizado en capítulos avanzados.
Lección 4 • Manipulación de Cadenas e Inmutabilidad
Explica la inmutabilidad de String, el pool de cadenas y los métodos clave de la API de String. Los estudiantes manejan tareas de procesamiento de texto de manera correcta y eficiente.
Lección 5 • Mapas, Conjuntos y Estructuras de Cola
Cubre HashMap, HashSet, LinkedList como Cola y sus casos de uso. Los estudiantes eligen la colección correcta según el patrón de acceso y las necesidades de unicidad.
Capítulo 5OcultarOcultar detallesVer detallesManejo de Excepciones y Depuración
Manejo de Excepciones y Depuración
Lección 1 • Try-Catch-Finally y Multi-Catch
Cubre bloques try-catch, sintaxis multi-catch y la cláusula finally para limpieza. Los estudiantes manejan múltiples modos de falla sin duplicar código de recuperación.
Lección 2 • Try-With-Resources y AutoCloseable
Introduce la gestión automática de recursos para E/S y conexiones a bases de datos. Elimina las fugas de recursos que surgen de las llamadas de cierre manual en bloques finally.
Lección 3 • Creación de Excepciones Personalizadas
Guía el diseño de clases de excepción específicas del dominio con mensajes significativos. Permite que las API comuniquen el contexto de falla claramente a los llamadores.
Lección 4 • Técnicas y Herramientas de Depuración
Cubre el uso del depurador del IDE, la lectura de trazas de pila y los fundamentos de registro. Los estudiantes localizan y corrigen defectos sistemáticamente en lugar de depender de sentencias de impresión.
Lección 5 • Jerarquía de Excepciones en Java
Mapea el árbol de clases Throwable, Exception y Error, y distingue las excepciones verificadas de las no verificadas. Proporciona el modelo conceptual para todas las decisiones de manejo de excepciones.
Capítulo 6OcultarOcultar detallesVer detallesGenéricos, Lambdas y Programación Funcional
Genéricos, Lambdas y Programación Funcional
Lección 1 • Genéricos y Parámetros de Tipo
Explica clases genéricas, métodos genéricos y parámetros de tipo acotados. Elimina las conversiones inseguras y permite estructuras de datos reutilizables y seguras en tipos.
Lección 2 • La API de Streams
Enseña la creación de streams, operaciones intermedias y operaciones terminales para el procesamiento de colecciones. Reemplaza los bucles verbosos con transformaciones de datos declarativas estilo pipeline.
Lección 3 • Interfaces Funcionales y Expresiones Lambda
Introduce @FunctionalInterface, la sintaxis lambda y las referencias a métodos. Permite pasar comportamiento como datos, un prerrequisito para la API de Streams.
Lección 4 • Interfaces Funcionales Integradas
Cubre Predicate, Function, Consumer, Supplier y BiFunction de java.util.function. Los estudiantes componen bloques de construcción de comportamiento reutilizables para pipelines de streams.
Lección 5 • Optional y Seguridad ante Nulos
Usa Optional para modelar valores ausentes sin referencias nulas. Reduce las NullPointerException y hace explícita la ausencia en las firmas de los métodos.
Capítulo 7OcultarOcultar detallesVer detallesE/S de Archivos, Serialización y Fundamentos de Redes
E/S de Archivos, Serialización y Fundamentos de Redes
Lección 1 • Flujos de Bytes y Caracteres
Explica las jerarquías de InputStream, OutputStream, Reader y Writer con almacenamiento en búfer. Los estudiantes manejan datos binarios y de texto de manera eficiente sin fugas de recursos.
Lección 2 • Redes con Sockets y HTTP
Cubre la programación de sockets TCP y la API HttpClient para peticiones HTTP. Los estudiantes construyen programas simples de comunicación cliente-servidor.
Lección 3 • Trabajo con JSON y Formatos de Texto
Introduce el análisis y la generación de JSON utilizando una librería estándar. Prepara a los estudiantes para la integración de API REST cubierta en capítulos complementarios.
Lección 4 • Serialización y Deserialización de Objetos
Enseña Serializable, ObjectOutputStream y versionado con serialVersionUID. Los estudiantes persisten grafos de objetos en disco y los restauran de manera confiable.
Lección 5 • Operaciones del Sistema de Archivos con java.nio.file
Cubre Path, Files y el recorrido de directorios usando la API NIO.2. Reemplaza el uso de la clase File heredada con la alternativa moderna y segura ante excepciones.
Capítulo 8OcultarOcultar detallesVer detallesConcurrencia y Multihilo
Concurrencia y Multihilo
Lección 1 • Sincronización y Estado Compartido
Cubre bloques synchronized, bloqueos intrínsecos y la palabra clave volatile. Los estudiantes eliminan condiciones de carrera y errores de visibilidad en programas de memoria compartida.
Lección 2 • Marco Executor y Pools de Hilos
Introduce ExecutorService, tipos de pool de hilos y Future para resultados asíncronos. Reemplaza la gestión cruda de hilos con políticas de ejecución escalables y configurables.
Lección 3 • Colecciones Concurrentes y Variables Atómicas
Cubre ConcurrentHashMap, CopyOnWriteArrayList y AtomicInteger para operaciones sin bloqueo. Los estudiantes evitan el bloqueo de grano grueso que limita el rendimiento.
Lección 4 • CompletableFuture y Pipelines Asíncronos
Enseña el encadenamiento de CompletableFuture, el manejo de excepciones y la combinación de múltiples tareas asíncronas. Los estudiantes construyen pipelines no bloqueantes que maximizan la utilización de la CPU.
Lección 5 • Hilos y la Interfaz Runnable
Explica la creación de hilos mediante la subclase Thread y Runnable, además de los estados del ciclo de vida del hilo. Establece el modelo de concurrencia sobre el que se construyen todas las secciones posteriores.
Tu certificado válido de finalización
Este curso es para ti:
Aspirantes a desarrolladores: con ganas de incursionar en la ingeniería de software con un lenguaje solicitado y con salida laboral.
Personas que desean cambiar de trayectoria profesional: listas para dejar roles no técnicos y construir una base en programación.
Estudiantes de ciencias de la computación: buscan reforzar la teoría vista en clase con proyectos prácticos de Java.
Programadores aficionados: que desean ir más allá de los scripts y abordar el desarrollo estructurado y orientado a objetos.
Profesionales de TI: que buscan ampliar sus habilidades desde la infraestructura hacia el desarrollo de aplicaciones.
Desarrolladores junior: que trabajan en otro lenguaje y agregan Java para aumentar su valor en el mercado laboral.
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, fácil 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 Colombia?
¿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




















