Paradigmas de Programacion |
El mundo del desarrollo de software, es un mundo tan amplio que tendríamos que publicar un sin numero de post y ni aun así, seria suficiente para descri9bir todo lo que abarca, afortunadamente, existen una serie de metodologías, que se aplican en las áreas donde concierne, hablamos de Los Paradigmas De Programación, que son una útil herramienta para el desarrollo correcto y eficaz de software, a continuación te hablamos de que se trata.
Los paradigmas de programación se dividen en dos grandes grupos: | ||||||||||||
Programación imperativa
Programación declarativa
Programación declarativa
Comenzaremos
describiendo el paradigma declarativo el cual se basa en que se logre
la finalidad del proceso demostrando con ello el resultado que se
espera obtener, sin embargo se deja de lado el “como” debe de
realizarse ese proceso, ya que este paradigma teoriza en “que”
hacer, más en no, “como” hacerlo, una de las ventajas de este
paradigma, es que el algoritmo resuelto previamente, queda sujeto a
nuevos cambios y mejoras a futuro, optimizando así, el anterior
producto obtenido.
Para planteártelo como ejemplo imagina un edificio, el paradigma declarativo te mostrará el diseño, te presenta pruebas tangibles del diseño y se podrá apreciar como será el edificio ya terminado, te brindará soluciones. Que lenguajes hacen uso de la programación declarativa:Entre estos están:
Entre muchos
otros, está es solo una pequeña lista de los lenguajes que utilizan
este estilo de programación, aunque en la práctica, se hace uso de
varios paradigmas a la vez, pudiendo hacer uso del paradigma
declarativo y de sus subniveles, la programación lógica y la
programación funcional y a su vez el paradigma imperativo con sus
subniveles procedimental, modular y estructural.
No obstante, el nivel de abstracción de la programación declarativa también ofrece algunas ventajas. Como por ejemplo que el soporte a la aplicación se desarrolla con independencia de la misma. Las averías en el funcionamiento diario se reducen al mínimo. Al mismo tiempo, la optimización resulta más fácil, ya que el algoritmo utilizado es suficientemente abierto como para acceder a nuevos métodos. La desventaja del uso del algoritmo es que, dependiendo de determinadas características de los casos concretos de aplicación, una solución típica de este tipo a menudo resulta poco eficiente. Este es un tipo de paradigma que se caracteriza por impedir la modificación del estado actual de los tipos de datos declarados, ya que estos, no puede ser modificados, pues, son datos inmutables Además, partir del desarrollo de la descripción del problema tiene la ventaja de que los equipos pueden esquematizar realmente rápido los modelos de soluciones A modo de resumen a continuación te presentamos algunas ventajas y desventajas de utilizar la programación declarativa.
Programación imperativa
En la programación imperativa, de la cual forman
parte muchos de los principales lenguajes de programación, como,
PHP, Java, C entre otros. Describe a modo de instrucciones,
condiciones y pasos que modifican el estado de un programa al
permitir la mutación de variables, todo esto con el objetivo de
llegar a un resultado, esta es la contraparte del ejemplo que te
pusimos anteriormente del edificio , en donde, mientras , el
paradigma imperativo te presentará la idea de cómo sería el
edificio, Te dará conceptos e ideas, instrucciones de lo que hay que
hacer, más no la solución para Hacerlo, dependiendo del punto de
vista de un desarrollador esto podría ser una ventaja o desventaja.
Declaraciones
La programación imperativa utiliza procedimientos,
rutinas o funciones para establecer mecanismos de control, que dejan
como resultado efectos secundarios y mutan el estado del programa
durante el proceso de ejecución
Estructuras de Control o ciclos
Una característica importante de la programación
imperativa, es el uso de bucles y estructuras de control como, loop,
for, while, do while para influir en el resultado de algún método o
función determinado.
Otra particularidad del paradigma imperativo es que
no existe garantía de que al ejecutar una función, procedimiento o
método, este no afecte algo que se haya definido dentro de estas.
|
Redes Sociales