Carrera: Ingeniería en Sistemas Computacionales
APORTACIÓN DE LA ASIGNATURA AL PERFIL PROFESIONAL:
En esta asignatura aporta al perfil del egresado los conceptos de la metodología orientada a objetos que permiten la creación y optimización de aplicaciones basadas en clases. Se estudian aquí los mecanismos que permitan un desarrollo ágil a través de la reutilización de tipos de objetos y control de errores.
OBJETIVO DEL CURSO (competencia específica a desarrollar en el curso)
• Diseñar e implementar objetos de programación que permitan resolver situaciones reales y de ingeniería.
COMPETENCIAS PREVIAS
•Analizar, diseñar y desarrollar soluciones de problemas reales utilizando algoritmos computacionales para implementarlos en un lenguaje de programación orientado a objetos.
TEMARIO
1. Introducción al paradigma de la programación orientado a objetos.
1.1 Elementos del modelo de objetos: clases, objetos, abstracción, modularidad, encapsulamiento, herencia y polimorfismo.
1.2 Lenguaje de modelado unificado: diagrama de clases.
2. Clases y objetos.
2.1 Declaración de clases: atributos, métodos, encapsulamiento.
2.2 Instanciación de una clase.
2.3 Referencia al objeto actual.
2.4 Métodos: declaración, mensajes, paso de parámetros, retorno de valores.
2.5 Constructores y destructores: declaración, uso y aplicaciones.
2.6 Sobrecarga de métodos.
2.7 Sobrecarga de operadores: Concepto y utilidad, operadores unarios y binarios.
3. Herencia.
3.1 Definición: clase base, clase derivada.
3.2 Clasificación. herencia simple, herencia múltiple.
3.3 Reutilización de miembros heredados.
3.4 Referencia al objeto de la clase base.
3.5 Constructores y destructores en clases derivadas.
3.6 Redefinición de métodos en clases derivadas.
4. Polimorfismo.
4.1 Definición.
4.2 Clases abstractas: definición, métodos abstractos, implementación de clases abstractas, modelado de clases abstractas.
4.3 Interfaces: definición, implementación de interfaces, herencia de interfaces.
4.4 Variables polimórficas (plantillas): definición, uso y aplicaciones.
4.5 Reutilización de código.
5. Excepciones.
5.1 Definición.
5.2 Tipos de excepciones.
5.3 Propagación de excepciones.
5.4 Gestión de excepciones: manejo de excepciones, lanzamiento de excepciones.
5.5 Creación y manejo de excepciones definidas por el usuario.
6. Flujos y Archivos.
6.1 Definición.
6.2 Clasificación: Archivos de texto y binarios.
6.3 Operaciones básicas y tipos de acceso.
6.4 Manejo de objetos persistentes.
FUENTES DE INFORMACIÓN
1. Taylor David. Object Orient informations systems, planning and implementations. Canada: Wiley. 1992.
2. Larman Craig. UML y patrones introducción al análisis y diseño orientado a objetos. México: Pretince Hall. 1999.
3. Winblad, Ann L. Edwards, Samuel R. Software orientado a objetos. USA: Addison. Wesley/ Díaz Santos. 1993.
4. Fco. Javier Ceballos. Java 2 Curso de Programación. Alfaomega.
5. Agustín Froufe. Java 2 Manual de usuario y tutorial. Alfaomega.
6. Laura Lemay, Rogers Cadenhead. Aprendiendo JAVA 2 en 21 días. Prentice Hall.
7. Herbert Schildt. Fundamentos de Programación en Java 2. McGrawHil.
8. J Deitel y Deitel. Como programar en Java. Prentice Hall.
9. Stephen R. Davis. Aprenda Java Ya. McGrawHill.
10. Kris Jamsa Ph D. ¡Java Ahora!. McGrawHill.
11. Francisco Charte Ojeda. Visual C# .NET. ANAYA MULTIMEDIA
12. Kingsley-Hughes, Kathie; Kingsley-Hughes, Adrian. C# 2005. ANAYAMULTIMEDIA
13. Ceballos Francisco Javier.Enciclopedia de Microsoft Visual C#. 2ª Edición
14. El lenguaje de programación C#.Fco. Javier Ceballos Sierra. Editorial Ra-ma.
15. Tom Archer. A fondo C#. McGRAW-HILL/INTERAMERICANA DE ESPAÑA, S.A.U.
__________________________________
SON LIBROS ADICIONALES QUE PUEDEN CONSULTAR
Deitel, Paul; Deitel, Harvey. JAVA Como programar 9a. edición. pearson o versiones anteriores
Joyanes Aguilar, Luis;Zahonero Martínez, Ignacio. programación en C, C++, Java y UML. Mc Graw Hill.
Eckel, Bruce. Piensa en Java. 2a edición. Pearson-Prentice Hall.
Ceballos, Fco. Javier. Java 2 Lenguaje y aplicaciones. Alfaomega Ra-Ma.
Douglas, Bell; Parr, Mike. Java para estudiantes. 6a edición. Pearson.
Jamsa, Kris. Aprenda y practique JAVA. Oxford.