Especialidad formativa
Programación java básico
Qué aprenderás
Adquirir conocimientos sobre los conceptos de la programación Java, diseñar aplicaciones orientadas a objetos con Java y crear programas Java.
Contenido del curso
01
SINTAXIS BÁSICA DEL LENGUAJE JAVA
- OBJETIVO
- Implementar aplicaciones Java de escritorio orientadas a texto que emplee todos los recursos del lenguaje Java.
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- Configuración del entorno en Windows.
- Introducción a Java.
- Declaración de variables de tipo primitivo.
- Operadores y operaciones sobre los datos.
- Palabras reservadas, caracteres de escape y comentarios.
- Control de flujo. Sentencias, bloques y bucles.
- Arrays y matrices.
- Clase Math.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Interés por la utilización de las herramientas que permitan seguir el proceso de desarrollo en equipos multidisciplinarios y con diversos desarrolladores/ implementadores.
- Desarrollo de actitudes responsables sobre los procesos tecnológicos y buenas prácticas en la información técnica de los procesos de configuración realizados, así como en la documentación de uso y gestión que se genera, para el correcto funcionamiento de las aplicaciones.
- Desarrollo de una actitud responsable sobre todo el proceso IT considerando aspectos de eficiencia y seguridad en las acciones realizadas.
02
PROGRAMACIÓN ORIENTADA A OBJETOS CON JAVA
- OBJETIVO
- Utilizar las técnicas de programación orientación a objetos.
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- Los 4 pilares de la OOP (abstracción, encapsulación, herencia y polimorfismo).
- Clases en Java.
- Métodos equals,
- hashCode
- toString.
- Modificadores de encapsulación
- private
- "default"
- protected
- public
- Modificador static.
- Atributos de la clase. IS-A (herencia) frente a HAS-A (composición débil/fuerte).
- Constructores para la instanciación de objetos.
- Referenciación de las instancias.
- Constructor implícito y super implícito.
- Encadenamiento de constructores.
- Sobrecarga de constructores.
- Organización de la memoria en Java.
- Zonas Grub, Heap y Stack.
- Reciclado de memoria. Hilo Garbage-Collector.
- Métodos para encapsular la funcionalidad de la clase.
- Dinámicos o de instancia/objeto
- Estáticos o de clase.
- Paso de parámetros a un método.
- Valores primitivos y referenciados.
- Modificador final.
- Conceptos de bajo acoplamiento y alta cohesividad.
- Implementación y Herencia.
- Interfaces. Supertipos para un bajo acoplamiento.
- Clases abstractas. Supertipos para reutilización de funcionalidad.
- Polimorfismo. Lazy binding o la resolución dinámica de métodos de instancia.
- Múltiples comportamientos.
- Tipos enumerados simples y compuestos.
- Bloques de inicialización estáticos y de instancia.
- Importación estática.
- Control de errores en ejecución. Excepciones y aserciones.
- Colecciones de datos.
- List, Set y Map.
- Interfaces Comparable y Comparator.
- Programación genérica o de tipo.
- Java I/O
- Encapsulación de texto mediante String, StringBuffer y StringBuilder.
- Elementos mutables e inmutables.
- Programación en entornos multi-concurrentes. Threads y sincronización por cerrojos.
- Clases internas y anidadas.
- Programación funcional mediante expresiones lambda y otras novedades de Java 8.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Interés por la utilización de las herramientas que permitan seguir el proceso de desarrollo en equipos multidisciplinarios y con diversos desarrolladores/ implementadores.
- Desarrollo de actitudes responsables sobre los procesos tecnológicos y buenas prácticas en la información técnica de los procesos de configuración realizados, así como en la documentación de uso y gestión que se genera, para el correcto funcionamiento de las aplicaciones.
- Desarrollo de una actitud responsable sobre todo el proceso IT considerando aspectos de eficiencia y seguridad en las acciones realizadas.
03
BASES DE DATOS SQL/JDBC
- OBJETIVO
- Identificar cómo funciona SQL, JDBC, el uso de transacciones y el pools de conexiones.
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- Bases de datos y el modelo entidad-relación.
- RDBMS MySql. Instalación y configuración.
- Creación de tablas, índices y sus posibles relaciones.
- Operaciones C-R-U-D
- Claves primarias y claves foráneas. Uso de join para resolver consultas ante 2 o más tablas relacionadas.
- El API de programación Java JDBC.
- El elemento DriverManager.
- Instrucciones Statement, PreparedStatement y CallableStatement.
- Consultas simples y parametrizadas mediante el uso del operador
- Externalización de las consultas o queries en un fichero de propiedades. La clase Resource Bundle.
- Gestión de excepciones.
- Interfaces ResultSet y ResultSetMetaData.
- Uso del Patrón Fachada – DAO. Interfaces de negocio y factorías de objetos. Desacoplamiento con el cliente.
- Atomicidad y transaccionalidad. Gestión de la conexión mediante el patrón Thread-Local.
- Introducción a la persistencia de objetos.
- Modos conectado y desconectado.
- Visión de los ORM Jpa
- Hibernate.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Interés por la utilización de las herramientas que permitan seguir el proceso de desarrollo -en equipos multidisciplinarios y con diversos desarrolladores/ implementadores.
- Desarrollo de actitudes responsables sobre los procesos tecnológicos y buenas prácticas en la información técnica de los procesos de configuración realizados, así como en la documentación de uso y gestión que se genera, para el correcto funcionamiento de las aplicaciones.
- Desarrollo de una actitud responsable sobre todo el proceso IT considerando aspectos de eficiencia y seguridad en las acciones realizadas.
04
GESTION DEL PROYECTO. MAVEN Y JUNIT
- OBJETIVO
- Utilizar las herramientas relacionadas con la gestión de proyectos java con Maven y con la realización de pruebas de software.
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- Instalación de las herramientas.
- Ficheros POM, arquetipos y repositorios de dependencias en Maven.
- Ciclo de vida. Compilación, ejecución y empaquetado.
- Pruebas unitarias con JUnit.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Interés por la utilización de las herramientas que permitan seguir el proceso de desarrollo en equipos multidisciplinarios y con diversos desarrolladores/ implementadores.
- Desarrollo de actitudes responsables sobre los procesos tecnológicos y buenas prácticas en la información técnica de los procesos de configuración realizados, así como en la documentación de uso y gestión que se genera, para el correcto funcionamiento de las aplicaciones.
- Desarrollo de una actitud responsable sobre todo el proceso IT considerando aspectos de eficiencia y seguridad en las acciones realizadas.
Especialidad formativa