Programación de procesamiento
Enviado por jorgepar • 24 de Septiembre de 2014 • Síntesis • 2.036 Palabras (9 Páginas) • 191 Visitas
programación de procesamiento, de programación estructurada y de programación orientada a objetos.
Programación de procesamiento
La programación de procesamiento o programación lineal es aquella en que las instrucciones se ejecutan en el mismo orden en que han sido escritas. Se basa en una serie de procedimientos que se ejecutan uno tras otro y que actúan sobre los datos. A estos procedimientos también se les llama, funciones o métodos.
El principal problema de este tipo de programación queda en evidencia a la hora de realizar programas complejos, ya que ofrece poca flexibilidad. Es especialmente complicado mantener una gran cantidad de líneas de código con superposición de funciones y se hace en extremo confuso para el programador..
Programación estructurada
Con el tiempo los programas comenzaron a ser más complejos y ambiciosos por lo que la evolución lógica era la llamada programación estructurada. Básicamente en este tipo de programación lo que se hace es dividir el trabajo en partes, llamadas módulos o componentes.Esta forma de programación entiende un programa como un conjunto de tareas. Cada tarea compleja es dividida en módulos, y cada módulo complejo es subdividido en componentes. De este modo cada tarea es fácilmente entendible y puede ser mejor documentada internamente. Los módulos o componentes son ejecutados a medida que son requeridos, de este modo tenemos un diseño compuesto por módulos independientes que pueden comunicarse entre sí.
Pero este tipo de lenguaje se centra en los procedimientos (también se le llama programación procedimental), y crecía la necesidad de pensar en los datos, en lo que se puede hacer con ellos. Además se vio que había funciones iguales que se copiaban una y otra vez en los módulos y se pensó que se podrían reciclar dichas funciones para distintas situaciones. Fue así como nació la programación orientada a objetos.
Programación orientada a objetos
La programación orientada a objetos (POO) combina las mejores ideas de la programación estructurada con conceptos nuevos y potentes que nos hacen ver las tareas de programación desde un nuevo punto de vista: el de los objetos. Debo hacer hincapié en que no se trata de un lenguaje de programación en sí, sino de una forma de plantearse la programación, soportado por muchos lenguajes actualmente.
Se trata de una forma de programar mucho más cercana a como expresamos las cosas en la vida real; descompone los problemas en conjuntos de datos con estructura propia, que llamamos objetos. Su idea principal es llevar al mundo del condigo lo mismo que encontramos en el mundo real. Y en nuestro mundo, cuando miramos alrededor, ¿qué nos encontramos? La respuesta es sencilla: cosas, objetos.
Para entender la programación orientada a objetos debemos entender que es un objeto. En el mundo real, un objeto es cualquier cosa que vemos a nuestro alrededor, un lápiz, una televisión, un coche, etc… Podemos distinguir un objeto de otro porque son de una clase diferente, o incluso diferenciar objetos de una misma clase, como pueden ser dos coche distintos.Un objeto puede estar compuesto por diferentes componentes, por ejemplo un coche está compuesto por: motor, radiador, frenos, ruedas, etc... Todo en conjunto forma parte del objeto coche. Internamente cada componente puede ser muy complicado y haber sido construido por distintas empresas, pero a nosotros nos basta con saber cuál es su funcionamiento y como se relaciona con los otros componentes.
Y lo mismo pasa en la programación orientada a objetos, todo el programa está construido en base a diferentes objetos, compuestos por diferentes componentes. Cada uno tiene un rol específico en el programa y todos pueden comunicarse entre sí de formas predefinidas.Me resta decir que todos los lenguajes compatibles con programación orientada o objetos deben cumplir con estos tres requisitos: Herencia, encapsulación, y polimorfismo; hay quién añade también la abstracción, pero ésta en realidad forma parte de la encapsulación.
Permítanme que no entre más en detalles sobre programación orientada a objetos en este tema, ya que redactaré otro artículo íntegramente dedicado a explicar todos los pormenores de esta forma de programar.
NTÉRPRETES Y COMPILADORES
Como ya dijimos anteriormente, un lenguaje de alto nivel no puede ser entendido directamente por una máquina, sino que debe ser traducido a su lenguaje, el lenguaje binario o lenguaje máquina, para que la computadora pueda entenderlo y ejecutarlo. Existen dos tipos de “traductores”: los Intérpretes y Compiladores.
Intérpretes:
El intérprete realiza la traducción del programa fuente (programa escrito en lenguaje de alto nivel) al lenguaje máquina directamente, ejecutando dicha traducción al momento de ejecutar cada una de las instrucciones. Normalmente no guarda el resultado de dicha traducción. De este modo, el programa fuente siempre conserva su forma original, con la desventaja de que cada vez que es ejecutado debe ser traducido nuevamente. Este proceso puede hacer más lenta la ejecución del programa, por lo que los intérpretes suelen ser menos usados que los compiladores.Podríamos comparar la labor de un intérprete con la que realiza un traductor humano, que va traduciendo lo que escucha a otro idioma en tiempo real, pero sin escribirlo ni dejar registro alguno.
Compilador:
El compilador a diferencia del intérprete, no ejecuta el programa directamente, haciendo la traducción en tiempo real, sino que, tras analizar el programa fuente lo traduce a otro lenguaje equivalente, creando lo que llamamos un programa objeto. Para remarcarlo aún más, diré que un programa objeto es la traducción de un programa en lenguaje de alto nivel a un programa en lenguaje máquina, lenguaje que la máquina puede interpretar y ejecutar.
Una vez compilado el programa, el resultado en forma de programa objeto no puede ser directamente ejecutado. Debemos usar un programa conocido como enlazador o linker, que combina todos los módulos del archivo objeto para formar un archivo ejecutable (con un .exe por ejemplo), que ya sí que se considera un programa en sí mismo y no necesita hacer referencia al código fuente original.
Volviendo al símil del traductor humano, podríamos decir que lo que hace un compilador sería equivalente a la labor que haría un humano al coger y libro y traducirlo a otro idioma dejándolo por escrito para la
posteridad.
Principales ventajas y desventajas de cada método:
- El compilador presenta la ventaja considerable de la velocidad de ejecución al no tener que traducir el programa fuente cada vez que es ejecutado.
- Usando un intérprete el programa
...