Contenido
Curso (2-1) Algorítmica y Programación en Java - Parte 1
Nombre del Curso
Curso Algorítmica y Programación en Java Parte 1 (Online)
Introducción
Java es un lenguaje de programación orientado a objetos, desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel, que suelen inducir a muchos errores, como la manipulación directa de punteros o memoria.
Las aplicaciones Java están típicamente compiladas en un bytecode, aunque la compilación en código máquina nativo también es posible. En el tiempo de ejecución, el bytecode es normalmente interpretado o compilado a código nativo para la ejecución, aunque la ejecución directa por hardware del bytecode por un procesador Java también es posible.
La implementación original y de referencia del compilador, la máquina virtual y las bibliotecas de clases de Java fueron desarrollados por Sun Microsystems en 1995. Desde entonces, Sun ha controlado las especificaciones, el desarrollo y evolución del lenguaje a través del Java Community Process, si bien otros han desarrollado también implementaciones alternativas de estas tecnologías de Sun, algunas incluso bajo licencias de software libre.
Java es un lenguaje de programación orientado a objetos, desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel, que suelen inducir a muchos errores, como la manipulación directa de punteros o memoria.
Las aplicaciones Java están típicamente compiladas en un bytecode, aunque la compilación en código máquina nativo también es posible. En el tiempo de ejecución, el bytecode es normalmente interpretado o compilado a código nativo para la ejecución, aunque la ejecución directa por hardware del bytecode por un procesador Java también es posible.
La implementación original y de referencia del compilador, la máquina virtual y las bibliotecas de clases de Java fueron desarrollados por Sun Microsystems en 1995. Desde entonces, Sun ha controlado las especificaciones, el desarrollo y evolución del lenguaje a través del Java Community Process, si bien otros han desarrollado también implementaciones alternativas de estas tecnologías de Sun, algunas incluso bajo licencias de software libre.
Objetivos
Permitir que el estudiante a través de la práctica conozca y aprenda sobre los conceptos básicos de la programación orientada a objetos en Java.
Habilidades que contribuye a desarrollar
Estimular la destreza para solucionar problemas mediante algoritmos.
Afianzar los conocimientos de programación básica.
Definir varias alternativas para solucionar un problema mediante el uso de la programación orientada a objectos y seleccionar la alternativa más viable.
Desarrollar la habilidad para implementar los algoritmos diseñados en un lenguaje de programación.
Estrategías Pedagógicas
El curso se dictará en línea mediante un tutor el cual mostrará paso a paso los conceptos vistos en la práctica y con aplicaciones reales. Los estudiantes estarán en la capacidad de apreciar los conceptos vistos mediante la práctica directa en la herramienta NetBeans 6.9.1.
Contenidos Temáticos
Capítulo 1 - Introducción a los Computadores, Internet y la Web.
1.1.Introducción
1.2. ¿ Que es un Computador ?
1.3. Organización de un Computador
1.4. Sistemas Operativos Antiguos
1.5. Computación Personal, Distribuida y Cliente-Servidor
1.6. El Internet y la World Wide Web
1.7. Lenguajes de Máquina, Lenguaje Ensamblador y Lenguajes de Alto Nivel
1.8. Historia de C y C++
1.9. Historia de Java
1.10. Librería de Clases de Java
1.11. Fortran, COBOL, Pascal y Ada
1.12. BASIC, Visual Basic, Visual C++, C# y .NET
1.13. Ambiente de Desarrollo Típico en Java
1.14. Introducción a la Tecnología de Objetos y UML
1.15. Web 2.0
1.16. Tecnologías de Software
1.17. Resúmen
Capítulo 2 - Introducción a las aplicaciones en Java
2.1.SECCION 2.1. : Introducción
2.2.Mi primer programa en Java : Imprimir una linea de texto
2.3.Modificar mi primer programa en Java
2.4.Visualizar texto en consola
2.5.Otra aplicación en Java : agregando número enteros
2.6.Conceptos de memoria
2.7.Programando aritmética
2.8.Decisiones : Igualidad y Operadores Relacionales
2.9.Caso de Estudio de Ingeniería de Software : Examinando el documento de requerimientos
2.10.Resumen
2.11.Ejercicios
Capítulo 3 - Introducción a Clases y Objetos
3.1.SECCION 2.1. : Introducción
3.2.Clases, objetos, métodos e instanciamiento de variables
3.3.Declaración de una Clase con un método e instanciar un objeto de una clase
3.4.Declarar un método con un parámetro
3.5.Variables de Instancia, Métodos set y get
3.6.Tipos Primitivos Vs Tipos por Referencia
3.7.Inicialización de Objetos con método constructor
3.8.Números de punto flotante y tipo double
3.9.Uso de Interfaces gráficas. Caso de Estudio : Usando cuadros de diálogo.
3.10.Caso de Estudio de Ingeniería de Software : Identificando las clases en un documento de requerimientos.
3.11.Resumen
3.12.Ejercicios
Capítulo 4 - Sentencias de Control Parte 1
4.1.Introducción
4.2.Algorítmos
4.3.Seudocódigo
4.4.Estructuras de control
4.5.Sentencia If de una selección
4.6.if...else double selection
4.7.setencia de repetición while
4.8.Formulación de algorítmos : Repetición controlada por contador
4.9.Formulación de algorítmos : Repetición controlada por sentinela
4.10.Formulación de algorítmos : Sentencias anidadas
4.11.Operadores de asignación compuesta
4.12.Operadores Incrementales y decrementales
4.13.Tipos primitivos
4.14.Caso de estudio de Ingeniería de Software : Identificando Atributos de clase
4.15.Resumen
4.16.Ejercicios
Capítulo 5 - Sentencias de Control Parte 2
5.1.Introducción
5.2.Conceptos Esenciales de repetición controlada por contador.
5.3.Sentencia de repetición for
5.4.Ejemplos usando la sentencia for
5.5.Sentencia do...while
5.6.Sentencias de selección multiple switch
5.7.Sentencias break and continue
5.8.Operadores Lógicos
5.9.Resúmen sobre la Programación Estructurada
5.10.Caso de Estudio : Dibujo de rectángulos y ovalos
5.11.Caso de Estudio Ingenieria de Software : Identificando estados de los Objetos y Actividades
5.12.Resumen
5.13.Ejercicios
Capítulo 6 - Método : Un vistazo mas profundo
6.1.Introducción
6.2.Módulo de Programa en Java
6.3.Métodos Estáticos, Campos Estáticos y la Clase Math
6.4.Declaración de métodos con multiples parámetros
6.5.Notas en Declaración y Uso de Métodos
6.6.Activación de Registro y Método Call Stack
6.7.Promoción de Argumentos y Casting
6.8.Paquetes API Java
6.9.Casos Estudio : Generación Aleatoria de Números
6.10.Casos Estudio : Un juego de Chance (Introducción a Enumeraciones)
6.11.Alcance de las Declaraciones
6.12.Sobrecarga de Métodos
6.13.Casos de Estudio : Formas de Color y Relleno
6.14.Caso Estudio Ingeniería de Software : Identificando Operaciones de Clase
6.15.Resúmen
6.16.Ejercicios
Capítulo 7 - Arreglos
7.1.Introducción
7.2.Arreglos
7.3.Declaración y Creación de Arreglos
7.4.Ejemplos de Uso de Arreglos
7.5.Caso Estudio : Simulación de Juego de Cartas
7.6.Sentencia For mejorada
7.7.Pasando arreglos a Métodos
7.8.Caso de Estudio : La Clase GradeBook usa un arreglo para registrar grados
7.9.Arreglos Multidimensionales
7.10.Caso de Estudio : La Clase GradeBook en un arreglo bi-dimensional
7.11.Lista de Argumentos de Longitud Variable
7.12.Uso de Argumentos de Línea de Comando
7.13.Caso de Estudio : Dibujo de Arcos
7.14.Caso de Estudio Ingeniería de Software : Colaboración entre Objetos
7.15.Resumen
7.16.Ejercicios
Capítulo 8 - Clases y Objetos Parte 2
8.1.Introducción
8.2.Caso de Estudio : La Clase Time
8.3.Control de Acceso a Miembros
8.4.Refiriendo a los actuales miembros del Objeto con la referencia this
8.5.Caso de Estudio de la Clase Time : Constructores Sobrecargados
8.6.Constructores por defecto y Constructores sin argumentos
8.7.Notas sobre los métodos get y set
8.8.Composición
8.9.Enumeraciones
8.10.Recolección de basura y el método finalize
8.11.Miembros de Clase Estático
8.12.static import
8.14.Reusabilidad del Software
8.15.Abstracción de Datos y Encapsulamiento
8.16.La Clase Time : Caso de Estudio : Creación de Paquetes.
8.17.Acceso de Paquetes
8.18.Caso de Estudio : Utilización de Objetos y Gráficos.
8.19.Caso de Estudio Ingeniería de Software : Inicio de la Programación de la Clases de un Sistema ATM.
8.20.Resúmen
8.21.Ejercicios
Capítulo 9 - Programación Orientada a Objetos : Herencia
9.1.Introducción
9.2.Superclases y Subclases
9.3.Miembros protected
9.4.Relación entre superclases y subclases
9.5.Constructores en subclases
9.6.Ingeniería de Software con Herencia
9.7.Objetos de Clase
9.8.Caso de Estudio : Visualización de Texto e Imágenes usando Labels
9.9.Resumen
9.10.Ejercicios
Capítulo 10 - Programación Orientada a Objetos : Polimorfismo
10.1.Introducción
10.2.Ejemplos de Polimorfismo
10.3.Demostración del Comportamiento Polimorfico
10.4.Métodos y Clases final
10.5.Caso de Estudio : Sistema de nómina usando polimorfismo
10.6.Métodos y Clases Abstractas
10.7.Caso de Estudio : Creación y Uso de Interfaces
10.8.Caso de Estudio : Dibujo con Polimorfismo
10.9.Caso de Estudio Ingeniería de Software : Incorporando herencia al Sistema ATM
10.10.Resumen
10.11.Ejercicios
Capítulo 11 - Programación Orientada a Objetos : Polimorfismo
11.1.Introducción
11.2.Interface de Usuario Gráfica con JOptionPane
11.3.Resumen de los Componentes Swing
11.4.Visualización de Textos e Imágenes en una Ventana
11.5.Campos de Texto e Introducción al Manejo de Eventos con Clases Anidadas.
11.6.Tipos de Eventos Comunes GUI e Interfaces con Escuchas
11.7.Como funciona el Manejador de Eventos
11.8.JButton
11.9.Botones que mantienen el estado
11.10.JComboBox y uso de una clase interna anónima para el manejo de eventos.
11.11.JList
11.12.Lista de Selección Múltiple
11.13.Manejo de Eventos con el Ratón
11.14.Clase Adapter
11.15.Subclases JPanel para dibujar con el Mouse
11.16.Manejo de Eventos con el Teclado
11.17.Layout Managers
11.18.Uso de Paneles para esquemas mas complejos
11.19.JTextArea
11.20.Resúmen
11.21.Ejercicios
Capítulo 12 - Graficos y Java 2D
12.1.Introducción
12.2.Contexto Gráfico y Objetos Gráficos
12.3.Color Control
12.4.Fuente Control
12.5.Dibujo de Líneas, Rectángulos y Ovalos
12.6.Dibujo de Arcos.
12.7.Dibujo de Polígonos y Polilineas
12.8.Java 2D API
12.9.Resúmen
12.10.Ejercicios
Capítulo 13 - Manejo de Excepciones
13.1.Introducción
13.2.Generalidades del Manejo de Excepciones
13.3.Ejemplo : División entre cero sin manejo de excepciones.
13.4.Ejemplo : Manejo de Excepciones Aritméticas y Excepciones de Error de Entrada de Datos
13.5.Cuando usar manejo de excepciones
13.6.Jerarquía de Excepciones en Java
13.7.Bloque finally
13.8.Stack Unwinding
13.9.printStackTrace, getStackTrace, y getMessage
13.10.Excepciones encadenadas
13.11.Declaración de nuevos tipos de Excepciones
13.12.Precondiciones y postcondiciones
13.13.Asserciones
13.14.Resúmen
13.15.Ejercicios
Duración del Curso
24 Horas ( 60 Minutos Hora)
Horario
El horario se estable a convenir según disponibilidad de horario y tiempo de las personas preinscritas. Todos los cursos se dictan de a 2 horas diarias de Lunes a Sabado.