Conceptos de Programación Orientada a Objetos

Páginas: 10 (2363 palabras) Publicado: 25 de marzo de 2013
Programación Orientada a Objetos

1. Crisis del software
Dificultad para construir sistemas grandes, confiables y controlados
Complejidad del Software
Baja reutilización de código
Alto costo de mantenimiento

2. Enfrentando la Complejidad:
Dificultad para comprender el sistema global
Dificultad para diseñar una buena solución
Dificultad en la coordinación del equipo de desarrolloComplejidad en el dominio del problema
Dificultad de comunicación con los usuarios

3. Técnicas propuestas

Para enfrentar la complejidad del software Booch propone 3 técnicas:
1. Descomposición:
Descomponer un sistema en partes independientes para que se pueda trabajar en forma independiente a través de 2 métodos:
Funcional (En diseño estructurado se descompone un gran proceso en variaspartes, ejemplo: Subsidio de vivienda se compone de Inscripción, selección – asignación
Por clases y objetos:
Abstracción:
Ignorar los detalles no esenciales de un objeto, manteniendo un modelo simplificado
Una interfaz es una abstracción de una clase o conjunto de clases
Una clase cliente utiliza servicios de una clase servidor, a la cual accede a través de su interfaz
El uso de interfacesrecude la dependencia en clases
El cliente depende de la interfaz del servidor
El servidor depende de su propia interfaz
El cliente utiliza transparentemente cualquier clase como servidor, mientras implemente la interfaz correspondiente

Generalización/Especialización
Clasificar los objetos en grupos de abstracciones relacionadas, explicitando el hecho de que los objetos comparten ciertaspropiedades (concepto de herencia)

4. Reutilización de Software

¿Porque hay poca reutilización?
Dificultad para construir software reutilizable
Dificultad para socializar el software construido
Dificultad para programar con software adquirido
5. Mantenimiento de Software
Los sistemas son diseñados de acuerdo a lo que deben realizar (metodologías top-down promueven un diseño de ese tipo)Ejemplos:
Sistemas guiados por menús
Compiladores/Intérpretes guiados por estructura de archivos a leer
Los sistemas tienen una alta dependencia de factores poco estables:
GUI (interfaz gráfica de usuario)
Formatos de datos
Dispositivos
Programando para el cambio
Diseño bottom-up (no exclusivamente)
Ocultamiento de información
Uso de interfaces





6. Modularidad

Modularidad deacuerdo a Edward Yourdon:
Alta Cohesión
Bajo Acoplamiento
OOP / OOD:
Incorpora el concepto de clase, incrementando la cohesión
Reduce el acoplamiento:
Ocultamiento de información
Dependencia de interfaces


7. Conceptos

Programación orientada a objetos:
Es un paradigma de programación que usa los objetos en sus interacciones, para diseñar aplicaciones y programas informáticos. Estábasado en varias técnicas, incluyendo herencia, cohesión, abstracción, polimorfismo, acoplamiento y encapsulamiento. Su uso se popularizó a principios de la década de los años 1990. En la actualidad, existe variedad de lenguajes de programación que soportan la orientación a objetos.
Objeto
“Es algo sobre lo que se pueden hacer cosas”
Un objeto posee información (estado)
Un objeto poseecomportamiento
Un objeto es una caja negra, manipulable a través de su interfaz
Un objeto posee una identidad única
Un objeto es manipulado a través de una variable:
Diferentes variables puede “apuntar” a un mismo objeto
Un objeto tiene un tipo de datos:
Su clase
Un objeto es una instancia de una clase




Clase
La clase es la especificación de un objeto
La plantilla a partir de cual segeneran objetos
Una clase es un tipo de dato
Tiene variables (información de estado)
Tiene métodos (comportamiento)
La clase es una unidad cohesionada

Es una construcción que se utiliza como un modelo (o plantilla) para crear objetos de ese tipo. El modelo describe el estado y el comportamiento que todos los objetos de la clase comparten. Un objeto de una determinada clase se denomina...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Conceptos programacion orientada a objetos
  • Conceptos POO (Programación Orientada a Objetos)
  • Conceptos básicos de Programación Orientada a Objetos
  • Conceptos basicos de la Programacion Orientada a Objetos
  • Que es un Objeto? Programacion Orientada a Objetos
  • Conceptos de la Programacion Orientada a Objetos
  • CONCEPTOS DE PROGRAMACIÓN ORIENTADA A OBJETOS
  • Programacion orientada a objetos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS