lunes, 11 de mayo de 2020

Introducción a la programación orientada a objetos

A finales de los 60' se creó la programación orientada a objetos.
En su origen el desarrollo y mantenimiento de proyectos software presentaron evidentes problemas de complejidad costo y eficiencia. Uno de ellos era la necesidad de adaptar el software, a nuevos requisitos imposibles de haber sido planificados.
 La orientación a objetos brinda métodos de experimentación y no exige la planificación de un proyecto por completo.
En 1967 Kristen nygaard y Ole-Johan dahl de la Universidad de oslo se dedicaban a desarrollar sistemas informáticos que realizaban simulaciones de sistemas mecánicos, en este desarrollo se encontraban dos dificultades, por un lado los programas eran muy complejos y por otro tenían que ser modificados constantemente. La solución a este problema fue diseñar el programa paralelamente el objeto físico.
Es decir si el objeto físico tenía un número x de componentes, el programa también tendría x módulos, uno por cada pieza. Dividir el programa de esta manera hacia que hubiera total correspondencia entre el sistema físico y el sistema informático.
Para llevar a la práctica Estas ideas crearon un lenguaje llamado simula 67.
Este enfoque resolvía los problemas planteados: ofrecía una forma natural de un programa muy complejo Y en segundo lugar El mantenimiento pasaba a ser controlable.
El primer punto es obvio y el segundo punto también se resuelve. Es decir que en cada iteración de simulación el analista quiere cambiar o bien piezas enteras o bien el comportamiento alguna pieza en ambos casos la localización de la de los cambios está perfectamente Clara y su alcance se reduce un componente siempre y cuando la interfaz del mismo no cambie.
Con simula 67 se producen por primera vez los conceptos de clases, objetos, herencia,procedimientos virtuales y referencias a objetos.
En esta época al 60 era el lenguaje de moda y con el más extendido en aplicaciones empresariales por lo que simula 67 pasó inadvertido para gran parte de los programadores.
En la actualidad se conoce simplemente como simula
Y contrariamente a lo que podría pensarse Todavía está en uso.

“Evolución de la programación orientada a objetos”
Programación Estructurada:
A fines de los años 1970, Böhm-Jacopini inventó el teorema del programa estructurado. Este demuestra que los programas pueden escribirse utilizando tres instrucciones de control:
·         Secuencia
·         Instrucción condicional
·         Interacción con condición inicial
Solo con estas tres estructuras se puede escribir todo programa y aplicación. Pueden tener mayor repertorio de estructura, pero estas pueden estar construidas mediante la tres básicas.
Este nuevo sistema, intenta solventar los productos del anterior y logra solucionar estos aspectos:
·         Distinta abstracción del mundo
·         Dificultad en modificación y actualización
·         Dificultad en el mantenimiento
·         Dificultad en reutilización
A la hora de afrontar la construcción de grandes aplicaciones, estos defectos pueden provocar que muchos proyectos sean inabordables. Es por esto que surgió este modelo, para erradicar los problemas expuestos.

Programación Orientada a objetivos:
Este, hace un cambio de concepción del desarrollo de software, introduciendo un mayor nivel de abstracción que permite mejorar las características del código final. Las aportaciones son:
·         Conceptos de clase y objeto, que proporcionan una abstracción del mundo centrada en los seres y no en los verbos.
·         Los datos aparecen encapsulados dentro del concepto de clase. Donde se facilita el mantenimiento y la evolución de los sistemas, al desaparecer las dependencias entre distintas partes del sistema
·         Mediante conceptos como la composición, herencia y polimorfismo se consigue simplificar el desarrollo del sistema.

No hay comentarios.:

Publicar un comentario

Introducción a la programación orientada a objetos

A finales de los 60' se creó la programación orientada a objetos. En su origen el desarrollo y mantenimiento de proyectos software pr...