Java
FUNDAMENTOS

Datos Generales del módulo


Año de Vigencia
:
2015
N° de Horas académicas
:
20 Horas
Requisitos
:
Conocimiento básico de programación
Duración
:
4 Semanas

Fundamentación


El curso de Programación del Lenguaje Java provee a los estudiantes con una sólida base de programación con Java, que incluye: Información acerca del syntax del lenguaje de Programación Java creando interfaces gráficas de usuario (GUIs), excepciones, archivo input/output (I/O), ensartes y canales. Programas con conceptos object-oriented que pueden aprenderse como para desarrollar aplicaciones de tecnología Java. El curso muestra la Plataforma Java, Standard Edition 7 (Java SE 7), y utiliza el producto Java SE Development Kit 7 (JDK 7). Los estudiantes harán los ejercicios de laboratorio usando en Ambiente de Desarrollo Integrado NetBeans (IDE).

Objetivos del Módulo


  • Crear aplicaciones de Java que eleven las funciones object-oriented del Lenguaje Java, tales como encapsulación, inheritance y polymorfismo.
  • Ejecutar una aplicación de tecnología Java desde la línea de comando.
  • Usar tipos y expresiones de información en tecnología Java.
  • Usar constructores de control de tecnología Java.
  • Usar arrays y otras recolecciones de información.
  • Implementar técnicas en manejo del error usando excepciones de manejo.
  • Crear una interface gráfica de event-driven (GUI) usando componentes Swing : paneles, botones, etiquetas, campos de texto, y áreas de texto.
  • Implementar funcionalidades input/output (I/O) para leer desde y escribir para archivos de texto información y entender los I/O streams avanzados.
  • Crear un simple Protocolo de Transmisión de control/Protocolo de Internet (TCP/IP) que comunique con un servidor a través de sockets.
  • Crear programas multithreaded.

Capacidades terminales y criterios de evaluación


El programa se encuentra estructurado en sesiones teórico-prácticas, donde se propicia la participación de los alumnos en cada clase, ya sea compartiendo experiencias de su contexto laboral como desarrollando laboratorios del tema diseñados para consolidar el aprendizaje. Como recurso de enseñanza, cada alumno cuenta con una computadora de uso personal; material educativo digital que consta de las sesiones del curso, laboratorios, tareas, diapositivas de cada tema, lecturas de apoyo y videos.

CAPACIDAD TERMINAL CRITERIOS DE EVALUACIÓN
Desarrollo de aplicaciones de escritorio usando componentes y librerías especializadas en Java. Fundamentos del lenguaje
Programación Orientada a Objetos
Patrones de diseño de software
Excepciones y Aserciones
Hilos y Concurrencia

Contenido de Syllabus


SEMANA 1:

  • Sesión 01:

    Introducción a Java: Historia del Java, Examinando la Tecnología de Java (Simple, Orientado a Objetos, Distribuido, Interpretado, Robusto, Seguro, De Arquitectura, Portátil, Alto Rendimiento, Multitarea y Lenguaje Dinámico)-Elementos Básicos del Lenguaje: Comentarios de javadoc, palabras reservadas, tipos de variables en Java, tipos de datos primitivos (Clases wrapper), secuencias de escape de carácter, inicialización de variables, sentencias y expresiones.

  • Sesión 02:

    Comenzar con Java y NetBeans: Los requerimientos mínimos, instalación, pruebas de instalación, tipos de programas en Java, crear aplicaciones Java con netBeans.

    Revisión del concepto de algoritmos: Concepto General, Seudocódigo, Variables, Literales, Expresiones Aritméticas, Expresiones Lógicas.

  • Sesión 03:

    Programación secuencial - Operadores y operandos: Programación secuencial e iterativa. Especificación e implementación. Introducción a las estructuras fundamentales de la programación estructurada: funciones, procedimientos, División de la aplicación en tareas; programación modular. Jerarquía de operadores, operadores aritméticos, operadores relacionales, operadores booleanos, operadores de manipulación de bits, operadores de cadena, operadores de asignación, operadores especiales, Modificadores (De almacenamiento y de accesibilidad).

  • Sesión 04:

    Estructuras de Control con Java: Selectivas: Selectiva simple (sentencia if), Selectiva doble (sentencia if-else), Selectiva múltiple(sentencia if else-if ... else-if else).

SEMANA 2:
  • Sesión 05:

    Estructuras de Control con Java: Repetitivas: Ciclo while (sentencia while), Ciclo do-while (sentencia do-while), Ciclo for (sentencia for), Sentencia switch (sentencia switch con default).

  • Sesión 06:

    Trabajando con clases y objetos: Introducción a la programación Orientada a Objetos Tecnología de Objetos y la Programación Orientada a Objetos (POO). Definiendo de clase, Creando objetos (colector de basura, el método finalice()), Variables y métodos, Métodos sobrecargados. Conociendo la POO: Abstracción y encapsulamiento.

  • Sesión 07:

    Implementando herencia: ¿Qué es la herencia?, Mecánica de la herencia, Sobreposición de métodos y variables, Upcasting.

    Tipos de herencia: Para reutilizar la implementación, Por diferencia y Por substitución de tipos.

  • Sesión 08:

    Usando arreglos y strings: Declaración e inicialización de arrays (Creación y uso de arrays), copia de arreglos, arreglo de objetos, clase String y sus métodos, clase StringBuffer y sus métodos.

    Otras estructuras de Datos: Vectores, Colecciones, Enumeraciones.

SEMANA 3:
  • Sesión 09:

    Polimorfismo: Definición, Composición, Clases abstractas, Enlazamiento temprano, Enlazamiento tardío.

  • Sesión 10:

    Interfaces: ¿Qué es una interfaz?, creando una interfaz, implementando una interfaz, agrupación de constantes en una interfaz.

  • Sesión 11:

    Manejo de excepciones: Modelo del manejo de excepciones, Lanzando excepciones try / catch, cláusula finally, Métodos que lanzan excepciones (arrojar excepciones explícitamente), Creación de clases de excepción personalizadas, lectura de un volcado de Stack.

SEMANA 4:
  • Sesión 12:

    Flujos: ¿Qué es un Flujo?, flujos estándar, flujos que ofrece java.io, flujos de bytes, Gestión de excepciones de entrada / salida, flujos de acceso a archivos, clase File, clase FileOutputStream, clase DataOutputStream, clase DataInputStream.

  • Sesión 13:

    Usando paquetes: ¿Qué es un paquete?, creando y usando paquetes (package / import), paquetes estándar de Java. Creando paquetes compactados en archivos .jar.

  • Sesión 14:

    Introducción a las aplicaciones visuales: ¿Qué es un una aplicación visual?, Contenedores: JFrame, Paneles, Layouts: FlowLayout, GridLayout, Layout nulos.

  • Sesión 15:

    Introducción a las aplicaciones visuales: Controles comunes: TextField, Button, Label, LixtBox, ComboBox, Menús, Menús Popup, Tablas, Look And Feel, fecha, etc.