Está en la página 1de 4

Actividad 1

Diferencias entre programación estructurada y POO

Diferencias entre programación estructurada y programación orientada a


objetos.

La programación estructurada nació como solución a los problemas que


presentaba la programación no estructurada, la cual se empleó durante mucho
tiempo antes de la invención de la programación estructurada.
Un programa no estructurado es un programa procedimental: las instrucciones se
ejecutan en el mismo orden en que han sido escritas. Sin embargo, este tipo de
programación emplea la instrucción "goto". Una instrucción "goto" permite pasar el
control a cualquier otra parte del programa. Cuando se ejecuta una instrucción
"goto" la secuencia de ejecución del programa continúa a partir de la instrucción

La programación orientada a objetos o POO (OOP según sus siglas en inglés) es


un paradigma de programación que usa objetos y sus interacciones, para diseñar
aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo
herencia, abstracción, polimorfismo 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

diferencias entre la programación orientada a objetos y la


estructurada, incluye como categorías de análisis las características,
ventajas y desventajas de ambos tipos de programación.

La programación orientada a objetos es más moderna, es una evolución de la


programación estructurada que plasma en el diseño de una familia de lenguajes
conceptos que existían previamente con algunos nuevos. 

· La programación orientada a objetos se basa en lenguajes que soportan


sintáctica y semánticamente la unión entre los tipos abstractos de datos y sus
operaciones (a esta unión se la suele llamar clase). 

· La programación orientada a objetos incorpora en su entorno de ejecución


mecanismos tales como el polimorfismo y el envío de mensajes entre objetos. 

Erróneamente se le adjudica a la programación estructurada clásica ciertos


problemas como si fueran inherentes a la misma. Esos problemas fueron
haciéndose cada vez más graves y antes de la programación orientada a objetos
diversos autores (de los que podemos destacar a Yourdon) encontraron
soluciones basadas en aplicar estrictas metodologías de trabajo. De esa época
son los conceptos de cohesión y acoplamiento. De esos problemas se destacan
los siguientes:

· Modelo mental anómalo. Nuestra imagen del mundo se apoya en los seres, a los
que asignamos nombres sustantivos, mientras la programación clásica se basa en
el comportamiento, representado usualmente por verbos. 

· Es difícil modificar y extender los programas, pues suele haber datos


compartidos por varios subprogramas, que introducen interacciones ocultas entre
ellos. 

· Es difícil mantener los programas. Casi todos los sistemas informáticos grandes
tienen errores ocultos, que no surgen a la luz hasta después de muchas horas de
funcionamiento. 

· Es difícil reutilizar los programas. Es prácticamente imposible aprovechar en una


aplicación nueva las subrutinas que se diseñaron para otra. 

· Es compleja la coordinación y organización entre programadores para la creación


de aplicaciones de media y gran envergadura. 

En la programación orientada a objetos pura no deben utilizarse llamadas de


subrutinas, únicamente mensajes.

Organiza la información en una herramienta de tu elección: tabla


comparativa, mapa, esquema, cuadro sinóptico, etcétera.

PROGRAMACION ESTRUCTURADA

VENTAJAS

Datos separados del Diseño.


Reutilización del código.
Entendimiento del programa en el mundo real.
Fácil entendimiento de la lógica del programa.
Código simple (aunque cueste acostumbrarse).
Fácil documentación y diseño del programa.
Dinamismo en el manejo de los datos.
Facilidad en el mantenimiento y expansión.

DESVENTAJAS

Complejidad para adaptarse.


Mayor cantidad de código (aunque a la larga no, por la reutilización).

PROGRAMACION ORIENTADA A OBJETO

VENTAJAS

Reusabilidad.
Extensibilidad.
Facilidad de mantenimiento.
Portabilidad.
Rapidez de Desarrollo.
Más fáciles de entender porque se utilizan abstracciones más cercanas a la
realidad.

DESVENTAJAS

Curvas de aprendizaje largas


Dificultad en la abstracción
Limitaciones para el programador.
Tamaño excesivo en las aplicaciones resultantes.
Cuando se heredan clases a partir de clases existentes se heredan de forma
implícita todos los miembros de dicha clase aun cuando no todos se necesiten, lo
que produce aplicaciones muy grandes que no siempre encajan en los sistemas
con los que se disponga.
Velocidad de ejecución (cómo resultado del punto anterior)
Integra tus conclusiones indicando un ejemplo de desarrollo de aplicación
de software mediante de uno de los paradigmas de programación, sus
diferencias, ventajas y desventajas.

El paradigma orientado a objetos (OO) define los programas en términos de


comunidades de objetos. Los objetos con características comunes se agrupan en
clases (un concepto similar al de tipo abstracto de dato (TAD)). Los objetos son
entidades que combinan un estado (es decir, datos) y un comportamiento (esto es,
procedimientos o métodos). Estos objetos se comunican entre ellos para realizar
tareas. Es en este modo de ver un programa donde este paradigma difiere del
paradigma imperativo o estructurado, en los que los datos y los métodos están
separados y sin relación. El paradigma OO surge para solventar los problemas
que planteaban otros paradigmas, como el imperativo, con el objeto de elaborar
programas y módulos más fáciles de escribir, mantener y reutilizar. Entre los
lenguajes que soportan el paradigma OO están Smalltalk, C++, Delphi (Object
Pascal), Java y C#.

Fuente:
http://www.alegsa.com.ar/Diccionario/C/12117.php
http://ingieneriadelsoftware2.blogspot.mx/2012/11/programacion-orientada-objeto-
y.html
http://bitacora330b.blogspot.mx/2012/11/cuadro-comparativo-de-programacion.html
http://ecampus.fca.unam.mx/ebook/imprimibles/informatica/programacion/Unidad_3.pd
f
http://aprendeenlinea.udea.edu.co/lms/men_udea/mod/page/view.php?
id=19537&inpopup=1