Este documento presenta el programa de la asignatura Programación IV. Los objetivos son estudiar la programación orientada a objetos con C++ y Java, brindando conocimientos para aplicar estos lenguajes. Los módulos cubren paradigma orientado a objetos, fundamentos de POO, diseño de clases, propiedades de POO, flujos en Java y Java con bases de datos. La evaluación incluye proyectos, laboratorios, parciales y un examen semestral.
1. Programación IVProgramación IV
ComisiónComisión
Prof. Giannina NúñezProf. Giannina Núñez
Prof. Diego SantimateoProf. Diego Santimateo
V Jornada de Informática 19 y 20 de noviembre de 2009V Jornada de Informática 19 y 20 de noviembre de 2009
3. Objetivo GeneralObjetivo General
Estudiar la programación orientada aEstudiar la programación orientada a
objetos con un enfoque conceptual, queobjetos con un enfoque conceptual, que
brinde a los/las estudiantes losbrinde a los/las estudiantes los
conocimientos necesarios para aplicarconocimientos necesarios para aplicar
cualesquiera de los lenguajes orientadoscualesquiera de los lenguajes orientados
a objetos más utilizados en la actualidad,a objetos más utilizados en la actualidad,
en particular los lenguajes C++ y Java.en particular los lenguajes C++ y Java.
5. MÓDULO IMÓDULO I Paradigma OOParadigma OO
MÓDULO IIMÓDULO II Fundamentos de la POOFundamentos de la POO
MÓDULO IIIMÓDULO III Diseño de ClasesDiseño de Clases
MÓDULO IVMÓDULO IV
Propiedades de la POOPropiedades de la POOMÓDULO VMÓDULO V
Flujos en JavaFlujos en Java
MÓDULO VIMÓDULO VI Java y Bases de DatosJava y Bases de Datos
6. MÓDULO IMÓDULO I: Paradigma orientado a objetos - 2 Semanas: Paradigma orientado a objetos - 2 Semanas
Elaborar glosarios de términosElaborar glosarios de términos
de la OOde la OO
ContenidoContenido EstrategiaEstrategia
Aplicar técnicas deAplicar técnicas de
identificación de sustantivos yidentificación de sustantivos y
la comparación conla comparación con
estándares.estándares.
Crear modelos OO de sistemasCrear modelos OO de sistemas
reales y representarlos conreales y representarlos con
casos de uso UML.casos de uso UML.
Conceptos esencialesConceptos esenciales
OO, Análisis OO, Caso de uso UML,OO, Análisis OO, Caso de uso UML,
Dominio, Clases, Propiedades, Objetos,Dominio, Clases, Propiedades, Objetos,
Relaciones, Método.Relaciones, Método.
OBJETIVO: Identificar elementos del Paradigma Orientado
a Objetos.
7. Experimentar la instalaciónExperimentar la instalación
de Java y reconocer susde Java y reconocer sus
carpetas.carpetas.
Laboratorio para discriminarLaboratorio para discriminar
variables de objetos Java: Stringvariables de objetos Java: String
y Arrayy Array
MÓDULO IIMÓDULO II: Fundamentos de la POO - 2 Semanas: Fundamentos de la POO - 2 Semanas
OBJETIVO PARTICULAR: Aplicar estructuras de control,Aplicar estructuras de control,
estructuras de datos y estructuras de los nombres en laestructuras de datos y estructuras de los nombres en la
programación Java.programación Java.
Entorno de ProgramaciónEntorno de Programación
JDK, JVM, Programa fuente, Byte-codeJDK, JVM, Programa fuente, Byte-code
http://www.textpad.com/http://www.textpad.com/
Estructura de un programaEstructura de un programa
Tipos de datos, variables/constantes,Tipos de datos, variables/constantes,
Operadores, Cadena de caracteres,Operadores, Cadena de caracteres,
Arreglos, Estructuras de control.Arreglos, Estructuras de control.
ContenidoContenido EstrategiaEstrategia
Discusión sobre ParadigmaDiscusión sobre Paradigma
Procedural y Orientado a ObjetoProcedural y Orientado a ObjetoClases, Objetos y MétodosClases, Objetos y Métodos
Arreglos y Cadenas de caracteres.Arreglos y Cadenas de caracteres.
8. MÓDULO III: Diseño de Clases Java - 4 SemanasMÓDULO III: Diseño de Clases Java - 4 Semanas
OBJETIVO PARTICULAR: Diseñar programas utilizando
clases y sus componentes.
ContenidoContenido EstrategiaEstrategia
Componentes de una ClaseComponentes de una Clase
Definición de una ClaseDefinición de una Clase
Modificadores de AccesoModificadores de Acceso
Identificación de Variables de InstanciasIdentificación de Variables de Instancias
Identificación de Variables de ClasesIdentificación de Variables de Clases
ConstructoresConstructores
MétodosMétodos
Uso de Clases y métodosUso de Clases y métodos
Paquetes de JavaPaquetes de Java
Creadas por el usuarioCreadas por el usuario
Arreglo de ObjetosArreglo de Objetos
EncapsulaciónEncapsulación
Se experimenta con clasesSe experimenta con clases
diferentes en archivosdiferentes en archivos
diferentes. Se pone endiferentes. Se pone en
evidencia el concepto deevidencia el concepto de
encapsulación.encapsulación.
ConstructoresConstructores
Laboratorio para crearLaboratorio para crear
objetos experimentando laobjetos experimentando la
sobrecarga de constructores.sobrecarga de constructores.
9. MÓDULO IVMÓDULO IV: Flujos - 3 Semanas: Flujos - 3 Semanas
OBJETIVO PARTICULAR: Identificar similitudes y
diferencias en flujos para consola, teclado, archivo y URL.
ContenidoContenido EstrategiaEstrategia
Flujos y ExcepcionesFlujos y Excepciones
Concepto de Flujo y utilidad de lasConcepto de Flujo y utilidad de las
excepciones.excepciones.
InputStreamReaderInputStreamReader
BufferedReaderBufferedReader
FileReaderFileReader
FileWriterFileWriter
BufferedWriterBufferedWriter
Clases URL y URLConnectionClases URL y URLConnection
Try…catchTry…catch
JOptionPane.showMessageDialogJOptionPane.showMessageDialog
JOptionPane.showInputDialogJOptionPane.showInputDialog
Discutir propuestas paraDiscutir propuestas para
encapsular el manejo deencapsular el manejo de
flujos, aprovechando lasflujos, aprovechando las
similitudes en el manejo desimilitudes en el manejo de
los mismos.los mismos.
Laboratorio paraLaboratorio para
experimentar el uso yexperimentar el uso y
aplicación de las excepciones.aplicación de las excepciones.
10. MÓDULO VMÓDULO V: Propiedades de la POO - 4 Semanas: Propiedades de la POO - 4 Semanas
OBJETIVO PARTICULAR: Aplicar las propiedades
fundamentales de la POO.
ContenidoContenido EstrategiaEstrategia
Fundamentos de la POOFundamentos de la POO
JerarquíasJerarquías
PolimorfismoPolimorfismo
HerenciaHerencia
Clases abstractasClases abstractas
SuperclasesSuperclases
ProyectosProyectos
Desarrollar proyectos queDesarrollar proyectos que
involucren la aplicación deinvolucren la aplicación de
los aspectos o característicaslos aspectos o características
fundamentales de la POO, afundamentales de la POO, a
partir del análisis OO.partir del análisis OO.
Sustentación deSustentación de
ProyectosProyectos
Justificar las propuestas deJustificar las propuestas de
desarrollo de los modelos OOdesarrollo de los modelos OO
de los proyectos.de los proyectos.
11. MÓDULO VIMÓDULO VI: Java y Bases de Datos - 3 Semanas: Java y Bases de Datos - 3 Semanas
OBJETIVO PARTICULAR: Desarrollar Aplicaciones Java
con Bases de Datos locales y remotas.
ContenidoContenido EstrategiaEstrategia
Java y Bases de DatosJava y Bases de Datos
Conceptos de bases de datosConceptos de bases de datos
Comandos SQLComandos SQL
Controlador JDBCControlador JDBC
Clases involucradas con Mysql:Clases involucradas con Mysql:
•Class.forName ("com.mysql.jdbc.Driver")Class.forName ("com.mysql.jdbc.Driver")
•ConnectionConnection conn =conn = DriverManagerDriverManager.getConnection.getConnection
(url, userName, password);(url, userName, password);
•Statement y ResulSetStatement y ResulSet
Laboratorios paraLaboratorios para
experimentar el accesoexperimentar el acceso
y administración dey administración de
MySql con java.MySql con java.
13. ReferenciasReferencias
1.1.Harvey Deitel, Paul Deitel. Cómo Programar en Java, quinta edición.Harvey Deitel, Paul Deitel. Cómo Programar en Java, quinta edición.
Perarson. México.2004.Perarson. México.2004.
2.2.Cay S. Horstmann, Gary Cornell.Cay S. Horstmann, Gary Cornell. Java 2. Volumen I. Fundamentos.Java 2. Volumen I. Fundamentos.
Prentice Hall. España. 2003.Prentice Hall. España. 2003.
3.3.Javier García de Jalón y otros. Aprenda Java. España, San Sebastián.Javier García de Jalón y otros. Aprenda Java. España, San Sebastián.
Febrero 2000.Febrero 2000.
4.4.Miguel A. Abián. Orientación a Objetos: conceptos, terminología yMiguel A. Abián. Orientación a Objetos: conceptos, terminología y
lenguajes. Enero 2006.lenguajes. Enero 2006.
http://www.javahispano.org/tutorials.item.action?id=25http://www.javahispano.org/tutorials.item.action?id=25 [consulta:[consulta:
enero 2007]enero 2007]
5.5.MySQL hispano. MySQL con Java en MS Windows.[últimaMySQL hispano. MySQL con Java en MS Windows.[última
actualización: 26 de septiembre de 2003]actualización: 26 de septiembre de 2003] http://www.mysql-http://www.mysql-
hispano.org/page.php?id=24hispano.org/page.php?id=24 [consulta: julio 2007][consulta: julio 2007]
6.6.Luis Joyanes Aguilar. Programación Orientada a Objetos. SegundaLuis Joyanes Aguilar. Programación Orientada a Objetos. Segunda
edición. McGraw-Hill.España.1998.edición. McGraw-Hill.España.1998.
7.7.HarveyM. Deitel, Paul J. Deitel.HarveyM. Deitel, Paul J. Deitel. Cómo Programar en C++. CuartaCómo Programar en C++. Cuarta
Edición. Pearson Education. México. 2003.Edición. Pearson Education. México. 2003.
8.8.Luis Joyanes Aguilar / Ignacio Zahonero Martínez. Estructura deLuis Joyanes Aguilar / Ignacio Zahonero Martínez. Estructura de
datos en Java. McGraw-Hill. España-2008.datos en Java. McGraw-Hill. España-2008.