Análisis y Diseños de Sistemas III
Frahiner Camejo
C.I: 28,413,050
FUNDAMENTOS DE LA METODOLOGÍA
ORIENTADA A OBJETO
Nuestro editor:
Frahiner Camejo
Estudiante de Ingeniería en sistema
La metodología orientada a objetos ha derivado de las metodologías anteriores a éste. Así como los métodos de diseño estructurado realizados guían a los desarrolladores que tratan de construir sistemas complejos utilizando algoritmos como sus bloques fundamentales de construcción, similarmente los métodos de diseño orientado a objetos han evolucionado para ayudar a los desarrolladores a explotar el poder de los lenguajes de programación basados en objetos y orientados a objetos, utilizando las clases y objetos como bloques de construcción básicos.
Contenidos
Estudia
Ingeniería de sistemas en la UBA
Se define a un objeto como "una entidad tangible que muestra alguna conducta bien definida"
2
INDICE 3 concepto y
principios básicos de la metodología orientada a objetos 4 Los conceptos fundamentales 5 Ventajas
7 Las
del análisis
objetos (ADOO) 9 los lenguajes de programación que soportan la programación orientada a objeto 11 Referencias Bibliograficas 13
los
y desventajas de la metodología orientada a objetos
aplicaciones
y diseño orientado a
CONCEPTO Y LOS PRINCIPIOS BÁSICOS DE LA METODOLOGÍA
ORIENTADA A OBJETOS
Hace ya décadas que el paradigma de orientación a objetos (OO) tomó su lugar en el desarrollo de software. Sin embargo, a la fecha muchos de nosotros seguimos sin entender o aplicar correctamente los conceptos en los que se basa este paradigma, así que hemos decidido aprovechar este espacio, ya sea para conocerlos, repasarlos o aclararlos.
Los conceptos fundamentales que se deben entender para poder ser buenos desarrolladores
OO, son los siguientes: abstracción, encapsulación, identidad, modularidad, jerarquía, tipos, concurrencia y persistencia. Nótese que estos conceptos no son exclusivos de la orientación a objetos,
LOS CONCEPTOS FUNDAMENTALES
1. Abstracción
Cualquier elemento del mundo real tiene una cantidad interminable de propiedades y comportamiento. Para lidiar con esta complejidad, utilizamos la abstracción. La abstracción es el mecanismo a través del cual nos enfocamos en los aspectos esenciales o distintivos de algo, ignorando detalles irrelevantes.
3. Modularidad
2. La identidad
Es la propiedad de un objeto, que lo distingue de todos los demás. Los seres humanos tenemos huellas digitales, números de identificación, perfiles DNA.
El modularidad consiste en la descomposición de algo grande y complejo, en partes más sencillas y manejables.
LOS CONCEPTOS
4. Encapsulación
Los detalles de una clase — estructuras de datos, algoritmos, etc.— se hacen privados, o encapsulan, para que sea imposible que otras clases dependan de ellos.
5. Jerarquía
Una jerarquía es una organización de elementos de acuerdo con su tipo, de acuerdo con una estructura de árbol. Así como en la botánica se utilizan jerarquías para definir familias de plantas, en OO, las jerarquías facilitan reconocer similitudes y diferencias entre objetos.
6. Persistencia
Los objetos tienen un periodo de existencia, desde los más volátiles, hasta los más estables. Si un objeto requiere sobrevivir al proceso en que se ejecuta, entonces se dice que es persistente
6
FUNDAMENTALES
VENTAJAS Y DESVENTAJAS DE LA METODOLOGÍA ORIENTADA A OBJETOS
Ventajas
• Los componentes se pueden reutilizar.
• Facilidad de mantenimiento y modificación de los objetos existentes.
• Una estructura modular clara se puede obtener, la cual no revelará el mecanismo detrás del diseño.
• Se proporciona un buen marco que facilita la creación de rica interfaz gráfica de usuario aplicaciones (GUI).
• Se acopla bien a la utilización de bases de datos, debido a la correspondencia entre las estructuras.
VENTAJAS Y DESVENTAJAS DE LA METODOLOGÍA
ORIENTADA A OBJETOS
Desventajas
• Limitaciones del programador: Es posible el programador desconozca algunas características del paradigma y de hecho siga utilizando el paradigma estructurado.
• No hay una forma única de resolver los problemas. Esto puede llevar a que diferentes interpretaciones de la solución planteada emerjan.
• Se requiere una documentación amplia para determinar la solución planteada.
LAS APLICACIONES DEL ANÁLISIS Y DISEÑO
ORIENTADO A OBJETOS (ADOO)
1. Desarrollo de Software
Creación de aplicaciones de escritorio, móviles y web.
Desarrollo de sistemas embebidos y de tiempo real
2. Sistemas de Información Empresarial
Sistemas de gestión empresarial (ERP)
Gestión de relaciones con clientes (CRM)
Aplicaciones de inteligencia de negocios (BI)
3. Juegos y Simulaciones
Desarrollo de videojuegos. Simulaciones educativas y de entrenamiento.
4. Sistemas Distribuidos y de Red
Aplicaciones de computación distribuida.
Servicios web y aplicaciones en la nube.
5. Bases de Datos y Gestión de Datos
Sistemas de gestión de bases de datos orientadas a objetos.
Aplicaciones de minería de datos y análisis de grandes volúmenes de datos.
9
LAS APLICACIONES DEL ANÁLISIS Y DISEÑO
ORIENTADO A OBJETOS (ADOO)
6. Inteligencia Artificial y Machine Learning
Implementación de algoritmos de inteligencia artificial.
Sistemas de aprendizaje automático y análisis predictivo
7. Sistemas de Control y Automatización
Sistemas de control industrial Automatización de procesos y robótica
8. Desarrollo de Frameworks y Bibliotecas
Creación de frameworks de desarrollo y bibliotecas reutilizables.
9. Ingeniería de Software
Diseño de arquitecturas de software escalables y mantenibles.
Implementación de patrones de diseño y mejores prácticas.
10. Sistemas de Seguridad
Desarrollo de sistemas de autenticación y autorización. Implementación de protocolos de seguridad y cifrado.
LOS LENGUAJES DE PROGRAMACIÓN
QUE SOPORTAN LA PROGRAMACIÓN
ORIENTADA A OBJETO
1. Java: Es uno de los lenguajes más utilizados en el desarrollo de software empresarial y aplicaciones Android. Java fue diseñado desde sus inicios como un lenguaje orientado a objetos y proporciona una amplia gama de características para la programación orientada a objetos, como clases, objetos, herencia, polimorfismo, encapsulamiento, entre otros.
2. C++: Es un lenguaje de programación generalmente utilizado para desarrollar software de alto rendimiento y sistemas de bajo nivel. C++ es una extensión del lenguaje C que agrega características de programación orientada a objetos, como clases, objetos, herencia, polimorfismo, encapsulamiento, entre otros.
3. C#: Desarrollado por Microsoft, C# es un lenguaje de programación orientado a objetos diseñado para la plataforma .NET. C# es similar a Java en términos de características de programación orientada a objetos y se utiliza comúnmente para desarrollar aplicaciones de escritorio, web y móviles en el entorno de desarrollo de Microsoft.
LOS LENGUAJES DE PROGRAMACIÓN
QUE SOPORTAN LA PROGRAMACIÓN
ORIENTADA A OBJETO
4. Python: Aunque Python es un lenguaje de programación multiparadigma, también es ampliamente utilizado para la programación orientada a objetos. Python ofrece soporte completo para la programación orientada a objetos, incluyendo clases, objetos, herencia, polimorfismo, encapsulamiento, entre otros.
5. Ruby: Es un lenguaje de programación orientado a objetos conocido por su elegancia y facilidad de uso. Ruby es especialmente popular en el desarrollo web y utiliza una sintaxis clara y concisa para implementar conceptos de programación orientada a objetos.
6. PHP: Aunque PHP es principalmente un lenguaje de programación para desarrollo web, también admite la programación orientada a objetos. PHP ha evolucionado en los últimos años para proporcionar una sintaxis y características más sólidas para la programación orientada a objetos, como clases, objetos, herencia, polimorfismo, encapsulamiento, entre otros.
1 2
REFERENCIAS BIBLIOGRAFICAS
Equipo Editorial SG (2012). Orientación a Objetos: Principios Básicos. SG México. Recuperado 28 de mayo 2024.
https://sg.com.mx/content/view/519
Equipo Editorial EuroInnova (2023). ¿Qué es el diseño orientado a objetos? EuroInnova. Recuperado 28 de mayo 2024.
https://www.euroinnova.edu.es/blog/disen o-orientado-a-objetos
Jose Torres (2023). Objetos: Ventajas y Desventajas. WordPress. Recuperado 28 de mayo 2024,
https://objetosweb.wordpress.com/2016/0 5/18/ventajas-y-desventajas-de-la-programacionorientada-a-objetos/
Equipo Editorial Universidad Europea (2022). Principales lenguajes de programación orientada a objetos. UE Universidad Europea. Recuperado 28 de mayo 2024.
https://universidadeuropea.com/blog/pro gramacion-orientadaobjetos/#:~:text=En%20la%20actualidad%20existe n%20diferentes,%2C%20Smalltalk%2C%20PHP%20 o%20Python.
1 3