Duración:16 Semanas
Tipo:Cursos
Modalidad:A distancia
La tecnología Java® ha recibido una enorme atención desde su aparición en la escena de Internet en el año 1996. Concebida originariamente por Sun Microsystems® como una plataforma (un entorno donde se puede correr un programa) para dispositivos embebidos, fue el desarrollo de aplicaciones para la Web lo que determinó su éxito en la década siguiente. Esto ocurre a partir de que a la plataforma y al conjunto de librerías estándar (Java Standard Edition) se le agregaran en el año 1998 funcionalidades de programación del lado del servidor (Java Enterprise Edition).
Java es tanto un lenguaje de programación como una plataforma. La base de la plataforma Java es la Java Virtual Machine (JVM), un software que ejecuta programas Java. Existen versiones de la JVM para distintos entornos de hardware, e inclusive para dispositivos móviles, que nos permiten ejecutar el mismo código Java para distintas máquinas. Esto es lo que da a la tecnología su característica de portabilidad. Hoy en día es una tecnología sumamente utilizada y es gratuita; no solamente la plataforma, sino además librerías adicionales a las Standard, frameworks, entornos de desarrollo (IDE) y recientemente, soluciones de cloud computing gratuitas donde alojar (con ciertas restricciones) nuestra aplicación (Google AppEngine).
La Diplomatura en Programación Java propone enseñar, de forma escalonada y progresiva, la tecnología Java a detalle y con profundidad, de manera tal de sentar las bases fundacionales para la futura especialización profesional. El estudiante trabajará con entornos de desarrollo completos con el objetivo de familiarizarse con las herramientas que se utilizan en la práctica.
Objetivo General
Que los participantes:
Obtengan los conocimientos necesarios y una base sólida para incorporarse rápidamente en mercado laboral, con un perfil de desarrollador de software de aplicaciones Java. Se formen en una expertise específica en el lenguaje, con la finalidad de contar con una herramienta técnica de trabajo que les permita su especialización temprana.
Objetivos específicos
Modulo 1 - formar a los participantes para que estén en condiciones de:
- Poner en juego conocimientos de la tecnología Java. Utilizar varias construcciones de los lenguajes de programación Java. Utilizar construcciones de decisión, ciclos y métodos para crear el flujo de un programa. Implementar conceptos intermedios de programación con la tecnología Java.
Modulo 2 - formar a los participantes para que estén en condiciones de:
- Comprender los conceptos fundamentales de la programación en Java. Crear proyectos en el lenguaje.
Modulo 3 - formar a los participantes para que estén en condiciones de:
- Implementar y comprobar un programa completo que podría utilizarse en una aplicación comercial de una intranet. Aplicar patrones de diseño simples para crear clases reutilizables. Organizar y configurar la infraestructura para poder incorporar un proyecto desarrollado en Java. Crear aplicaciones en Java de dos y tres capas. Crear un servidor multiproceso.
Modulo 4– Finalizar la formación con experiencias prácticas simulando un contexto de proyecto. Complementar los conocimientos adquiridos anteriormente en un trabajo integrador.
Destinatarios
Profesionales y estudiantes con intenciones de formarse en programación, con perspectivas de incorporarse a un equipo de desarrollo de software de aplicaciones Java.
Módulo 1: Programación Orientada a Objetos en Java
- Unidad 1: Estructuras de Datos. Ampliando las estructuras de datos. Creación de Instancias. Visibilidad en las Clases. Encapsulado. Diagramas UML para las clases Java, Clases y Objetos. Variables. Identificadores. Tipos primitivos y referenciados. Métodos en Java. Clases en Java. Paquetes.
- Unidad 2: Relaciones en Java, asociaciones y enlaces. Relaciones entre clases. Asociaciones simples. Asociaciones complejas. Agregaciones. Composiciones.Vectores. Asociaciones y enlaces.
- Unidad 3: Herencia y Polimorfismo. Los constructores en la herencia. Generalización y especialización. Sobrecarga y rescritura. Clases abstractas. Polimorfismo y Enlace o Ligadura Dinámica. Interfaces.
- Unidad 4: Herencia y Clases contenedoras. Sobre escritura o rescritura de un método. Clases abstractas en Java. Polimorfismo en Java. Interfaces en Java. Examen Parcial.
Módulo 2: Programación en Java
- Unidad 1: Introducción y Revisión. Programas. Fuentes,. Intérpretes. Compiladores. Clases. Paquetes.
- Unidad 2: Clases. conceptos avanzados. El patrón de diseño Singleton (instancia única). Interfaces. Clases Anidadas. Clases Anónimas. Enumeraciones. Importaciones estáticas.Excepciones. Categorías. La API de Colecciones. Interfaz Collection. Interfaz Iterator. Operaciones grupales. Map genérico. Refactorización (Refactoring).
- Unidad 3: Threads. Creación y Control Básico de Threads. Interbloqueo (deadlock). Corrientes de E/S. Fundamentos de las E / S. Salidas por consola. Clases básicas previas a la versión 7 para el manejo de corrientes. Tuberías. Creando Archivos de Acceso Aleatorio. Acceso Aleatorio a Archivos. Serialización.
- Unidad 4: La interfaz Path y la clase Paths. Corrientes en Java 7. Gestión simple de archivos. Creación de archivos y directorios.Introducción a las expresiones regulares. Patrones. Comparadores. Trabajo en Red. Trabajar con URLs. Sockets. Redes. Servidor TCP / IP Mínimo. Examen Parcial.
Módulo 3: Desarrollo en Java
- Unidad 1: Swing. Selección de Swing o AWT. Conversión de la AWT a Swing. Los paneles Root, Glass y Layered. El patrón de diseño MVC. InfoTool. Diagrama de Secuencia de la interacción de los participantes del patrón MVC en InfoTool. Ejercicio. Reconstrucción del código de InfoTool.
- Unidad 2: Interfaz JDBC.
- Unidad 3: Diseño en multicapas. Comparando los diseños de dos y tres capas. Diseño de dos capas. Ventajas del diseño en dos capas. Ventajas del diseño en 3 capas. Desventajas del modelo de 3 capas. Manejo de red con Java.
- Unidad 4: RMI de Java. Interacción entre el cliente, el servidor y el registro en RMI de Java. Introducción a la creación de una aplicación con tecnología RMI de Java. Ejemplo: crear una aplicación RMI. Desplegando la aplicación RMI. Revisión General de conceptos y repaso de principales temas. Examen Parcial.
Módulo 4: Integración de conceptos – proyecto de aplicación
- Unidad 1: Caso Práctico “El proyecto Ventas”. Introducción. Especificaciones del sistema. Requerimientos Funcionales. Establecer la línea base para el MVC de Ventas.
- Unidad 2: El diseño de la vista del sistema Ventas. La clase ImplVistaVentas. La clase GUIVentas. Los métodos públicos de la clase GUIVentas. El diseño del controlador de Ventas.
- Unidad 3: Programación y Diseño del proyecto en dos capas. Programación y Diseño del proyecto en tres capas. Implementación del sistema.
- Unidad 4: Revisión General de conceptos y repaso de principales temas. Examen Final. Duración
- Conocimientos generales de programación y análisis orientado a objetos.
- Es recomendable realizar el curso “Fundamentos de programación”.