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

Curso de programación en Java

4,3

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.

Dedika para empresas

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.

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

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

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

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

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

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

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

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.

Certificación

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...
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, fácil 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 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