UNIDAD DIDÁCTICA 1. INTRODUCCIÓN A LA PROGRAMACIÓN Datos, algoritmos y programas – Definición de algoritmo – Datos – Características de un programa Paradigmas de programación – Programación imperativa – Programación funcional – Programación lógica – Programación orientada a objetos Lenguajes de programación – Historia de los lenguajes de programación – Características de los lenguajes de programación Errores y calidad de los programas – Diseño de un programa – Diagramas de flujo – Pseudocódigo Herramientas y entornos para el desarrollo de programas – Entorno de desarrollo Eclipse UNIDAD DIDÁCTICA 2. IDENTIFICACIÓN DE LOS ELEMENTOS DE UN PROGRAMA INFORMÁTICO Estructura y bloques fundamentales de Java Caracteres en Java Tipos de datos en Java – Primitivos – Referenciados – Enumerados Literales en Java – Enteros – Reales – De un solo carácter – De cadenas de caracteres Identificadores en Java Palabras reservadas en Java Comentarios en Java Variables Declaración, inicialización y utilización Almacenamiento en memoria Constantes en Java Conversiones de tipo Implícitas y explicitas (casting) en Java – Conversión implícita – Conversión explícita Operadores y expresiones Precedencia de operadores – Aritméticos – De relación – Lógicos – Unitarios – A nivel de bits – De asignación – Condicional Prioridad y orden de evaluación UNIDAD DIDÁCTICA 3. INTRODUCCIÓN A LA ORIENTACIÓN A OBJETOS Un poco de historia Clases Objetos Principios básicos de la orientación a objetos – Abstracción – Encapsulamiento – Modularidad – Polimorfismo – Herencia UNIDAD DIDÁCTICA 4. DESARROLLO DE CLASES Concepto de clase Estructura y miembros de una clase en Java Creación de atributos Declaración e inicialización en Java Métodos en Java – Métodos de instancia y de clase – Cabecera y cuerpo Signatura – Métodos recursivos Sobrecarga de métodos en Java Creación de constructores en Java Control de acceso – Librerías y paquetes de clases Utilización y creación – Especificadores de acceso Java – Métodos accesores y mutadores Clases internas Utilización de clases Documentación sobre librerías y paquetes de clases UNIDAD DIDÁCTICA 5. UTILIZACIÓN DE OBJETOS Características de los objetos Constructores Instanciación de objetos Declaración y creación Comparación de objetos Utilización de métodos Parámetros y valores de retorno – Invocación de métodos, el método main – Paso de parámetros Paso por valor y paso por referencia – Valor de retorno La instrucción return Utilización de métodos estáticos Clases predefinidas – Envoltorios y autoboxing Destrucción de objetos y liberación de memoria – Finalizadores en Java UNIDAD DIDÁCTICA 6. USO DE ESTRUCTURAS DE CONTROL Estructuras de selección en Java – If – If-Else – If-Else if – Operador condicional – Switch Estructuras de repetición – While – Do-while – For – For-each Estructuras de salto – Break – Continue UNIDAD DIDÁCTICA 7. CONTROL Y MANEJO DE EXCEPCIONES Excepciones de Java Jerarquías de excepciones en Java Manejo de excepciones en Java – Captura de excepciones – Delegación de excepciones – Definición de excepciones de usuario – Lanzamiento de excepciones de usuario y redefinición Aserciones UNIDAD DIDÁCTICA 8. UTILIZACIÓN AVANZADA DE CLASES Relaciones entre clases Composición de clases Herencia Concepto y tipos (simple y múltiple) Superclases y subclases Constructores y herencia Conversiones de tipos entre objetos (casting) – Conversión ascendente – Conversión descendente Sobreescritura de métodos Polimorfismo Clases y métodos abstractos y finales en Java – Herencia forzada Interfaces Clases abstractas vs Interfaces en Java – Jerarquía de interfaces Clases y tipos genéricos o parametrizados UNIDAD DIDÁCTICA 9. APLICACIÓN DE LAS ESTRUCTURAS DE ALMACENAMIENTO Arrays unidimensionales y multidimensionales en Java – Declaración – Creación de arrays unidimensionales y multidimensionales – Inicialización – Acceso a elementos – Recorridos, búsquedas y ordenaciones Cadenas de caracteres en Java – Clase String – Clase Stringbuffer – Clase StringTokenizer – Operaciones Acceso a elementos, conversiones, concatenación UNIDAD DIDÁCTICA 10. COLECCIONES DE DATOS Uso de clases y métodos genéricos Operaciones con colecciones Acceso a elementos y recorridos Tipos de colecciones en Java – List – Set – Map UNIDAD DIDÁCTICA 11. LECTURA Y ESCRITURA DE INFORMACIÓN Flujos o streams – Tipos de flujos Flujos de bytes y de caracteres – Clases asociadas a las operaciones de gestión de ficheros – Creación y eliminación de ficheros y directorios Entrada/salida estándar – Entrada desde teclado – Salida a pantalla Almacenamiento de información en ficheros – Formas de acceso a un fichero – Operaciones sobre ficheros – Apertura y cierre de ficheros Escritura y lectura de información en ficheros de texto – Escritura y lectura de información en ficheros binarios – Almacenamiento de objetos en ficheros Persistencia Serialización Interfaces gráficas de usuario simples Concepto de evento Creación de controladores de eventos UNIDAD DIDÁCTICA 12. GESTIÓN DE BASES DE DATOS RELACIONALES Interfaces de programación de acceso a bases de datos Acceso a datos mediante JDBC – Establecimiento de conexiones – Ejecución de sentencias de manipulación de datos Ejecución de consultas sobre la base de datos Ejecución de sentencias de descripción de datos UNIDAD DIDÁCTICA 13. MANTENIMIENTO DE LA PERSISTENCIA DE LOS OBJETOS Bases de datos orientadas a objetos Características de las bases de datos orientadas a objetos El estándar ODMG Tipos de datos objeto y colección – El lenguaje de definición de objetos (ODL) – El lenguaje de consulta de objetos (OQL) Instalación del gestor de bases de datos Neodatis object database Creación de bases de datos Mecanismos de consulta Recuperación, modificación y borrado de información Resumen glosario bibliografía enlaces de interés