Fundamentos de la Metodología Orientada a Objeto

Page 1

ANÁLISIS Y DISEÑO DE SISTEMAS III FUNDAMENTOS DE LA METODOLOGÍA ORIENTADA A OBJETO STEPHANÍA SALMERÓN 30.542.120

3

Concepto y principios básicos de la metodología orientada a objetos.

5 7 8

Ventajas y desventajas de la metodología orientada a objetos.

5 6

Aplicaciones del análisis y diseño orientado a objeto.

Descripción de los lenguajes de programación que soportan la programación orientada a objeto.

ÍNDICE REVISTA REVISTA
14
Referencias
Java C++ C# PHP Phyton 9 10 11 12 13 Ventajas Desventajas
9 Lenguajes de programación

Y PRINCIPIOS BÁSICOS

DE LA METODOLOGÍA ORIENTADA A OBJETOS

Debido a su capacidad para producir aplicaciones más robustas, flexibles y mantenibles, el paradigma POO ha experimentado un crecimiento significativo en popularidad en los últimos años. Este enfoque del desarrollo de software se basa en la noción de que los programas pueden estructurarse como una red de objetos interconectados, cada uno con su propio conjunto de información y funcionalidad.

Los paradigmas de programación, o modelos o estilos que nos dan instrucciones sobre cómo usarlos, incluyen la programación orientada a objetos (POO). La idea de clases y objetos sirve como base. Mediante el uso de planos de código (clases) simples y reutilizables, este tipo de programación permite la creación de instancias únicas de objetos.

Alolargodelahistoriahan aparecidodiferentesparadigmas deprogramación.Lalógicamás quelosdatosfueelenfoque principaldeloslenguajes procedimentalesosecuenciales comoCOBOL,BasicoC.Otrosmás modernos,comoJava,C++y Python,utilizanparadigmaspara definirprogramas,siendola ProgramaciónOrientadaa Objetoslamáspopular.

Al reunir bits de datos y comportamientos asociados en una plantilla conocida como clase, un programador crea un programa de software. Luego, la plantilla de clase se utiliza para crear objetos únicos. Hacer que varios objetos interactúen entre sí da como resultado un programa más grande que luego se ejecuta para completar el programa de software.

CONCEPTO
3

PRINCIPIOS BÁSICOS DE LA METODOLOGÍA ORIENTADA A OBJETOS

Para ser un buen desarrollador se deben comprender las siguientes ideas fundamentales: abstracción, encapsulación, herencia y polimorfismo. Aunque estas ideas no son exclusivas de la orientación a objetos, tienen algunas particularidades desde este punto de vista.

Encapsulación: dentro de un límite o clase predeterminada, la implementación y el estado de cada objeto se mantienen en privado. Hay una serie de métodos o funciones públicas que otros objetos pueden llamar pero no tienen acceso a esta clase ni el poder de modificarla. Con esta función de ocultación de datos, el programa es más seguro y se evita la corrupción accidental de datos.

Abstracción: los objetos ocultan cualquier código de implementación innecesario y solo exponen los mecanismos internos que son necesarios para el uso de otros objetos. A medida que pasa el tiempo, esta idea simplifica a los desarrolladores realizar ajustes y adiciones.

Herencia: los desarrolladores pueden reutilizar la lógica común y al mismo tiempo mantener una jerarquía única mediante la asignación de relaciones y subclases entre objetos.

Esta característica de la programación orientada a objetos acelera el desarrollo y garantiza una mayor precisión al tiempo que requiere un análisis de datos más exhaustivo.

Polimorfismo: dependiendo de la situación, los objetos pueden adoptar diferentes formas.

La necesidad de código duplicado disminuirá porque el programa determinará qué significado o uso se requiere para cada ejecución de ese objeto.

4

Ventajas

Reutilización de software antiguo: cuando las clases se crean correctamente, se pueden aplicar a varios proyectos y secciones del programa.

Se ahorra tiempo al utilizar la técnica de herencia porque le permite crear una clase genérica y luego especificar las subclases que heredarán sus características, eliminando la necesidad de reescribir esas funciones. Además, todas las subclases adoptarán instantáneamente un cambio que realice en la clase.

