Programación en Java

Aprender los fundamentos de la programación y los conceptos de programación orientada a objetos. Presentar conceptos intermedios sobre la implementación de sistemas de información más complejos e introducir el uso de frameworks para el desarrollo de sistemas empresariales.

  • Ser mayor de 16 años de edad.
  • Conocimientos básicos en programación.
  • Acceso a computadora con conexión a Internet y posibilidad de uso e instalación de programas.
  • Para ingresar no se requiere el bachillerato ni el examen de admisión de la UCR.
Precio

  • Costo por módulo: ₡121.125.


Duración
  • 42 horas en total divididas en 14 lecciones de 3 horas cada una. Dos lecciones por semana. 

Contenidos

TEMA 1: FUNDAMENTOS DE PROGRAMACIÓN

  • Concepto de lenguaje de programación
  • Concepto de máquina virtual
  • Concepto de compilador
  • Concepto de algoritmo
  • Introducción a los componentes de hardware: cpu y memoria principal
  • Tipos de datos

TEMA 2: INTRODUCCIÓN A LA PROGRAMACIÓN ESTRUCTURADA

  • Variables
  • Operadores
  • Sentencias
  • Bloques if, if-else, if-else-if
  • Arreglos y matrices
  • Ciclos while, do-while
  • Ciclos for
  • Estructura de datos

TEMA 3: MÉTODOS

  • Declaración de métodos
  • Parametrización

TEMA 4: INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS

  • Concepto de clase
  • Concepto de objeto
  • Atributos y comportamiento
  • Constructores

TEMA 5: ENTRADA Y SALIDA DE DATOS

  • Impresión avanzada en consola
  • Entrada de datos mediante el teclado
  • Creación de ventanas simples
  • Lectura escritura de archivos secuenciales
  • Lectura y escritura de archivos aleatorios
Precio

  • Costo por módulo: ₡121.125.


Duración
  • 48 horas en total divididas en 16 lecciones de 3 horas cada una. Dos lecciones por semana. 

Requisitos

  • Módulo Básico de Java o formación equivalente.


Contenidos

TEMA 1: PROGRAMACIÓN CONCURRENTE Y PARALELA

  • Concepto de programación concurrente
  • Concepto de programación paralela
  • Concepto de hilos de ejecución
  • Implementación de hilos

TEMA 2: PROGRAMACIÓN DE BIBLIOTECAS PERSONALIZADAS 

  • Concepto de biblioteca en Java
  • Implementación de biblioteca personalizadas
  • Integración de bibliotecas en Java

TEMA 3: APLICACIONES EN JAVA CON MAVEN

  • Instalación y configuración de Maven
  • Introducción a Maven
  • Implementación de aplicaciones con Maven
  • Integración de dependencias

TEMA 4: INTERFACES GRÁFICAS EN APLICACIONES JAVA

  • Concepto de Interfaz Gráfica
  • Introducción a componentes básicos librería Swing
  • Concepto de eventos
  • Implementación de Interfaz

TEMA 5: PERSISTENCIA DE DATOS UTILIZANDO HIBERNATE ORM

  • Introducción a framework Hibernate
  • Integración y configuración
  • Consultas mediante HQL y SQL nativo
  • Transacciones básicas
Precio

  • Costo por módulo: ₡121.125.


Duración 
  • 48 horas en total divididas en 16 lecciones de 3 horas cada una. Dos lecciones por semana. 

Requisitos

  • Módulo intermedio de Java o formación equivalente.


Contenidos

TEMA 1: PERSISTENCIA DE DATOS UTILIZANDO HIBERNATE ORM

  • Concepto de mapeo objeto-relacional (ORM)
  • Introducción al framework Hibernate ORM
  • Configuración administrativa
  • Configuración de mapeo
  • Consultas mediante HQL
  • Consultas mediante SQL nativo
  • Transacciones

TEMA 2: DESARROLLO DE SISTEMAS WEB CON JAVA SERVER PAGES

  • Introducción a Java Server Pages (JSP)
  • Configuración del entorno de desarrollo
  • Elementos de JSP
  • Ciclo de vida del proceso de request de un JSP
  • Manejo de sesiones y cookies
  • Combinación de JSP con tecnologías en el cliente 

TEMA 3: DESARROLLO DE SISTEMAS WEB CON JAVA SERVER FACES

  • Introducción a Java Server Faces
  • Configuración del entorno de desarrollo
  • Java Server Faces y bootstrap

TEMA 4: OTROS FRAMEWORKS BASADOS EN JAVA SERVER FACES

  • Primefaces
  • Omnifaces

TEMA 5: APACHE STRUTS

  • Introducción a Apache Struts
  • Arquitectura de Apache Struts
  • Configuración de la arquitectura de la aplicación
  • Ciclo de vida del proceso de request de una página
  • Combinación con tecnologías en el cliente