Anda di halaman 1dari 2

Diferencias con la programacin estructurada y la programacin orientada a objetos Aunque la programacin estructurada (a veces llamada procedural o procedimental) condujo

a mejoras de la tcnica de programacin secuencial, los mtodos modernos de diseo de software orientado a objetos incluyen mejoras entre las que estn el uso de los patrones de diseo, diseo por contrato, y lenguajes de modelado (ej: UML). Las principales diferencias entre la programacin estructurada y la orientada a objetos son: La programacin orientada a objetos es ms moderna, es una evolucin de la programacin estructurada que plasma en el diseo de una familia de lenguajes conceptos que existan previamente con algunos nuevos. La programacin orientada a objetos se basa en lenguajes que soportan sintctica y semnticamente la unin entre los tipos abstractos de datos y sus operaciones (a esta unin se la suele llamar clase). La programacin orientada a objetos incorpora en su entorno de ejecucin mecanismos tales como el polimorfismo y el envo de mensajes entre objetos. Errneamente se le adjudica a la programacin estructurada clsica ciertos problemas como si fueran inherentes a la misma. Esos problemas fueron hacindose cada vez ms graves y antes de la programacin orientada a objetos diversos autores (de los que podemos destacar a Yourdon) encontraron soluciones basadas en aplicar estrictas metodologas de trabajo. De esa poca son los conceptos de cohesin y acoplamiento. De esos problemas se destacan los siguientes: Modelo mental anmalo. Nuestra imagen del mundo se apoya en los seres, a los que asignamos nombres sustantivos, mientras la programacin clsica se basa en el comportamiento, representado usualmente por verbos. Es difcil modificar y extender los programas, pues suele haber datos compartidos por varios subprogramas, que introducen interacciones ocultas entre ellos. Es difcil mantener los programas. Casi todos los sistemas informticos grandes tienen errores ocultos, que no surgen a la luz hasta despus de muchas horas de funcionamiento. Es difcil reutilizar los programas. Es prcticamente imposible aprovechar en una aplicacin nueva las subrutinas que se disearon para otra. Es compleja la coordinacin y organizacin entre programadores para la creacin de aplicaciones de media y gran envergadura. En la programacin orientada a objetos pura no deben utilizarse llamadas de subrutinas, nicamente mensajes. Por ello, a veces recibe el nombre de programacin sin CALL, igual que la programacin

estructurada se llama tambin programacin sin GOTO. Sin embargo, no todos los lenguajes orientados a objetos prohben la instruccin CALL (o su equivalente), permitiendo realizar programacin hbrida, imperativa y orientada a objetos a la vez.

Anda mungkin juga menyukai