martes, 20 de enero de 2015

Ingenieria de Software: Programación imperativa.

"Si quieres algo bien hecho, hazlo tu mismo, paso por paso."

El paradigma de programación imperativa, es una metodología de desarrollo que presenta una temática directa hacia la memoria. Un ordenador, se divide en una serie de componentes, controlados por un software principal: La Bios. Principalmente, un ordenador utiliza un sistema de procesamiento binario, donde las únicas directrices, sentencias, normas, funciones que acepta, se limitan a una breve sintaxis entre unos, y ceros. Para hacer mas comprensible a nivel humano el funcionamiento de una maquina, se creó el lenguaje Ensamblador, un lenguaje altamente imperativo. Una de las principales ventajas y incomodidades de Ensamblador, consiste en que es un lenguaje que trata directamente con las direcciones de memoria, o celdas, donde crea, almacena, modifica, administra y actualiza información.


Obviamente, no es obligatorio programar Ensamblador o CLI para utilizar la mentalidad de paradigma imperativo. Casi cualquier lenguaje, con un buen enfoque y algo de razonamiento y lógica, puede utilizarse en modo imperativo. La principal característica imperativa, es referente a la administración de celdas de memoria, mas conocidas como variables y constantes. También conlleva el uso de mecanismos directivos entre la información, abarcando así las propiedades y localización digital de cada objeto, archivo, variable, etc. 

Opinión:

La programación imperativa, resulta ser un método bastante automatizado y optimizado, requiriendo así un alto nivel de conocimientos algorítmicos y logísticos. En un principio, era el lenguaje de hardware adecuado, pero con un poco de imaginación, se puede aprovechar su idealismo principal para mejorar la tegnologia que ya conocemos.

Teniendo en cuenta su centralización en la memoria, podemos poner vistas mas lejanas, ver mas, de menos. Principalmente, las acciones imperativas van enfocados al control de la memoria en su nivel mas bajo: bits y bytes. Si miramos un poco mas por encima, podemos ver Kilobytes, MegabytesGigabytes. Si miramos mas lejos de esa mentalidad, podemos dividir la memoria, en diferentes archivos para obtener un mejor orden y control de su uso. Con un poco de imaginación, se puede crear un motor de renderización, un interpretador de ordenes o incluso un sistema de administración de archivos varios.

"Recordad siempre: un paradigma, es un método, una ideología, no un jefe, ni una orden."

- Gracias por su tiempo, atentamente: Chaarlis Me.