Procedimientos Programados

Procedimientos (sub-rutinas/ sub-algritmos/ sub-programas)



Hasta ahora solo estuvimos introduciendo instrucciones simples una tras otra y el programa se encarga de interpretar cada unos de los comandos que le explicamos que debe ejecutar, y lo hace en forma de secuencial de arriba hacia abajo. (es un sistema de órdenes simples en las que unas va promero y otras van detrás, su orden es inalterable.)

Es, digamos. Una programación plana o monodimensioanal, o simple y verticalista.

Ejemplo:

TAMAÑO.LÁPIZ 5

COLOR.LÁPIZ "rojo"

AVANZA 30

DERECHA 30

etc etc.

Y así podríamos escribir larguísimas y complejísimas listas de órdenes imperativas para que nuestra computadora las realice. Y Por esa complejidad y longitud del código, este tipo de programación-qu aú sirve para programas muy pequeños-, con los años se volvió muy ineficaz, larga, lenta y tediosa, en programas medianos o largos.

Especialmente para el que tenía que corregir o cambiar el código del programa.), y también, generaba que la memoria de las máquinas precarias colapse y dejaban de funcionar.


Sin embargo, se creó una manera más cómoda de introducir comandos y es mediante "Procedimientos".



Los procedimientos le agregaron una nueva dimensión a la programación Imperativa primitiva (secuencial).



(Como cada lenguaje tiene diferentes formas de crear y usar procedimientos y funciones, en general, lo importante es saber que, tanto "los procedimientos" como "las funciones", son subrutinas -sub algoritmos o sub programas dentro del programa general que estamos programando-)


Así que:



A-Algoritmo = Rutina = Programa = código fuentes de un programa que resuelve algo o realiza alguna tarea por nosotros.


B-Subalgoritmo = Subrutina = Subprograma = Procedimiento específico que resuelve algo sin dar un valor como resultado o una Función específica que resuelve algo y le otorga al programa un valor como resultado.



Entonces, un programa puede estar formado por Algoritmos secuenciales y subalgoritmos. (Rutinas o subrutinas).


Es casi imposble hacer programs que solo ejecuten subrutinas (procedimientos).

Así como es casi tonto hoy día hacer programas que solo usen secuencias y jamas usen una subrutina o varias de ellas.


Así que se tiende a crear programas con una combiación de secuencias y subrutinas adecuada a la situación que se deba resolver.




Las funciones

Hoy es muy común programar usando funciones, hasta el punto que se ha casi olvidado, popularmente, que existen los procedimientos propiamente dichos.

Las funciones, en esencia, son solo un caso especial de procedimientos (subrutina o subalgoritmos) ya que que están destinados a producir nuevos datos.

Pero su descubrimiento e inclusión fue fundamental y radical en la historia de la programación. por ello hoy hay muchso lenguajes que aceptan la programacion procedimental o la programación funcional.


La diferencia entre la programación funcional y la procedimental

En la primera trabaja en el bajo nivel (Programas mas cercanso al lenguaje máquina) y la segunda, en leguajes de alto nivel. (Programas mas cercanos al lenguaje humano)



Leguajes y Paradigmas


Los lenguajes que son puramente del paradigma funcional son:

Haskel, Miranda y Erlang



Los lenguajes de otros paradigmas pero que permiten programación procedimental y funcional son:

C y C++

C#

Logo

StarBasic

Pascal

Java

Python

Javascript

Processing

Kotlin

Visual Basic .NET