Mayor modificabilidad: otro beneficio de la programación orientada a objetos es que simplifica agregar, modificar o eliminar nuevos objetos o funciones para actualizar programas, lo que ayuda a los programadores a ahorrar tiempo y esfuerzo.

Facilidad de identificar errores de código: en los lenguajes de programación orientados a objetos no es necesario revisar cada línea de código para encontrar errores. La encapsulación hace que los objetos sean autónomos, lo que facilita abstraer problemas e identificar la fuente de errores cuando algo no funciona.

Modularidad: uno de los aspectos más intrigantes de la programación orientada a objetos es la modularidad, que permite a un equipo trabajar en varios objetos simultáneamente y al mismo tiempo reduce la probabilidad de que un programador duplique la funcionalidad de otro.

El trabajo modular también permite dividir los problemas en partes más manejables que pueden someterse a pruebas independientes.

El polimorfismo proporciona flexibilidad: una única función puede adaptarse para adaptarse a cualquier clase en la que se encuentre gracias al polimorfismo de la programación orientada a objetos. Puede ahorrar tiempo programando de esta manera y aumentar su versatilidad.

V E N T A J A S Y D E S V E N T A J A S D E L A M E T O D O L O G Í A O R I E N T A D A A O B J E T O S
5

Desventajas

Limitaciones del programador: Es posible que el programador todavía utilice el paradigma estructurado porque desconoce ciertos aspectos del paradigma.

Los problemas se pueden resolver de diversas formas. Esto puede dar lugar a que surjan varias perspectivas sobre la solución sugerida.

Para determinar la solución propuesta, se necesita una amplia documentación.

V E N T A J A S Y D E S V E N T A J A S D E L A M E T O D O L O G Í A O R I E N T A D A A O B J E T O S
6

Diseño orientado a objetos (DOO)

Un componente del desarrollo de software llamado diseño orientado a objetos (DOO) tiene como objetivo brindar a los programadores y desarrolladores la capacidad de planificar el código considerando objetos y responsabilidades en lugar de procedimientos.

Un componente del desarrollo de software llamado diseño orientado a objetos (DOO) tiene como objetivo brindar a los programadores y desarrolladores la capacidad de planificar el código considerando objetos y responsabilidades en lugar de procedimientos.

Diseño de software

El diseño de software es una actividad que tiene como objetivo crear soluciones que satisfagan directamente las necesidades del cliente. Pero para que eso suceda, se deben completar una serie de pasos en el proceso de diseño del software, que incluyen:

Comprender el problema. La búsqueda de posibles soluciones, que pueden ser una o varias. La explicación de las abstracciones subyacentes de la solución.

Repitiendo el proceso para cada una de las abstracciones identificadas, hasta el punto en que el diseño ya esté expresado de manera simple. Los diseños deben representarse como un grafo dirigido, el cual debe estar conformado por entidades con diversos atributos que interactúan entre sí en relaciones.

El objetivo del diseño orientado a objetos (OOD), por otro lado, es hacer que el problema tal como existe en el mundo real corresponda al alcance del software que sirve como solución.

Al producir un diseño que conecta objetos de datos y sus operaciones de procesamiento asociadas, se diferencia de otras metodologías de diseño al modularizar tanto los datos como el procesamiento en sí en lugar de aislarlos.

Aplicaciones

La ingeniería de software es la práctica del análisis y diseño orientado a objetos. El foco de este análisis es el potencial de interacción entre una colección de objetos. El desarrollo y la estabilidad del sistema se pueden mejorar mediante la ingeniería de software mediante el uso de un buen análisis y diseño.

La técnica de análisis genera una colección de varios modelos que coinciden en una notación particular, como el Lenguaje Unificado de Modelado (UML), que es el lenguaje común utilizado para el análisis y diseño orientado a objetos.

Más allá de lo ya mencionado, algunas de las principales aplicaciones más comunes del ADO son:

Procesamiento de imágenes: utilice inteligencia artificial, agrupación de objetos y reconocimiento de patrones para analizar imágenes.

Aplicaciones en los negocios: ADO se utiliza frecuentemente en el análisis y diseño de procesos de negocios, incluido el trabajo en equipo y la optimización de procesos.

Modelos de negocio: ADO se puede utilizar para desarrollar y diseñar modelos de negocio, como los empleados en los sectores manufacturero o logístico.

