La calidad del software

Paradigmas de programación:
Paradigma imperativo -Paradigma declarativo-Programación orientada a objetos-Programación reactiva
Bibliografía
Canelo, M. M. (09 de 06 de 2020). profile. Obtenido de https://profile.es/blog/que-son-los-paradigmas-de-programacion/
web, D. (24 de 02 de 20). ionos. Obtenido de https://www.ionos.es/digitalguide/paginas-web/desarrollo-web/programacion-imperativa/


La creación de este blog es recocer que tan importante es la calidad es nuestro software y conocer los paradigmas que podemos utilizar para las estructuras de nuestros proyectos. Siempre hay que llevar acabo una serie de pasos para que la estructura de nuestro software sea compacta y lograr un software de buena calidad sin errores que nos den perdidas monetarias.


 Paradigmas de la programación y lenguajes de la programación.

¿Qué son los paradigmas de programación?

Los paradigmas de programación son modelos para resolver problemas comunes de nuestro código estructurado. Es una guía que agiliza nuestro desarrollo y evita la reinvención de la rueda.

Los lenguajes de programación adoptan uno o varios paradigmas en función de las ordenes que los lenguajes permiten implementar.

Los paradigmas de programación son los siguientes:

Paradigma imperativo

Es un paradigma de programación antiguo. De acuerdo a este paradigma, un programa consiste en una secuencia de instrucciones definidas en un equipo. Sus lenguajes de programación necesitan mucha línea de textos para ser comprensibles y que sea muy parecido a la programación declarativa.

Otros enfoques subordinados al paradigma de programación imperativa son:

Programación estructurada.

Programación procedimental.

Programación modular.

Programación estructurada

Está orientada a mejorar la calidad, claridad y tiempo de desarrollo.

Programación procedimental

Agrupa el código como su nombre lo indica en procedimientos, estos son un tipo de funciones o subrutinas a través de un sistema de pilas.

Programación modular

Los lenguajes de programación imperativa se distinguen de los lenguajes declarativos en un aspecto básico: la programación imperativa se centra en el “cómo”, y la declarativa, en el “qué”.

Estos lenguajes son comparativamente más fáciles de aprender, ya que el código se lee como unas instrucciones paso a paso. Por esta razón, normalmente los programadores empiezan su formación con el aprendizaje de un lenguaje imperativo.

 Los lenguajes de programación imperativa más conocidos son:

Fortran, Java, Pascal, ALGOL, C, C#, C++, Ensambladores, BASIC, COBOL, PythonRubyativa.

 

 

 

Paradigma declarativo

Este paradigma no necesita definir algoritmo, solo se limita a describir el problema, utilizando un principio de razonamiento lógico.

Programación declarativa:

Lo que destaca de este lenguaje es que siempre describe el resultado final esperado. Esto funciona si las especificaciones del resultado estén definidas y exista un procedimiento adecuado.

Los lenguajes de programación declarativa más conocidos son:

Prolog

Lisp

Haskell

Miranda

Erlang

SQL (en un sentido amplio)

 

Este paradigma se divide en dos:

Programación Lógica.

Programación funcional.

Un punto fuerte de la programación declarativa es su capacidad para describir problemas de forma más corta y precisa que el lenguaje imperativo.

Si se tiene que crear una lista con nombres, con la programación declarativa se puede describir en PHP con solo una línea de código, como vemos aquí abajo, mientras que el procedimiento imperativo necesita cinco líneas.

Programación orientada a objetos

En este modelo de paradigma se construyen modelos de objetos que representan elementos (objetos) del problema a resolver, que tienen características y funciones. Permite separar los diferentes componentes de un programa, simplificando así su creación, depuración y posteriores mejoras. La programación orientada a objetos disminuye los errores y promociona la reutilización del código. Es una manera especial de programar, que se acerca de alguna manera a cómo expresaríamos las cosas en la vida real.

 

Podemos definir un objeto como una estructura abstracta que, de manera más fiable, describe un posible objeto del mundo real y su relación con el resto del mundo que lo rodea a través de interfaces.  Ejemplos de lenguajes de programación orientados a objetos serían Java, Python o C#.

 

La programación orientada a objetos se sirve de diferentes conceptos como:

 

Abstracción de datos

Encapsulación

Eventos

Modularidad

Herencia

Polimorfismo

 

Programación reactiva

Es un paradigma que se basa en escuchar lo que emite un evento o cambios en el flujo de datos, en donde los objetos reaccionan a los valores que reciben de dicho cambio. Las librerías más conocidas son Project Reactor, y RxJava. React/Angular usan RxJs para hacer uso de la programación reactiva.

 

 Calidad en el desarrollo de software

La importancia radica en entregar principalmente productos con la calidad esperada para a futuro no tener riesgos. El software puede tener fallos que pueden ser responsables de grandes pérdidas de dinero para una empresa. A tener claro que entre más rápido se detecten los errores podemos reducir las consecuencias de este.

Conocer los indicadores de calidad y el desempeño del nuestro software, es indispensable para brindar el soporte fijo. El objetivo, es que se logre soportar todos los requerimientos del usuario sin presentar falla alguna.

Debemos tener en cuenta que al final de la construcción de nuestro software, es inminente realizar un informe donde se valida cada uno de los requerimientos, y verificar si estos se cumplen.




Sebastian Felipe Saavedra
Conclusión:
La forma de hacer las cosas cambia al pasar del tiempo y aún más rápido en la informática, además los lenguajes de programación se adaptan cada día hacer las cosas distintas.
A la hora de programar estos paradigmas se combinan ya que varios de estos lenguajes permiten la implementación y la combinación de la estructura de estas.
 


 

Comentarios