Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ingeniería Civil.
“Programación Modular”
Aula: IC-12D
Septiembre, 2017
Programación Modular
Un módulo es cada una de las partes de un programa que resuelve uno de los
subproblemas en que se divide el problema complejo original. Cada uno de estos
tiene una tarea bien definida y algunos necesitan de otros para poder operar. En
caso de que uno de ellos necesite de otro, puede comunicarse con éste mediante
una interfaz de comunicación que también debe estar bien definida.
Características de un módulo
Decimos que algo es modular si está construido de manera tal que se facilite su
ensamblaje, acomodamiento flexible y reparación de sus componentes. La
modularidad da una mejor compresión del problema y reduce el tamaño del
código. Generalmente se hace la asociación de un módulo como una caja negra.
Se sabe que entra y que sale pero no como se procesa.
Los programas que están constituidos por un único bloque, más o menos grande,
de código, dependiendo de la complejidad y tamaño de la aplicación, por ejemplo
5000 ó 6000 líneas de código sin comentar, sin documentar y sin estructurar, esto
es, sin hacer uso de un sólo submódulo, son programas pocos legibles, difíciles de
depurar y modificar y poco reutilizables.
Una vez que has construido varios programillas en Pascal, crear un procedimiento
no es nada complicado, pues tiene prácticamente la misma estructura que un
programa. Veamos las secciones que comparten y no comparten un
procedimiento y un programa principal:
Por último, comentar que ambos difieren en el signo de puntuación que marca su
final, ya que en un programa es el punto y en un procedimiento es el punto y
coma.
o Los parámetros por valor tienen dicho nombre porque lo que recibe el
subprograma no son más que copias de los valores de los datos que el
programa invocador le pasa. Por tanto si en el procedimiento modificamos
alguno de estos valores, los datos originales permanecerán inalterados. En
el ejemplo, son a y b.
o En cambio, en los parámetros por referencia lo que se pasa al
procedimiento son los datos en sí. Y si éste los modifica, los cambios
permanecerán una vez que la ejecución vuelva al módulo que invocó al
procedimiento. Se utilizan para obtener valores de los cálculos que haga un
subprograma.
Funciones
La división a más alto nivel que se suele hacer con las funciones, es la que las
divide según quien sea el autor de las mismas. Así tenemos funciones
predefinidas o estándar, y funciones de usuario. Las funciones predefinidas,
también llamadas estándar, son las que el propio lenguaje Pascal pone a
disposición del programador. Por ejemplo, si necesitas calcular el valor absoluto
de un número, no es necesario que construyas la función, pues ya se dispone de
una que lo hace.
Las funciones de usuario son, como su nombre indica, las que el propio usuario
declara, de igual manera que declara procedimientos. Las funciones nacen con el
propósito de ser subprogramas que siempre tienen que devolver algún valor.
o Simplifica el diseño.
o Disminuye la complejidad de los algoritmos.
o Disminuye el tamaño total del programa.
o Ahorra en tiempo de programación porque promueve la reusabilidad del
código.
o Favorece el trabajo en equipo.
o Facilita la depuración y prueba.
o Facilita el mantenimiento.
o Permite la estructuración de librerías específicas.
Diseño Descendente
En su proceso de refinamiento por pasos, etapas o capas. Se comienza desde
lo más general hasta lo más específico. En la solución de problemas grandes
es conveniente dividirlo en problemas más pequeños, los cuales a su vez
pueden dividirse en sub-problemas más pequeños.
Diseño de rutina
o Chequeo de prerrequisitos.
o Verificar si en trabajo de la rutina está bien definida
o Definir el problema de la rutina en términos de los datos de entrada,