Objetos: 1. paradigmas de programación

50 %
50 %
Information about Objetos: 1. paradigmas de programación

Published on May 23, 2017

Author: jeavilah

Source: slideshare.net

1. Paradigmas de Programación

2. ¿Qué es un paradigma de Programación? ● Debe ser concebido como un conjunto de métodos, reglas y generalizaciones utilizadas conjuntamente por aquellos entrenados para realizar el trabajo científico de investigación ● Los paradigmas de programación nos indican las diversas formas que, a lo largo de la evolución de los lenguajes, han sido aceptadas como estilos para programar y para resolver los problemas por medio de una computadora.[1]

3. Clasificación Existen muchas clasificaciones. Una muy conocida es la siguiente. [2]

4. 1 Programación Imperativa ● Describe la programación como una secuencia instrucciones o comandos que cambian el estado de un programa. ● Es descrito el cómo debe realizarse un cálculo y no el porqué. ● Las variables son celdas de memoria que contienen datos (o referencias), pueden ser modificadas, y representan el estado del programa. ● La sentencia principal es la asignación.

5. 1.1 Programación Estructurada ● La programación se divide en bloques (procedimientos y funciones) que pueden o no comunicarse entre sí. ● Además la programación se controla con secuencia, selección e iteración. ● Permite reutilizar código programado y otorga una mejor compresión de la programación.

6. 1.2 Programación Orientada a Objetos ● Está basado en la idea de encapsular estado y operaciones en objetos. En general, la programación se resuelve comunicando dichos objetos a través de mensajes (programación orientada a mensajes). ● Se puede incluir -aunque no formalmente- dentro de este paradigma, el paradigma basado en objetos, que además posee herencia y subtipos entre objetos.

7. 2 Programación Declarativa ● No se basa en el cómo se hace algo (cómo se logra un objetivo paso a paso), sino que describe (declara) cómo es algo. En otras palabras, se enfoca en describir las propiedades de la solución buscada, dejando indeterminado el algoritmo (conjunto de instrucciones) usado para encontrar esa solución. ● La solución es hallada mediante mecanismos internos de inferencia de información a partir de la descripción del problema en sí [3].

8. 2.1 Programación Funcional ● Este paradigma concibe a la computación como la evaluación de funciones matemáticas y evita declarar y cambiar datos. En otras palabras, hace hincapié en la aplicación de las funciones y composición entre ellas ● Permite resolver ciertos problemas de forma elegante y los lenguajes puramente funcionales evitan los efectos secundarios comunes en otro tipo de programaciones. ● El proceso de depuración resulta sencillo. ● Mayor facilidad para la ejecución concurrente.

9. … Funcional ● Hasta hace poco, la mayor parte del uso que se le daba a los lenguajes basados en el paradigma funcional era a nivel académico. ● Hoy en día Whatsapp, Facebook utilizan Erlang para algunos proyectos donde es fundamental la concurrencia.[4] ● Scheme fue usado por Apple para desarrollo de aplicaciones en las Macintosh. ● Redes sociales como Linkedin han movido el core de su aplicación a lenguajes funcionales como Scala.[5]

10. 2.2 Programación Lógica ● Se basa en la definición de reglas lógicas para luego, a través de un motor de inferencias lógicas, responder preguntas planteadas al sistema y así resolver los problemas. ● Dentro de las aplicaciones en las que puede utilizarse el paradigma lógico esta: ○ Sistemas expertos. ○ Demostración automática de teoremas. ○ Reconocimiento de lenguaje natural.

11. 3 Otros paradigmas Otros paradigmas y subparadigmas son: paradigma orientado al sujeto, paradigma reflectante, programación basada en reglas, paradigma basado en restricciones, programación basada en prototipos, paradigma orientado a aspectos, etc.

12. Multiparadigma Es posible que para la resolución de problemas sean necesarios el empleo de varios paradigmas a la vez. Inclusive, muchos lenguajes modernos avanzan hacia un modelo multiparadigma, donde se puede tener en una sola herramienta la posibilidad de emplearse en múltiples situaciones. De esta manera se establece una lealtad por parte de los programadores hacia un lenguaje específico.

13. Ejemplos Para determinar un algoritmo para obtener el Máximo Común Divisor

14. Fortran 777: Imperativo, procedural, no estructurado

15. Pascal: Imperativo, procedural, estructurado

16. Funcionales

17. Lógico

18. Bibliografía [1]http://www.iqcelaya.itc.mx/~vicente/Programacion/Paradigmas.pdf [2]http://labsys.frc.utn.edu.ar/ppr-2009/Unidad%20I%20-%20POO%20Avanzada/Apunte/Uni dad%20I%20-%20POO%20Avanzada.pdf [3]http://www.genbetadev.com/paradigmas-de-programacion/diferencias-entre-paradigmas -de-programacion [4]https://www.fastcompany.com/3026758/inside-erlang-the-rare-programming-language-b ehind-whatsapps-success [5]https://engineering.linkedin.com/play/play-framework-democratizing-functional-program ming-modern-web-programmers

Add a comment