Curso: Java SE7-SE8 Programmer - Programador Java.
PRESENTACIÓN.
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 Oracle® 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).
El curso en Programación Java propone enseñar, de forma escalonada y progresiva, la tecnología Java a detalle. El estudiante trabajará con entornos de desarrollo completos con el objetivo de familiarizarse con las herramientas que se utilizan en la práctica.
OBJETIVOS.
Que los participantes se formen para:
• Comprender conceptos avanzados del lenguaje Java
• Conocer a detalle los principales componentes y clases del lenguaje
• Crear programas y componentes bajo el standard Java SE7 – SE8
• Sean desarrolladores del lenguaje con conocimiento y práctica
• Preparar a los participantes para la certificación oficial Oracle Certified Associate, Java SE 7 Programmer
DESTINATARIOS.
El curso está dirigido a participantes que deseen formarse como desarrolladores del lenguaje Java, como ser programadores y desarrolladores en general, testers, líderes de desarrollo, arquitectos, personal de soporte técnico y otros profesionales de sistemas o afines a la profesión.
REQUISITOS PREVIOS.
Secundario completo y conocimientos de java inicial o java fundamentals
METODOLOGÍA DE ENSEÑANZA-APRENDIZAJE.
El alumno participará de las clases presenciales definidas y deberá realizar una lectura crítica del material disponible.
Será necesario que el alumno realicen intercambios en las clases presenciales, dirigidos y coordinados por el profesor-tutor.
Así mismo será de carácter obligatorio la entrega de trabajos prácticos (si hubiere), los cuales serán desarrollados en forma presencial o como tareas adicionales fuera del horario de la clase.
MODALIDAD DE EVALUACIÓN Y ACREDITACIÓN.
La participación activa en las clases por parte de los alumnos, será una condición necesaria para su aprobación.
Por lo tanto, para acreditar la aprobación del curso, los alumnos deberán rendir satisfactoriamente los trabajos prácticos que el profesor-tutor determine como obligatorios.
Finalmente deberá aprobarse un examen final multiple choice que cuenta solo con un recuperatorio.
Aquellos alumnos que aprueben el examen final recibirán un certificado de aprobación, mientras que aquellos que no logren aprobar recibirán un certificado de participación.
TEMARIO.
Introducción.
Objetivos.
Objetivos del Curso.
Repaso de la plataforma Java.
Introducción
Cronograma del curso
Repaso de la tecnología Java
Plataforma de Java
OpenJDK
Concesión de Licencias
El entorno de trabajo de Java
Java y su Comunidad
Repaso Sintaxis y clases.
Clases simples
Atributos, constructores y métodos
Modelo de objetos y clases
Paquetes, clases importadas y declaraciones
Encapsulamiento y Polimorfismo.
Teoría de encapsulamiento y diseño de clases
Diferentes problemas sobre el negocio y como resolverlo en Java
Clases y objetos Inmutables
Sub clases,
Sobrecarga de métodos
Argumentos en los métodos
Diseño de clases.
Visibilidad en los métodos
Sobre-escritura de métodos
operador Instanceof
Invocar a un método virtual
Polimorfismo
Casteo de referencias
Conceptos avanzados en polimorfismo.
Generalización y especificación de clases
Métodos y clases estáticas
Mejores prácticas en los modificadores de campos
Patrón de diseño singleton
Diseñando clases abstractas
Anidamiento de clases
Clases y tipos enumerador
Interfaces e implementación.
Interfaces en java
Tipos de implementaciones
Composición de objetos y métodos delegados
Implementación de múltiples interfaces
Patrón de diseño DAO
Genéricos y colecciones.
Clases genéricas
Parámetros genéricos
Interfaces utilizando genéricos
Colecciones utilizando genéricos
Listas y mapas
Entradas y salidas
Clase String.
Diferencias entre String, StringBuilder y StringBuffer
Métodosprimarios de la clase String
Parseo de texto en java
Entrada de texto por consola
Texto de salida y formateo
Expresiones Regulares
Exepciones y afirmaciones.
Categoría de excepciones
Clases típicas para las excepciones
Creando tu propia clase de excepción
Utilizando bloques try y catch
Utilizando múltiples atrapados de errores
Mejores prácticas en las excepciones
Afirmaciones
Fundamentos de la entrada y salida E/S.
Entradas y salidas en java
Escritura en Java
Escritura por consola
Utilizando E/S.
Canales para Entradas y Salidas
Escribiendo y leyendo objetos serializados
Utilizando archivos E/S.
Leyendo archivos desde Java
Utilizando las clases para lectura y escritura
Diccionario de archivos
Manejo de archivos
Comprobar si una archivo cambio
Hilos y procesos paralelos.
Tareas paralelízables
Reconociendo el ambiente en multi procesos
Compartiendo datos entre hilos
Sincronizando y finalizando un hilo
Conceptos de inmutabilidad
Concurrencias.
Creando variables atómicas
Utilizando el bloqueo de lectura y escritura
Colecciones seguras en hilos
Sincronización de concurrencia
Pools de hilos y ejecuciones
Paralización de hilos
Base de datos con JDBC.
Capa de datos JDBC API
Componente JDBC
Consultas y resultados
Clases Prepared Statement y Callable Statement
Transacciones
Patrón de diseño DAO
Localización.
Conceptos de localización
Definir una clase de localización
Lectura y escritura de la clase de localización
Mapa de recursos
Formato de mensaje, fechas y números
Examen Final.
DURACIÓN.
60 horas – 15 clases
CERTIFICACIÓN.
A todos los participantes que hayan aprobado el curso cumpliendo con todos los requisitos establecidos, se les extenderá un certificado de la Secretaría de Cultura y Extensión Universitaria, FRBA, UTN. Aquellos que aun habiendo participado activamente en las clases y realizado las actividades prácticas no cumplimentaran los requisitos de evaluación, recibirán un certificado de participación en el curso.
Para los cursos oficiales, el certificado de aprobación también esta validado por parte de la empresa pertinente (Oracle, SAP, Microsoft u otras).
QUORUM PARA LA APERTURA DEL CURSO Y POLÍTICA DE RESERVA DE VACANTES.
Para el dictado del curso se requiere un mínimo de inscriptos. De lo contrario el curso será reprogramado avisando a los pre-inscriptos / inscriptos vía e-mail.
UTN-BA-SCEU se reserva el derecho de reprogramar o cancelar el curso según lo disponga, hasta llegar a la cantidad de inscriptos mínima.
En el caso de cancelar el comienzo o demorarlo mas de un mes de su fecha de apertura original, los inscriptos que hayan pagado podrán solicitar un reintegro a la coordinación del curso presentando sin excepción los comprobantes de pago efectuados.
Los cupos son limitados. El cupo al curso se confirma y se reserva únicamente habiendo realizado el pago de la matrícula en cualquiera de los medios habilitados a tal fin.
Los alumnos deberán conservar los comprobantes de pago, hasta la entrega del certificado de aprobación o asistencia, según corresponda.
INICIO Y CURSADA.
El curso comenzará el 22 de Marzo y se cursará los martes y jueves de 19 a 22.30 hs en CABA.