A P L I C A C I O N E S D E L A N Á L I S I S Y D I S E Ñ O O R I E N T A D O A O B J E T O
7

Los lenguajes de programación orientados a objetos ven los programas de computadora como colecciones de objetos que cooperan para realizar tareas. conocer las entidades que contienen datos como un objeto. haciendo posible que los programas se reutilicen, mantengan y escriban más fácilmente.

Los objetos están completos con todos los detalles (atributos) que los diferencian de otros de una clase diferente. El estado de los objetos se altera cuando objetos de la misma o diferente clase interactúan a través de métodos.

En consecuencia, la información y los métodos utilizados para tratar los objetos no se separan, sino que se tratan como unidades indivisibles.

Los lenguajes creados por los profesores noruegos Ole-Johan Dahl y Kristen Nygaard son donde surgieron por primera vez los lenguajes de programación orientados a objetos. Simula 67, un lenguaje diseñado para crear simulaciones de barcos, era este lenguaje de programación orientado a objetos.

La creación y modificación de estos objetos se puede realizar instantáneamente en lenguajes dinámicos utilizados para la programación orientada a objetos. La popularidad de las interfaces gráficas de usuario, para las cuales los lenguajes de programación orientados a objetos son particularmente adecuados, hizo que la programación orientada a objetos (POO) despegara a mediados de los años 1980.

D E S C R I P C I Ó N D E L O S L E N G U A J E S D E P R O G R A M A C I Ó N Q U E S O P O R T A N L A P R O G R A M A C I Ó N O R I E N T A D A A O B J E T O
8

Java es uno de los lenguajes de programación orientados a objetos más importantes de la actualidad. Además de un lenguaje de programación, Java es una plataforma. Es decir que se requiere instalar una máquina virtual Java para poder correr las aplicaciones creadas con el lenguaje.

Fue lanzada al mercado por Sun Microsystems en 1995, y al día de hoy tiene una relevancia más que importante. Este lenguaje de programación orientado a objetos está presente en muchas implementaciones, tanto empotrado en dispositivos como en aplicaciones para celulares y computadoras.

Las aplicaciones web se crean frecuentemente utilizando el lenguaje de programación Java. Con millones de aplicaciones Java en uso hoy en día, ha sido una opción muy apreciada entre los desarrolladores durante más de 20 años.

Java es un lenguaje multiplataforma, centrado en la red y orientado a objetos que puede utilizarse como plataforma en sí mismo. Es un lenguaje de programación rápido, seguro y confiable para crear cualquier cosa, desde servidores y aplicaciones de big data hasta aplicaciones móviles y software empresarial.

L E N G U A J E S D E P R O G R M A C I Ó N JAVA 9

El lenguaje de programación C++ fue creado como resultado de la extensión del lenguaje C para permitir la manipulación de objetos. A pesar de ser un lenguaje con una larga trayectoria, es uno de los lenguajes de programación más demandados por su inmensa potencia.

A mediados de los años 80 lo creó el arquitecto danés Bjarne Stroustrup. El objetivo era ampliar el lenguaje de programación C, que en aquel momento era muy popular, para incluir las herramientas necesarias para manipular objetos. Como resultado, se hace referencia a C como un lenguaje de programación multiparadigma e incluye tanto el paradigma estructurado como el orientado a objetos.

Posteriormente, sus creadores agregaron opciones para programación genérica, potenciando su soporte para programación orientada a objetos y programación estructurada. Debido a esto, C se considera un lenguaje híbrido y multiparadigma.

L E N G U A J E S D E P R O G R M A C I Ó N C++
10

Microsoft creó el lenguaje de programación orientado a objetos C# con la intención de utilizarlo para crear una variedad de aplicaciones que se ejecuten en .NET Framework. Es un lenguaje fácil de aprender, productivo y con escritura segura. Con la ayuda de las numerosas innovaciones de C#, puede crear aplicaciones rápidamente conservando la expresividad y elegancia de los lenguajes de estilo C.

El modelo de objetos de la plataforma .NET, muy similar al de Java, es utilizado por la sintaxis, que deriva de C y C++ e incluye mejoras propias de otros lenguajes. Curiosamente, la escala musical sirvió de inspiración para el nombre de esta lengua.

