PE vs POO
Programación Estructurada
es un tipo de programación imperativa, donde las declaraciones se ponen en procedimientos, que se pueden volver a llamar cuando sea necesario. C usa programación procedimental.
Ventajas de la programación estructurada
*Los programas son más fáciles de entender, pueden ser leídos de forma secuencial y no hay necesidad de hacer engorrosos seguimientos en saltos de líneas (GOTO) dentro de los bloques de código para intentar entender la lógica.
*La estructura de los programas es clara, puesto que las instrucciones están más ligadas o relacionadas entre sí.
*Reducción del esfuerzo en las pruebas y depuración. El seguimiento de los fallos o errores del programa ("debugging") se facilita debido a su estructura más sencilla y comprensible, por lo que los errores se pueden detectar y corregir más fácilmente.
*Reducción de los costos de mantenimiento. Análogamente a la depuración, durante la fase de mantenimiento, modificar o extender los programas resulta más fácil.
*Los programas son más sencillos y más rápidos de confeccionar.
*Se incrementa el rendimiento de los programadores, comparado con la forma anterior que utiliza GOTO.
Clase
Objetos
Evento
Programación Orientada a Objetos
Trata los datos como objetos con atributos y métodos que pueden aplicarse a estos objetos y también ser heredados por otros objetos. Java es un gran ejemplo de un lenguaje que emplea este concepto. Pero Java es un lenguaje multi-paradigma y también utiliza algunos conceptos familiares para la Programación Procedimental.
Ventajas POO
Reusabilidad. Cuando hemos diseñado adecuadamente las clases, se pueden usar en distintas partes del programa y en numerosos proyectos.
Mantenibilidad. Debido a las sencillez para abstraer el problema, los programas orientados a objetos son más sencillos de leer y comprender, pues nos permiten ocultar detalles de implementación dejando visibles sólo aquellos detalles más relevantes.
Modificabilidad. La facilidad de añadir, suprimir o modificar nuevos objetos nos permite hacer modificaciones de una forma muy sencilla.
Fiabilidad. Al dividir el problema en partes más pequeñas podemos probarlas de manera independiente y aislar mucho más fácilmente los posibles errores que puedan surgir.
Clase
Herencia
Objetos
Metodo o evento
Conclusión
La diferencia es que la programacion
estructurada se enfoca a las clases mas
simples y la programación orienta a objetos
se enfoca a clases con mayor elaboración
pero sus componentes son los mismos
Entre los principales beneficios de la programación orientada a objetos se encuentran una mejora en la fiabilidad y una mayor productividad para el programador. Asimismo, también proporciona la oportunidad de modelar aplicaciones de forma más natural y la estructura jerárquica de la programación orientada a objetos hace que los programas sean más fáciles de diseñar y comprender.