lunes, 23 de septiembre de 2013

Programación modular

PROGRAMACIÓN MODULAR
La programación estructurada es una técnica de diseño de programas que comenzó a ponerse en
práctica a principios de los años 70. Su utilización tiene como objetivo paliar algunas deficiencias:
1. 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 submodulo, son programas pocos legibles, difíciles de depurar y modificar y poco reutilizables.
2. Un problema complejo no puede solucionarse de una sola vez y con un único algoritmo; además, existen operaciones que se repiten una y otra vez a lo largo del programa, de tal manera que es necesario el mismo bloque de código pero con diferentes datos. Con el fin de dar solución a los puntos anteriores se introdujo la programación estructurada. Su objetivo primordial es resolver un problema, más o menos complejo, dividiéndolo en otros más sencillos, que ligados convenientemente, nos den la solución del problema original.
Cada subproblema se representará mediante uno o varios módulos según su complejidad. La idea es que estos módulos sean independientes, es decir, que se puedan modificar o reemplazar sin afectar al resto del programa o que puedan ser reutilizados en otros programas. Supongamos el siguiente ejemplo. “Un profesor quiere crear un programa para gestionar la notas de sus alumnos. Quiere que dicho programa le permita realizar tareas tales como asignar notas, cambiar notas, ver las notas según las distintas calificaciones, etc.” Un posible división del problema en módulos sería: Esta subdivisión nos permitiría, fácilmente, cambiar la forma de visualizar a los alumnos, reutilizar el módulo “Visualizar” en otro programa y sobre todo es mucho más fácil de comprobar su funcionamiento.
Por tanto, las ventajas del diseño modular se traducen, principalmente, en que los programas son:
más fáciles de escribir y probar (los módulos pueden escribirse y probarse separadamente)
más fáciles de mantener y documentar.

Lenguajes de programacion


Que es un LGP ?


Un lenguaje de programación es un lenguaje que puede ser utilizado para controlar el comportamiento de una máquina, particularmente una computadora. Consiste en un conjunto de reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos, respectivamente. Aunque muchas veces se usa lenguaje de programación y lenguaje informático como si fuesen sinónimos, no tiene por qué ser así, ya que los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como, por ejemplo, el HTML

Según la forma de ejecución


Lenguajes compilados

Naturalmente, un programa que se escribe en un lenguaje de alto nivel también tiene que traducirse a un código que pueda utilizar la máquina. Los programas traductores que pueden realizar esta operación se llaman compiladores. Éstos, como los programas ensambladores avanzados, pueden generar muchas líneas de código de máquina por cada proposición del programa fuente. Se requiere una corrida de compilación antes de procesar los datos de un problema.


Lenguajes interpretados

Se puede también utilizar una alternativa diferente de los compiladores para traducir lenguajes de alto nivel. En vez de traducir el programa fuente y grabar en forma permanente el código objeto que se produce durante la corrida de compilación para utilizarlo en una corrida de producción futura, el programador sólo carga el programa fuente en la computadora junto con los datos que se van a procesar. A continuación, un programa intérprete, almacenado en el sistema operativo del disco, o incluido de manera permanente dentro de la máquina, convierte cada proposición del programa fuente en lenguaje de máquina conforme vaya siendo necesario durante el proceso de los datos. No se graba el código objeto para utilizarlo posteriormente.