Logo Studenta

Diseño orientado a objetos

¡Estudia con miles de materiales!

Vista previa del material en texto

1er semestre Ing. informática 2017 
Diseño orientado a objetos: Construyendo software flexible y modular 
 
Resumen: 
El diseño orientado a objetos es una metodología de diseño de software que se basa 
en la creación de objetos y su interacción para construir sistemas completos. Esta 
aproximación se centra en identificar las entidades y sus relaciones en el dominio del 
problema, y luego modelarlas como objetos con propiedades y comportamientos. El 
diseño orientado a objetos promueve la reutilización, la flexibilidad y la modularidad del 
software, permitiendo a los desarrolladores construir aplicaciones más mantenibles y 
escalables. 
 
Ejemplo de uso en la vida real: 
 
Imaginemos que una compañía de desarrollo de juegos desea crear un nuevo juego de 
rol en línea. El diseño orientado a objetos sería fundamental para la construcción del 
juego: 
 
1. Identificación de entidades: El equipo de desarrollo identifica las entidades clave en 
el dominio del juego, como jugadores, personajes no jugables, objetos, misiones, etc. 
Estas entidades se modelarán como objetos en el diseño. 
 
2. Clases y objetos: Se definen las clases que representan cada una de las entidades 
identificadas. Por ejemplo, puede haber una clase "Jugador" con propiedades como 
nombre, nivel y experiencia. También puede haber clases para diferentes tipos de 
personajes no jugables, como "Enemigo" o "NPC" (Personaje No Jugable). 
 
3. Relaciones y herencia: Se establecen relaciones entre las clases mediante 
asociaciones, agregaciones o herencia. Por ejemplo, un jugador puede tener una 
relación de agregación con una clase "Inventario" que contiene los objetos que el 
jugador posee. Además, puede haber una jerarquía de herencia para diferentes tipos 
de personajes no jugables que comparten ciertas características. 
 
4. Encapsulación y abstracción: Se definen los métodos y propiedades adecuados para 
cada clase, ocultando la implementación interna y exponiendo solo la interfaz necesaria 
para interactuar con el objeto. Esto promueve la encapsulación y la abstracción, 
1er semestre Ing. informática 2017 
permitiendo que cada objeto se comporte de manera independiente y se modifique sin 
afectar otros componentes del sistema. 
 
5. Polimorfismo: Se utiliza el polimorfismo para permitir que objetos de diferentes 
clases respondan de manera diferente a los mismos mensajes o métodos. Por ejemplo, 
diferentes tipos de enemigos pueden implementar métodos de ataque de manera 
diferente, aunque todos hereden de la misma clase base. 
 
En este ejemplo, el diseño orientado a objetos es esencial para construir un juego de 
rol en línea. Al modelar las entidades del juego como objetos y definir sus relaciones y 
comportamientos, el equipo de desarrollo puede construir un sistema flexible y modular. 
Esto permite la reutilización de componentes, facilita futuras expansiones del juego y 
mejora la mantenibilidad del software. Además, el diseño orientado a objetos permite 
una representación más fiel del dominio del problema, lo que contribuye a una 
implementación más precisa y coherente del juego.

Continuar navegando