Los tipos o técnicas de
programación son bastante variados, aunque puede
que muchos de los lectores sólo conozcan una metodología para realizar
programas. En la mayoría de los casos, las técnicas se centran en
programación modular y
programación estructurada, pero existen otros
tipos de
programación. Los explicaremos a lo largo del artículo.
Programación estructurada (PE)
La
programación estructurada esta compuesta por un conjunto de técnicas
que han ido evolucionando aumentando considerablemente la productividad
del programa reduciendo el tiempo de depuración y mantenimiento del
mismo.
Esta
programación estructurada utiliza un número limitado de estructuras
de control, reduciendo así considerablemente los errores.
Esta técnica incorpora:
- Diseño descendente (top-dow): el problema se descompone en etapas o estructuras jerárquicas.
- Recursos abstractos (simplicidad): consiste en descompones las
acciones complejas en otras más simples capaces de ser resueltas con
mayor facilidad.
- Estructuras básicas: existen tres tipos de estructuras básicas:
- Estructuras secuénciales: cada acción sigue a otra acción secuencialmente. La salida de una acción es la entrada de otra.
- Estructuras selectivas: en estas estructuras se evalúan las
condiciones y en función del resultado de las mismas se realizan unas
acciones u otras. Se utilizan expresiones lógicas.
- Estructuras repetitivas: son secuencias de instrucciones que se repiten un número determinado de veces.
Las principales ventajas de la programación estructurada son:
- Los programas son mas fáciles de entender
- Se reduce la complejidad de las pruebas
- Aumenta la productividad del programador
- Los programas queden mejor documentados internamente.
Un programa esta estructurado si posee un único punto de entrada y sólo
uno de salida, existen de "1 a n" caminos desde el principio hasta el
fin del programa y por último, que todas las instrucciones son
ejecutables sin que aparezcan bucles infinitos.
Programación modular
En la programación modular consta de varias secciones dividas de forma
que interactúan a través de llamadas a procedimientos, que integran el
programa en su totalidad.
En la programación modular, el programa principal coordina las llamadas a
los módulos secundarios y pasa los datos necesarios en forma de
parámetros.
A su vez cada modulo puede contener sus propios datos y llamar a otros módulos o funciones.
Programación orientada a objetos (POO)
Se trata de una técnica que aumenta considerablemente la velocidad de
desarrollo de los programas gracias a la reutilización de los objetos.
El elemento principal de la programación orientada a objetos es el objeto.
El objeto es un conjunto complejo de datos y programas que poseen estructura y forman parte de una organización.
Un objeto contiene varios datos bien estructurados y pueden ser visibles
o no dependiendo del programador y las acciones del programa en ese
momento.
El polimorfismo y la herencia son unas de sus principales
características y por ello dedicaremos más adelante un artículo
exclusivamente a tratar estos dos términos.
En DesarrolloWeb.com hemos publicado anteriormente una explicación de lo que es la
programación orientada a objetos.
Programación concurrente
Este tipo de programación se utiliza cuando tenemos que realizar varias acciones a la vez.
Se suele utilizar para controlar los accesos de usuarios y programas a un recurso de forma simultanea.
Se trata de una programación más lenta y laboriosa, obteniendo unos resultados lentos en las acciones.
Programación funcional
Se caracteriza principalmente por permitir declarar y llamar a funciones dentro de otras funciones.
Programación lógica
Se suele utilizar en la inteligencia artificial y pequeños programas
infantiles. Se trata de una programación basada en el cálculo de
predicados (una teoría matemática que permite lograr que un ordenador
basándose en hecho y reglas lógicas, pueda dar soluciones inteligentes).
No olvides dar Google+1