Encabezado Facultad de Ciencias
presentacion

Presentación del grupo 7033 - 2010-1.

Diseño y Programación Orientada a Objetos

Información General
Clave: 0823
Semestre: Optativa
Créditos: 10
Requisitos. Lenguaje de programación y sus paradigmas
Horario: Lunes a Jueves de 19 a 20 hrs.
Modalidad: Presencial, Ayudantías a distancia
Evaluación:Desarrollo de proyecto

Descripción
Durante los últimos años han surgido una variedad de metodologías estructuradas para el desarrollo de sistemas de información, cada una ellas han marcado la pauta para la construcción de software. La metodología orientada a objetos es un paradigma para esta actividad que ha demostrado ser de gran utilidad para la solución de problemas clásicos que se presentan en la elaboración de software, brindando, entre otros beneficios: software reutilizable, costos y tiempos de desarrollo menores, sistemas de alta calidad, fáciles de modificar y mejorar.

El verdadero poder de la metodología orientada a objetos radica en la creación de sistemas de información a gran escala, aunque también ofrece beneficios significativos en la elaboración de programas individuales.
Este curso se enfocará en las ideas fundamentales detrás de la metodología de orientación a objetos, centrándonos en cuestiones de diseño e implementación a través de diversos ejemplos. Los conceptos se implementarán a través del lenguaje de programación Java pero serán aplicables a cualquier lenguaje de programación orientado a objetos.
Objetivos:
El participante describirá y analizará los alcances, conceptos y beneficios del análisis y diseño orientado a objetos como alternativa para el desarrollo de sistemas, también evaluará las metodologías y la importancia de uso durante la construcción de sistemas de información. Los conocimientos obtenidos le permitirán aplicar las metodologías orientadas a objetos para el análisis y diseño de de sistemas de diversos problemas.

Contenido y organización
Conceptos
Proceso de diseño y programación
Herramientas de diseño
Herramientas de programación
1. Paradigmas de los lenguajes de programación
1.1. Objetivo de un lenguaje de programación
1.2. Objetivo de un paradigma
1.3. Descripción general de los paradigmas de los lenguajes de programación
2. Problemas tradicionales del desarrollo de software
2.1. Complejidad del software
2.2. Desarrollo de software
2.3. Encapsulamiento y reuso de software
3. Paradigma orientado a objetos
3.1 Características generales del paradigma orientado a objetos
2.2. Clases y objetos
2.3 Interacción entre objetos
2.4 Interacción entre clases
2.5. Relaciones entre objetos
2.6. Relaciones entre clases
4. Proceso de diseño y programación orientado a objetos
4.1. Ciclo de vida del desarrollo de software
4.2 Delimitación del problema
4.3. El proceso de análisis y diseño
4.3.1 Identificación de clases
4.3.2 Especificación de atributos
4.3.3 Detección de responsabilidades
4.3.4 Detección de relaciones
4.3.5 Empaquetado

5. Modelado orientado a objetos con UML
5.1. UML
5.2. Diagramas de casos de uso
5.3. Diagrama de clase
5.4. Diagramas de secuencia
5.5. Diagramas de estado
6. El lenguaje de programación Java
6.1. Orientación a objetos en Java
6.2 Clases y objetos en Java
6.3 Creación e inicialización de objetos
6.4 Intercambio de mensajes entre objetos
6.5 Herencia
6.6 Polimorfismo
6.7 Interfaces
7. Patrones de diseño
7.1. Definición de patrones
7.2. Ejemplos de patrones de diseño
8. Uso de patrones
8.1. Lineamientos para el diseño de clases
8.2. Aplicación de patrones

Bibliografía
Booch, Grady; Maksimchuk, Robert A.; Engle, Michael W.; Young, Bobbi J.; Conallen, Jim; Houston, Kelli A. Object-oriented analysis and design with applications. Addison-Wesley. 2007.

Cooper, James W. Java Dessign Pattern: A tutorial. Addison-Wesley, 2000.

Fowler, Martin y Scott, Kendall. UML Distilled: A Brief Guide to the Standard Object Modeling Language, 2a. Ed. 1999.

Horstmann, Cay. Object-Oriented Desogn & Pattterns. John Wiley & Sons. 2004.
Pratt, Terrence W. y Zelkowitz, Marvin V. Lenguajes de programación diseño e implementación. Prentice Hall. 1998

Pressman, Roger S. Ingeniería del Software: Un enfoque práctico. Mc. Graw Hill. 2005.
Viso, Elisa G y Peláez, Canek. Introducción a Ciencias de la Computación I. Departamento de Matemáticas la Facultad de Ciencias, UNAM.

Zakhour, Sharon; Hommel, Scott; Royal, Jacob; Rabinovitch, Isaac; Risser, Tom; Hoeber, Mark. The Java Tutorial Fourth Edition: A Short Course on the Basics. Prentice Hall. 2006.

 


Hecho en México, todos los derechos reservados 2011-2016. Esta página puede ser reproducida con fines no lucrativos, siempre y cuando no se mutile, se cite la fuente completa y su dirección electrónica. De otra forma requiere permiso previo por escrito de la Institución.
Sitio web administrado por la Coordinación de los Servicios de Cómputo de la Facultad de Ciencias. ¿Dudas?, ¿comentarios?. Escribenos. Aviso de privacidad.