Este documento compara los paradigmas de programación estructurada y orientada a objetos. Explica que el paradigma estructurado es más sencillo pero menos escalable para programas grandes, mientras que el paradigma orientado a objetos es más complejo pero más potente y escalable al permitir la reutilización de código a través de herencia, polimorfismo y encapsulamiento. También discute que si bien el paradigma orientado a objetos puede conllevar algunas desventajas, presenta grandes ventajas para resolver problemas que involucren un número considerable de
2. DIFERENCIAS ENTRE LOS PARADIGMAS DE PROGRAMACIÓN
(ESTRUCTURADA VS ORIENTADO A OBJETOS)
Paradigma Estructurado Paradigma Orientado a Objetos
Es sencilla de leer, porque consiste en una secuencia de instrucciones seguidas. Es más compleja de leer, ya que es necesaria la comprensión de los objetos y sus enlaces,
atributos y métodos, con características como la herencia, polimorfismo, encapsulación y
recursividad.
Se escribe secuencialmente y se utilizan funciones. El código fuente de los objetos e escribe de forma independiente, lo que hace que el código
sea fácil de mantener.
La reutilización de código es complicada. El uso de objetos y métodos internos, además de interfaces hace posible una reutilización de
código de forma sencilla.
Es eficiente en programas pequeños. Es sumamente eficiente en programas grandes.
Permite resolver problemas mediante secuencias de pasos. Resuelve un problema mediante la interacción de objetos, los cuales presentan un
comportamiento individual que permite la comunicación entre ellos, facilitando la
interpretación de un proceso mediante acciones y reacciones de los objetos.
Es orientado a acciones. Presenta encapsulación (atributos y métodos) en objetos que están relacionados entre sí.
Utiliza estructuras de datos, rutinas y subrutinas. Utiliza Objetos para la programación.
3. DESVENTAJA ASOCIADA DE LA PROGRAMACIÓN ESTRUCTURADA
PREMISA
En la programación estructurada observamos
algunas ventajas como un control más efectivo sobre
el flujo de la ejecución del programa y la facilidad de
comprender el código cuando se analiza.
RESPUESTA
Para continuar con la lectura “fácil” del código,
muchas veces se opta por la copia de líneas de
código; el control efectivo del flujo del programa,
funciona cuando son programas pequeños pero al
momento que se incrementa el tamaño de la
solución, se hace más complejo y la comprensión ya
no es sencilla, de hecho es más sencillo el paradigma
orientado a objetos porque permite reflejar el
procedimiento en función de objetos del mundo
real, más allá de sólo las acciones que se van a
realizar en el procedimiento.
4. VENTAJA ASOCIADA A LA PROGRAMACIÓN ORIENTADA A OBJETOS
PREMISA
En la programación orientada a objetos, algunos detalles
producen alteraciones en la programación, como por ejemplo,
el fortalecimiento de este paradigma puede conducir a la
pérdida de algunas características útiles como los lenguajes
funcionales.
RESPUESTA
Hablar de una ventaja asociada, radica en la gran utilidad del
paradigma orientado a objetos, cuando hablamos de soluciones
con un número considerable de entidades, en las cuales
podremos incluso mediante el uso de frameworks autogenerar
el código necesario para aplicar patrones que nos permiten la
manipulación uniforme de este procedimiento, es decir, que
podremos de forma uniforme manipular datos en una base de
datos mediante el mismo paradigma, utilizando clases padre
genéricas y clases hijas especializadas para cada entidad, cosa
que no puede hacerse en un paradigma estructurado. De esta
forma la desventaja que podría significar el uso de clases para
entidades pequeñas puede significar una gran ventaja sobre un
modelo de negocios con gran cantidad de entidades, las cuales
podremos unir en consultas complejas y mediante su
abstracción generar consultas transparentes de datos hacia los
clientes de los objetos en mención.