El símbolo de “#”, que denota que es un semitono más alto, se utiliza en lugar de la letra C, que corresponde a la nota musical C. Infiriendo su superioridad sobre C y C++, C#.

L E N G U A J E S D E P R O G R M A C I Ó N
11
C#

Un lenguaje de programación de propósito general llamado PHP se utiliza principalmente en el entorno de desarrollo web. Normalmente, este lenguaje se utiliza para crear el lado del servidor o backend de un sitio web. Sin embargo, tiene muchas utilidades de interfaz. Es un lenguaje de programación popular en el mundo de la programación web debido a esto.

Como ya se mencionó, PHP es un lenguaje que se puede utilizar para incorporar nuevas funciones en HTML. Debido a que HTML es un lenguaje estático, el resultado son sitios web estáticos; No importa lo que haga el usuario, la página no cambiará porque el código es estático.

PHP modifica esto. Para vincular elementos específicos de una página con datos específicos, se utiliza este lenguaje. Como resultado, el contenido puede modificarse en respuesta a las solicitudes de los usuarios. Un servidor recibe esta solicitud y se pone en contacto con una base de datos para recuperar la información. Estos datos luego se devuelven a la página, que puede cambiar o no.

L E N G U A J E S D E P R O G R M A C I Ó N PHP 12

PYTHON

Técnicamente hablando, Python es un lenguaje de programación orientado a objetos de alto nivel con semántica dinámica que se utiliza principalmente para crear aplicaciones web e informáticas.

Debido a las opciones de escritura dinámica y enlace dinámico que proporciona, resulta muy atractivo en el campo del desarrollo rápido de aplicaciones (RAD).

Dado que Python sólo necesita una sintaxis especial que enfatice la legibilidad, es relativamente fácil de aprender. El código Python es mucho más fácil de leer y traducir para los desarrolladores que otros lenguajes.

Debido a que permite a los equipos colaborar sin barreras significativas de idioma y experimentación, esto reduce el costo de mantenimiento y desarrollo del programa.

Además, admite el uso de módulos y paquetes, lo que permite el diseño modular de programas y la reutilización de códigos en varios proyectos. Una vez desarrollado, un módulo o paquete se puede escalar para su uso en otros proyectos y es sencillo de importar o exportar.

L E N G U A J E S D E P R O G R M A C I Ó N
13

Aula. (2023, May 23). Python: qué es, para qué sirve y cómo se programa | Informática Industrial. aula21 | Formación para la Industria. https://www.cursosaula21.com/que-es-python/.

Juan de Assembler Institute. (2022, March 15). ¿Qué es PHP y para qué sirve? - Assembler Institute. Assembler Institute. https://assemblerinstitute.com/blog/que-es-php/

Marker, G. (2022). Lenguajes de programación orientada a objetos. Tecnología + Informática.

https://www.tecnologiainformatica.com/lenguajes-de-programacion-orientada-a-objetos/#PHP

C# | Lenguaje de programación moderno y de código abierto para .NET. (n.d.). Microsoft.

https://dotnet.microsoft.com/es-es/languages/csharp

Robledano, A. (2023, June 22). Qué es C++: Características y aplicaciones. OpenWebinars.net.

https://openwebinars.net/blog/que-es-cpp/

¿Qué es Java? - Explicación del lenguaje de programación Java - AWS. (n.d.). Amazon Web Services, Inc. https://aws.amazon.com/es/what-is/java/

Lugo, A. (2022). ¿Qué es el diseño orientado a objetos y cómo puede crear un gran software? INVID. https://invidgroup.com/es/que-es-el-disenoorientado-a-objetos-y-como-puede-crear-un-gran-software/

Carrasco, D. (2021, August 12). Ventajas y desventajas de la programacion orientada a objetos. prezi.com. https://prezi.com/p/1jju9xad4_fm/ventajasy-desventajas-de-la-programacion-orientada-a-objetos/

Canelo, M. M. (2023). ¿Qué es la Programación Orientada a Objetos? Profile Software Services. https://profile.es/blog/que-es-la-programacionorientada-a-objetos/#Que_es_la_Programacion_Orientada_a_Objetos

Orientación a objetos. principios básicos. (n.d.). SG Buzz. https://sg.com.mx/content/view/519

R E F E R E N C I A S
14

Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.