sábado, 18 de agosto de 2012

Historia


INICIO DE MODULARIDAD

01/01/1972
Herramienta de enseñanza de la programación. Sus desarrolladores se concentraron en desarrollar buenas herramientas que contribuyeran a la enseñanza, tal como un buen debugger, y un buen editor. Además tuvieron como meta el tener soporte para la mayoría de los microprocesadores populares en esa época en las instituciones de enseñanza.

PARA ELLO SURGIO EL LENGUAJE PASCAL.

DISEÑO

01/01/1977

Diseñado bajo la dirección de Nicklaus Wirth, creador también el lenguaje
PASCAL, con la intención de incluir las necesidades de la programación de sistemas y dar respuestas a las
críticas recibidas respecto de las carencias del lenguaje PASCAL

TRASPASO DE NOMBRE

02/01/1979

se realiza una versión que pasa a
denominarse MODULA−2 y que perdura en la actualidad.
Además de incluir las características de su predecesor, este nuevo lenguaje incorpora las principales carencias
de aquel, como la posibilidad de compilación separada, creación de librerías, programación concurrente,
mejora el manejo de cadenas de caracteres, los procedimientos de entrada/salida y la gestión de la memoria,
etc. además, posee grandes facilidades para la programación de sistemas.


¿Programacion Modular?


¿Qué es programación modular? 

 

Uno de los métodos más conocidos para resolver un problema es dividirlo en problemas más pequeños, llamados subproblemas. De esta manera, en lugar de resolver una tarea compleja y tediosa, resolvemos otras más sencillas y a partir de ellas llegamos a la solución. Esta técnica se usa mucho en programación ya que programar no es más que resolver problemas, y se le suele llamar diseño descendente, metodología del divide y vencerás o programación top-down

Es evidente que si esta metodología nos lleva a tratar con subproblemas, entonces también tengamos la necesidad de poder crear y trabajar con subprogramas para resolverlos. A estos subprogramas se les suele llamar módulos, de ahí viene el nombre de programación modular. En Pascal disponemos de dos tipos de módulos: los procedimientos y las funciones

Veamos un ejemplo de cómo emplear el diseño descendente para resolver un problema. Supongamos que un profesor quiere crear un programa para gestionar las notas de sus alumnos. Quiere que dicho programa le permita realizar tareas tales como asignar notas, cambiar notas, ver las notas según distintas calificaciones, etc. A continuación tines un esquema que representa una de las posibles divisiones del problema en módulos.

 


Ventajas

Ventajas de la Programación Modular: 
  • Simplifica el diseño. 
  • Disminuye la complejidad de los algoritmos. 
  • Disminuye el tamaño total del programa. 
  • Ahorra en tiempo de programación porque promueve la reusabilidad del código.
  • Favorece el trabajo en equipo. 
  • Facilita la depuración y prueba.
  • Facilita el mantenimiento.
  • Permite la estructuración de librerías específicas.

Autor


Niklaus Wirth

Niklaus Wirth (Winterthur Suiza, 15 de febrero de 1934), científico de la computación.
En 1959 obtiene el título de Ingeniero en Electrónica en la Escuela Politécnica Federal de Zúrich (ETH) en Suiza. En 1960 obtuvo un M.Sc. de la Universidad de Laval, Canadá. En 1963 obtiene un Doctorado (Ph.D.) en la Universidad de California, Berkeley.
De 1963 a 1967 sirvió como profesor auxiliar de Informática en la Universidad de Stanford y de nuevo en la Universidad de Zúrich. A partir de 1968 se convirtió en profesor de Informática en la ETH en Suiza, tomándose dos años sabáticos en la Xerox PARC de California.
Wirth fue el jefe de diseño de los lenguajes de programación Euler, Algol W, Pascal, Modula, Modula-2 y Oberon. También ocupó gran parte de su tiempo en el equipo de diseño e implementación de sistemas operativos Lilith y Oberon para el Lola en el diseño del hardware digital y el sistema de simulación.
Su artículo de desarrollo de un programa por refinamiento sucesivo ("program development by stepwise refinement") es considerado un texto clásico en la ingeniería del software, así como su libro Algoritmos + Estructuras de datos = Programas, que recibió un amplio reconocimiento, y que aun hoy en día es útil en la enseñanza de la programación. Recibió el Premio Turing por el desarrollo de estos lenguajes de programación en 1984. Se jubiló en 1999.

Taller