0% encontró este documento útil (0 votos)
15 vistas42 páginas

Introducción a la Programación Estructurada

La programación estructurada es una metodología que busca mejorar la claridad y calidad del software mediante el uso de subrutinas y funciones, fundamentada en el teorema del programa estructurado de Böhm y Jacopini. Esta técnica se basa en tres estructuras de control: secuencia, selección e iteración, que permiten desarrollar programas más comprensibles y fáciles de mantener. A lo largo de la historia, figuras como Edsger Dijkstra han promovido su uso, destacando sus ventajas sobre métodos anteriores, como la reducción de la complejidad y el costo de mantenimiento.

Cargado por

BETTY BONILLA
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
15 vistas42 páginas

Introducción a la Programación Estructurada

La programación estructurada es una metodología que busca mejorar la claridad y calidad del software mediante el uso de subrutinas y funciones, fundamentada en el teorema del programa estructurado de Böhm y Jacopini. Esta técnica se basa en tres estructuras de control: secuencia, selección e iteración, que permiten desarrollar programas más comprensibles y fáciles de mantener. A lo largo de la historia, figuras como Edsger Dijkstra han promovido su uso, destacando sus ventajas sobre métodos anteriores, como la reducción de la complejidad y el costo de mantenimiento.

Cargado por

BETTY BONILLA
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

 Inicio

 Revista - Noticias
 Ingeniería y Tecnología
 ¿Qué es la programación estructurada?

¿Qué es la programación estructurada?


INGENIERÍA Y TECNOLOGÍA|21/06/2022
La programación estructurada es una teoría orientada a mejorar la claridad,
calidad y tiempo de desarrollo utilizando únicamente subrutinas o funciones.
Basada en el teorema del programa estructurado propuesto por Böhm y
Jacopini, ha permitido desarrollar software de fácil comprensión.
¿Repetimos? ¡No te asustes! Vamos a contarte de forma sencilla y rápida
todo lo que debes saber sobre la programación estructurada.
La palabra programación, a veces, asusta. Y si le pones estructurada justo después, más. Pero, en realidad,
programación estructurada
no es para tanto. Vamos a verlo. La es una corriente que nació con la vocación de
facilitar la vida de los programadores, sobre todo cuando estos debían abordar fases de mejora posteriores a la creación del
programa, y de ordenar la forma en la que se creaba cualquier tipo de programa. ¿Cualquiera, cualquiera? ¡Sí!
Böhm y
Para comprenderlo mejor, vamos a hacer un pequeño viaje en el tiempo. Nos vamos al año 1966, cuando
Jacopini proponen el teorema del programa estructurado, con el que demuestran que cualquier programa
puede ser escrito utilizando solo tres instrucciones de control. Imagínate, ¡esto fue toda una revolución! Implicaba la construcción de
programas más sencillos y más rápidos, en los que disminuía la complejidad de las pruebas y el testing para ponerlos en
funcionamiento.
Edsger Dijkstra publicó un célebre artículo que impactó en la
Avanzamos dos años más en el tiempo. En 1968,
computación moderna: Go To Statement Considered Harmful. ¿Por qué es tan importante? Pues
porque este científico holandés promovió activamente el uso de lenguajes de programación estructurada, fomentando la verificación
formal de programas y la eliminación de la sentencia Goto. De hecho, Dijkstra participó en el comité que diseñó Algol 60, el
primer lenguaje de programación estructurado.
uno de los paradigmas
La programación estructurada se convierte así, junto con la programación orientada a objetos, en
de programación más populares que ejecuta los lenguajes más potentes que seguro conoces, incluidos, entre
otros, Java, C, Python y C++.

Características y ventajas
Elteorema del programa estructurado es la base teórica sobre la que se construyó esta nueva forma de
simplemente con la
programar, ya que nos da la característica fundamental de la programación estructurada. Postula que,
combinación de tres estructuras básicas, es suficiente para expresar cualquier función
computable. Parece sencillo, ¿verdad? En realidad, lo es y, precisamente por eso, se abre inmediatamente el debate entre
los programadores que querían continuar con el sistema anterior y los que abrazaban estas nuevas estructuras de control con los
ojos cerrados. ¿Quién crees que ganó?
Vale, nadie fue declarado vencedor inmediatamente, pero sí que es cierto que ‘los Digital Workers de los años 70’ empezaban a ver
poco a poco las grandes ventajas que ofrecía la programación estructurada sobre el código espagueti (los programas
de computación antiguos que tenían una estructura de control de flujo compleja e incomprensible). Y, ¿qué ventajas eran esas?

 Los programas desarrollados con la programación estructurada son más sencillos de


entender, ya que tienen una estructura secuencial y desaparece la necesidad de rastrear los complejos saltos de
líneas (propios de la sentencia Goto) dentro de los bloques de código para intentar comprender la lógica interna.
 los programas resultantes tendrán una
Como consecuencia inmediata de lo anterior, otra ventaja es que
estructura clara, gracias a que las sentencias están ligadas y relacionadas entre sí.
 La fase de prueba y depuración de los programas se optimiza, ya que es mucho más sencillo hacer
el seguimiento de los fallos y errores y, por tanto, detectarlos y corregirlos.
 El coste del mantenimiento de los programas que usan la programación estructurada es
más reducido. ¿Por qué? Pues porque modificar o extender los programas es más fácil al estar formados por una
estructura secuencial.
 Al ser más sencillos los programas, son más rápidos de crear y los programadores aumentan su rendimiento.

Las 3 estructuras básicas


Ya nos ha quedado claro que la programación estructurada es una forma de programar más sencilla que se basa únicamente en la
combinación de tres órdenes. Pero, ¿cuáles son esos tipos de estructuras de control que son capaces de expresarlo todo?

1. Secuencia. La estructura secuencial es la que se da de forma natural en el lenguaje, porque las sentencias se
ejecutan en el orden en el que aparecen en el programa, es decir, una detrás de la otra.
2. Selección o condicional. La estructura condicional se basa en que una sentencia se ejecuta según el valor que
se le atribuye a una variable booleana. ¡Un pequeño inciso! Una variable booleana es aquella que tiene dos valores
posibles. Por tanto, esta estructura se puede ejecutar de dos formas distintas, dependiendo del valor que tenga su
variable.
Como apunte para los verdaderos amantes de la programación: para las estructuras condicionales o de selección, Python
dispone de la sentencia
if, que puede combinarse con elif y/o else.
3. Iteración (ciclo o bucle). La estructura de repetición ejecuta una o un conjunto de sentencias siempre que una
variable booleana sea verdadera. Para los bucles o iteraciones, los lenguajes de programación usan las
estructuras while y for.

Y solamente con estas tres estructuras de control, ¡se pueden escribir todos los programas y aplicaciones posibles! ¡Todos! Si estás
pensando que los lenguajes de programación tienen más estructuras, sí, es cierto, pero cualquiera de ellas
puede ser construida gracias a estas tres básicas que hemos citado. ¿Comprendes ahora todo el revuelo que se formó con el
teorema de la programación estructurada?

Conocida también como diseño descendente, consiste en establecer una serie de niveles de mayor a menor complejidad (arriba-
abajo) que den solución al algoritmo.

Se efectúa una relación entre las etapas de la estructuración, de forma que una etapa jerárquica y su inmediato inferior se
relacionen mediante entradas y salidas de datos.
Se integra de una serie de descomposiciones sucesivas del problema inicial, que recibe el refinamiento progresivo del repertorio de
instrucciones que van a formar parte del programa. Esta técnica tiene los siguientes objetivos:

Interacción entre los procesos, la estructura de memoria y los archivos.

Un ejemplo de un diseño descendente está representado en este sistema de nómina. Como se puede observar, en este caso, el
diseño descendente es jerárquico; el módulo 0 de nómina contendrá el menú principal que integrará al sistema, controlando desde
éste los submenús del siguiente nivel. Pulsa en las flechas para avanzar y retroceder por la información.
La estructura secuencial es aquella en la que una acción (instrucción)
sigue a otra en secuencia. Las tareas se suceden de tal modo que la
salida de una es la entrada de la siguiente y así sucesivamente hasta el
fin del proceso.

Quizás cuando hablamos de estructura podamos imaginarnos algo un poco


más complejo que simplemente una sentencia detrás de otra, para realizarse
en la secuencia. Por supuesto hay otras estructuras más complejas como los
condicionales o las repeticiones, pero tenemos que empezar por lo más simple.
De hecho, enseguida que lleguemos a condicionales y bucles verás que ellos
están compuestos por una estrucura de control que nos permite definir la
lógica y una o más sentencias en estructura secuencial para definir los bloques
a ejecutar condicional o repetidamente.
En Pseudocódigo, una Estructura Secuencial se representa de la
siguiente forma:

Observa ahora el siguiente problema de tipo cotidiano y sus respectivos


algoritmos representados en Pseudocódigo y en diagramas de flujos:

- Tengo un teléfono y necesito llamar a alguien pero no sé como hacerlo.


El anterior ejemplo es un sencillo algoritmo de un problema cotidiano
dado como muestra de una estructura secuencial.

Menú

¿Qué es la estructura selectiva en


programación?
Autor: KeepCoding Team | Última modificación: 9 de mayo de
2023 | Tiempo de Lectura: 2 minutos
Temas en este post: conceptos desarrollo de apps móviles
Algunos de nuestros reconocimientos:
Home » Blog » ¿Qué es la estructura selectiva en programación?

¿Ya sabes qué es la estructura selectiva en programación? Si formas


parte del mundillo tecnológico, es probable que ya conozcas o hayas
trabajado con diferentes tipos de estructuras para programar, como es el
caso de la estructura selectiva. Esta se encarga de la gestión de flujo en
búsqueda del desarrollo de la lógica de programación.

🔴 ¿Quieres entrar de lleno al Desarrollo Mobile? 🔴

Descubre el Desarrollo de Apps Móviles Full Stack Bootcamp de


KeepCoding. La formación más completa del mercado y con empleabilidad
garantizada

👉 Prueba gratis el Bootcamp en Desarrollo de Apps Móviles por una semana

Ahora, si te interesa profundizar al respecto de la estructura


selectiva, quédate en este artículo para descubrir las características de
la estructura selectiva y los tipos que existen.

En este post encontrarás: ocultar


1 ¿Qué es la estructura selectiva en programación?
2 Tipos de estructuras selectivas
3 ¿Cuál es el siguiente paso?
¿Qué es la estructura selectiva en programación?

Las estructuras condicionales o, como se conocen mayormente en


programación, las estructuras selectivas, se definen como una estructura
que permite controlar de cierto modo el flujo de una acción o de
acciones del programa, ayudando a que el desarrollo de la lógica de
programación sea de manera optima.

Esto quiere decir, en otras palabras, que una estructura selectiva es la


encargada de dirigir la ejecución de un programa que tiene como objetivo
los grupos de sentencias del resultado de la condición.

Todas estas acciones permiten confirmar la validez del flujo del programa
en relación a una expresión lógica escogiendo entre dos o más acciones.
De esta manera, evalúan las condiciones e inmediatamente ejecutan
una sentencia. Sin embargo, se debe tener cuidado al realizarlo, pues no
es posible hacerlo todas al mismo tiempo, sino una a la vez.

Tipos de estructuras selectivas

La representación de cada una de las partes de esta estructura se hace con


palabras en seudocódigo, como lo son por ejemplo if, else, then o,
traducidas al español si, entonces, si… no. Estas estructuras selectivas al
ser una gran variedad de casos pueden clasificarse bajo 3 grupos, siendo
estos:

 Simples: se definen como aquellas compuestas bajo una


sola selección y condición. El ejemplo más claro de
estructura selectiva simple en programacion es
falso/verdadero, en donde si el resultado es falso no hará
nada, sin embargo, ejecutará la acción o acciones que se
requieran en caso tal sea verdadero.
 Dobles: al igual que las simples, están condicionadas
únicamente por una condición, pero usando el mismo
ejemplo de falso y verdadero. En caso de falso, ejecutará las
acciones necesarias, y en caso de que sea verdadero, también
las va a ejecutar.
 Múltiples: estas se dan cuando tenemos la unión de varias
estructuras selectivas simples, con la diferencia de que su
código es mucho más pequeño que las simples.

 Aprender Informática

o
o

 Trucos y Consejos

 Apps y Programas

o
Qué es programación modular?

Si estás comenzando a estudiar programación y te encuentras en la situación de

no entender algunos conceptos, te podemos dar una mano. Muchas veces, cosas

que suenan complicadas son en verdad muy fáciles de entender.

Uno de los ejemplos más claros es el llamado paradigma de la programación

modular. No te preocupes más, te vamos a ayudar con eso.

Qué vas a encontrar aquí: Qué es programación modular? Qué es el

módulo? Historia de la programación modular. Características, tipos,

ventajas, desventajas y usos de la programación modular. Lenguajes de

programación.
Índice de Contenidos
1. Qué es programación modular?
1. Qué es el módulo?
2. Historia de la programación modular
3. Características de la programación modular
4. Tipos de programación modular
5. Ventajas de la programación modular
1. Desventajas de la programación modular
2. Porque es importante la programación modular?
6. Usos de la programación modular
7. Lenguajes de programación para la programación modular
Qué es programación modular?
Antes de comenzar, aquí encontrarás un super post sobre el que es

programar y mucho más!


Como vimos, básicamente la programación modular consiste en dividir un

programa en distintos subprogramas independientes. De esta forma el

software principal se vuelve más fácil de manejar.

 Aprender Informática

 Trucos y Consejos

o
 Apps y Programas

Qué es programación modular?

Si estás comenzando a estudiar programación y te encuentras en la situación de

no entender algunos conceptos, te podemos dar una mano. Muchas veces, cosas

que suenan complicadas son en verdad muy fáciles de entender.

Uno de los ejemplos más claros es el llamado paradigma de la programación

modular. No te preocupes más, te vamos a ayudar con eso.

Qué vas a encontrar aquí: Qué es programación modular? Qué es el

módulo? Historia de la programación modular. Características, tipos,

ventajas, desventajas y usos de la programación modular. Lenguajes de

programación.
Índice de Contenidos
1. Qué es programación modular?
1. Qué es el módulo?
2. Historia de la programación modular
3. Características de la programación modular
4. Tipos de programación modular
5. Ventajas de la programación modular
1. Desventajas de la programación modular
2. Porque es importante la programación modular?
6. Usos de la programación modular
7. Lenguajes de programación para la programación modular
Qué es programación modular?
Antes de comenzar, aquí encontrarás un super post sobre el que es

programar y mucho más!


Como vimos, básicamente la programación modular consiste en dividir un

programa en distintos subprogramas independientes. De esta forma el

software principal se vuelve más fácil de manejar.

Pero además, los subprogramas resultantes del programa principal pueden

también ser divididos en subprogramas más pequeños aún.

Lo que se busca con ello básicamente es poder lograr obtener subprogramas lo

más simple posibles. De esta manera los problemas pueden ser resueltos de

forma fácil por un lenguaje de programación.

Esto es gracias a que la programación modular permite en principio dividir la

complejidad de un problema, y además se puede reutilizar el código de un

programa en cualquier momento.

Para ello se utiliza la técnica denominada Top-Down o análisis descendente.

La técnica Top-Down hace posible diseñar una solución a un problema a

través de la segmentación, y su nombre refiere a que este procedimiento se

realiza de arriba hacia abajo.


En informática, la programación modular utiliza el proceso de

segmentación, con lo cual se diseñan pequeños bloques de códigos

independientes para subprogramas, que serán parte luego del software mayor.

Ten en cuenta que en la mayoría de los casos esta técnica Top-Down se utiliza

en conjunto con pseudocódigo, para de esta manera poder generar una

herramienta de diseño de algoritmos adecuada.

En el proceso de segmentación entran en juego los módulos, los cuales además se

integran entre sí de manera jerárquica para conformar el programa que se está

desarrollando.
Qué es el módulo?
Como ya te podrás imaginar, cada uno de los módulos son parte integrante de

un conjunto superior, es decir de un programa mayor.

Es decir que cada módulo de un programa es básicamente cada una de las

partes de ese programa, y que fueron creados como subprogramas con tareas

para específicas y definidas

 Aprender Informática

 Trucos y Consejos

o
o

 Apps y Programas

Qué es programación modular?

Si estás comenzando a estudiar programación y te encuentras en la situación de

no entender algunos conceptos, te podemos dar una mano. Muchas veces, cosas

que suenan complicadas son en verdad muy fáciles de entender.

Uno de los ejemplos más claros es el llamado paradigma de la programación

modular. No te preocupes más, te vamos a ayudar con eso.

Qué vas a encontrar aquí: Qué es programación modular? Qué es el

módulo? Historia de la programación modular. Características, tipos,

ventajas, desventajas y usos de la programación modular. Lenguajes de

programación.
Índice de Contenidos
1. Qué es programación modular?
1. Qué es el módulo?
2. Historia de la programación modular
3. Características de la programación modular
4. Tipos de programación modular
5. Ventajas de la programación modular
1. Desventajas de la programación modular
2. Porque es importante la programación modular?
6. Usos de la programación modular
7. Lenguajes de programación para la programación modular
Qué es programación modular?
Antes de comenzar, aquí encontrarás un super post sobre el que es

programar y mucho más!


Como vimos, básicamente la programación modular consiste en dividir un

programa en distintos subprogramas independientes. De esta forma el

software principal se vuelve más fácil de manejar.

Pero además, los subprogramas resultantes del programa principal pueden

también ser divididos en subprogramas más pequeños aún.

Lo que se busca con ello básicamente es poder lograr obtener subprogramas lo

más simple posibles. De esta manera los problemas pueden ser resueltos de

forma fácil por un lenguaje de programación.

Esto es gracias a que la programación modular permite en principio dividir la

complejidad de un problema, y además se puede reutilizar el código de un

programa en cualquier momento.

Para ello se utiliza la técnica denominada Top-Down o análisis descendente.

La técnica Top-Down hace posible diseñar una solución a un problema a

través de la segmentación, y su nombre refiere a que este procedimiento se

realiza de arriba hacia abajo.


En informática, la programación modular utiliza el proceso de

segmentación, con lo cual se diseñan pequeños bloques de códigos

independientes para subprogramas, que serán parte luego del software mayor.

Ten en cuenta que en la mayoría de los casos esta técnica Top-Down se utiliza

en conjunto con pseudocódigo, para de esta manera poder generar una

herramienta de diseño de algoritmos adecuada.

En el proceso de segmentación entran en juego los módulos, los cuales además se

integran entre sí de manera jerárquica para conformar el programa que se está

desarrollando.
Qué es el módulo?
Como ya te podrás imaginar, cada uno de los módulos son parte integrante de

un conjunto superior, es decir de un programa mayor.

Es decir que cada módulo de un programa es básicamente cada una de las

partes de ese programa, y que fueron creados como subprogramas con tareas

para específicas y definidas.

Entonces podemos decir que cada módulo es un segmento, una rutina, una

subrutina, un subalgoritmo o un procedimiento que permite ejecutar una

tarea específica, y que opera dentro del módulo principal.

Sin embargo, cabe aclarar que un módulo no es simplemente una función o un

procedimiento, porque en realidad puede contener en sí muchos de ellos.

Por ende, ten en cuenta que cada módulo es un bloque de sentencias que

resuelve un problema particular.


Debido a su independencia del resto de los módulos, cada uno de ellos tiene la

particularidad que puede ser modificado sin afectar al resto.

En resumen, la programación modular está compuesta por dos tipos de módulos:

El módulo principal: Es el que concentra al resto de los módulos y es


el único que puede ejecutar las funciones de los módulos auxiliares.
Es el encargado de coordinar la ejecución de los demás módulos.
 Los módulos auxiliares: Son archivos ejecutables separados, pero
que sólo funcionan cuando son ejecutados por el módulo principal.
Son los que resolverán cada de una las tareas concretas del
problema.
Historia de la

 Aprender Informática
o

 Trucos y Consejos

 Apps y Programas

o
Qué es programación modular?

Si estás comenzando a estudiar programación y te encuentras en la situación de

no entender algunos conceptos, te podemos dar una mano. Muchas veces, cosas

que suenan complicadas son en verdad muy fáciles de entender.

Uno de los ejemplos más claros es el llamado paradigma de la programación

modular. No te preocupes más, te vamos a ayudar con eso.

Qué vas a encontrar aquí: Qué es programación modular? Qué es el

módulo? Historia de la programación modular. Características, tipos,

ventajas, desventajas y usos de la programación modular. Lenguajes de

programación.
Índice de Contenidos
1. Qué es programación modular?
1. Qué es el módulo?
2. Historia de la programación modular
3. Características de la programación modular
4. Tipos de programación modular
5. Ventajas de la programación modular
1. Desventajas de la programación modular
2. Porque es importante la programación modular?
6. Usos de la programación modular
7. Lenguajes de programación para la programación modular
Qué es programación modular?
Antes de comenzar, aquí encontrarás un super post sobre el que es

programar y mucho más!


Como vimos, básicamente la programación modular consiste en dividir un

programa en distintos subprogramas independientes. De esta forma el

software principal se vuelve más fácil de manejar.

Pero además, los subprogramas resultantes del programa principal pueden

también ser divididos en subprogramas más pequeños aún.

Lo que se busca con ello básicamente es poder lograr obtener subprogramas lo

más simple posibles. De esta manera los problemas pueden ser resueltos de

forma fácil por un lenguaje de programación.

Esto es gracias a que la programación modular permite en principio dividir la

complejidad de un problema, y además se puede reutilizar el código de un

programa en cualquier momento.

Para ello se utiliza la técnica denominada Top-Down o análisis descendente.

La técnica Top-Down hace posible diseñar una solución a un problema a

través de la segmentación, y su nombre refiere a que este procedimiento se

realiza de arriba hacia abajo.


En informática, la programación modular utiliza el proceso de

segmentación, con lo cual se diseñan pequeños bloques de códigos

independientes para subprogramas, que serán parte luego del software mayor.

Ten en cuenta que en la mayoría de los casos esta técnica Top-Down se utiliza

en conjunto con pseudocódigo, para de esta manera poder generar una

herramienta de diseño de algoritmos adecuada.

En el proceso de segmentación entran en juego los módulos, los cuales además se

integran entre sí de manera jerárquica para conformar el programa que se está

desarrollando.
Qué es el módulo?
Como ya te podrás imaginar, cada uno de los módulos son parte integrante de

un conjunto superior, es decir de un programa mayor.

Es decir que cada módulo de un programa es básicamente cada una de las

partes de ese programa, y que fueron creados como subprogramas con tareas

para específicas y definidas.

Entonces podemos decir que cada módulo es un segmento, una rutina, una

subrutina, un subalgoritmo o un procedimiento que permite ejecutar una

tarea específica, y que opera dentro del módulo principal.

Sin embargo, cabe aclarar que un módulo no es simplemente una función o un

procedimiento, porque en realidad puede contener en sí muchos de ellos.

Por ende, ten en cuenta que cada módulo es un bloque de sentencias que

resuelve un problema particular.


Debido a su independencia del resto de los módulos, cada uno de ellos tiene la

particularidad que puede ser modificado sin afectar al resto.

En resumen, la programación modular está compuesta por dos tipos de módulos:

 El módulo principal: Es el que concentra al resto de los módulos y es


el único que puede ejecutar las funciones de los módulos auxiliares.
Es el encargado de coordinar la ejecución de los demás módulos.
 Los módulos auxiliares: Son archivos ejecutables separados, pero
que sólo funcionan cuando son ejecutados por el módulo principal.
Son los que resolverán cada de una las tareas concretas del
problema.
Historia de la programación modular
Si repasas la historia de la programación modular, encontrarás que en definitiva

es considerada como la evolución de la programación estructurada.


Si nos remontamos a los comienzos de la historia de la

computación, encontramos que las primeras computadoras eran equipos

complejos pero que tenían una capacidad ciertamente limitada para resolver

problemas.

Con el paso de los años y gracias al surgimiento del lenguaje ensamblador y los

primeros lenguajes de alto nivel, comenzó la evolución de la programación.

Sin embargo, con la llegada de los lenguajes de alto nivel, a la par fue creciendo

la complejidad de los programas. Por ende, los programadores se vieron ante el

desafío de escribir códigos más acordes a esas necesidades.

Por aquella época, los programadores utilizaban la conocida sentencia GOTO,

proveniente del lenguaje ensamblador, para poder transferir el control de

ejecución desde un punto del programa hacia otro.

Sin embargo, este procedimiento causaba inconvenientes y por ende generaba

errores y se volvía casi imposible seguir el flujo de control del programa.


Ten en cuenta que se trataba de programas que realmente abusaban de la

sentencia GOTO, y terminaban generando un caos de programación. A los

programas con estas características se los solía llamar despectivamente “código

espagueti”.

Fue a finales de los años sesenta y comienzos de la década de los setenta

que nace la programación estructurada. Con ella se incorporaron estructuras

de control de flujo, que permitieron que un programa fuera más fácil de trazar.

A partir de allí surgió un nuevo inconveniente.


Los desarrolladores vieron que en el funcionamiento de programas grandes y

complejos, era imperioso dividir el programa en unidades más pequeñas.

Es allí precisamente donde surge el concepto de la programación modular.

Claro que al principio generó ciertas divergencias entre aquellos que preferían

diferentes enfoques para la programación modular. Estos enfoques eran:

Top-Down: De arriba hacia abajo. Conocida también como



programación descendente. En este enfoque los módulos surgen
hacia abajo, y se van generando más módulos a medida que se baja
de nivel.
 Bottom-Up: De abajo hacia arriba. Toma primero la programación
de los módulos del nivel más bajo, y luego van surgiendo los
módulos de niveles superiores.
Mientras que el modelos planteado por Bottom-Up fue ampliamente utilizado en

los primeros tiempos, sobre todo en las fases de pruebas de la programación

modular, lo cierto es que finalmente el enfoque más utilizado terminó siendo

Top-Down, el cual fue promovido por Harlan Mills y Niklaus Wirth en los años

setenta.
Durante muchos años, la programación modular con enfoque Top-Down fue

el estándar más utilizado en la programación. Hoy la programación orientada

a objetos se ha posicionado como un reemplazo mucho más acorde a las

necesidades actuales.

Características de la programación modular

En la programación modular la premisa es que todo programa tiene un módulo

principal.

A su vez ese módulo está dividido en submódulos. Cada uno de estos

submódulos ejecutan una tarea específica, por lo que su código es independiente.


A pesar de esa independencia, el control siempre lo tendrá el módulo principal.

Debido a esta conformación, la programación modular incluye una serie de

características esenciales. Estas características son las siguientes:

Modularidad

 El programa incluye subprogramas que han sido desarrollados con


códigos independientes.
 Cada módulo es un conjunto de sentencias que permiten realizar
una acción u operación.
 Gracias a su modularidad, la programación modular permite
disponer de pequeños módulos o sentencias simples que se acoplan
a la función principal del software, en reemplazo de una única
función principal larga.
 Cada uno de los módulos es más fácil de comprender, con lo cual es
posible al final tener una gran solución para un problema complejo.
 La comunicación entre estos subprogramas se realiza por medio de
parámetro=variable.
Funcionalidad

 En la programación modular es necesario utilizar funciones que


incluyen definición, comandos y sentencias.
 Todas las funciones incluyen una sentencia de retorno.
 Las funciones utilizan las sentencias de las variables adicionales.
Variable

 La programación modular incluye variables que se encuentran


dentro de la función principal del programa.
 Con cada función que se ejecuta, las variables tienen un valor
específico, aunque como su nombre lo indica, este valor puede
cambiar cada vez que se lleva a cabo dicha función.
 Existen dos tipos de variables: Las variables locales y las variables
globales. Estas últimas son definidas de forma externa al programa
principal, pero están relacionadas a las funciones que se encuentran
dentro del programa.
Procedimental

 Está orientada por completo a la escritura de código para la creación


de funciones.
 No toma en cuenta los datos.

Tipos de programación modular

Como ya hemos visto, existen dos tipos de programación modular.


Por un lado la generada de arriba hacia abajo, es decir la técnica llamada Top-

Down y conocida en el mundo de la programación como programación

descendente.

Aquí los módulos surgen de arriba hacia abajo, y van surgiendo módulos más

simples y pequeños a medida que se baja de nivel.

Por otro lado existe la programación modular de abajo hacia arriba, conocida

como Bottom-Up.

Al contrario de la anterior, en esta técnica se utiliza en primer lugar la

programación de los módulos del nivel más bajo.

Luego de ello se van generando los módulos de niveles superiores.

Ventajas de la programación modular

Como has podido ver hasta ahora, la programación modular tiene muchas

ventajas. Algunas de las mismas son:

 Gracias a su estructuración, es capaz de reducir la complejidad y los


alcances del problema.
 Debido a lo anterior, también es posible reducir el tamaño del
problema.
 También favorece el entendimiento del problema. Esta característica
es muy interesante cuando más de un programador tiene que
hacerse cargo del mantenimiento del programa.
 Facilita la cooperación entre programadores. Esto es muy útil en
proyectos muy grandes y complejos.
 Una de las características más importantes es la posibilidad
de reutilizar el código.
 La estructura de la programación modular permite que el código se
pueda escribir y leer con más facilidad. Una opción más que
interesante en proyectos en los que participan muchos
programadores.
 También te permite que la lógica del programa sea mucho más clara.
Un punto a favor en proyectos grandes.
 La estructura de la programación modular permite proteger la
ejecución del programa. Es decir que tiene la capacidad de proveer
seguridad para evitar que se destruyan datos en forma accidental.
 La propia estructuración de la programación modular posibilita una
solución rápida y efectiva de los problemas mayores. Luego de ello
los programadores podrán centrarse en los detalles menos
importantes, como la GUI y demás.
 Con respecto a la depuración de los errores de un desarrollo, esta es
mucho más sencilla de llevar a cabo. Esto es debido a que en
primera instancia se corrigen errores en los módulos del nivel
inferior. En este mismo sentido, se favorece la modificación del
código.
 En la programación modular, el desarrollo del programa es
independiente del proyecto.
 La característica más destacada de la programación modular es sin
dudas la posibilidad de desarrollar programas mucho más eficientes.
 Otra ventaja de este tipo de programación es la posibilidad de la
utilización múltiple de los módulos.
Desventajas de la programación modular
Así como la programación modular tiene sus claras ventajas, también ofrece una

buena cantidad de desventajas con respecto a otros paradigmas de

programación.

Alguna de las desventajas de la programación modular son las siguientes:

 Ofrece una estructura por demás orientada a objetos. La


programación modular usa interfaces, lo cual es muy eficiente. Para
ello, muchos frameworks ofrecen sets completos de clases
intercambiables. Ejemplos de ellos existen varias clases capaces de
implementar una interfaz de persistencia. Pero esto lleva a
confusión cuando se utilizan entornos de desarrollo integrado,
conocidos como IDE. En este sentido, en el caso de querer hallar la
fuente de un método, por ejemplo el IDE podría mostrar una
extensa lista de archivos. Todos con referencia a un método con ese
nombre.
 Otra desventaja importante de la programación modular es que
existen muchos módulos que contienen funciones mínimas. Todos
estos módulos, a la hora de ejecutar el programa, suman tiempo de
procesamiento. Esto significa que si se usan muchos de estos
módulos pequeños, se aumenta la necesidad de tiempo de proceso,
tanto para la compilación como para la ejecución. Asimismo
aumentará el tamaño del paquete del ejecutable.
Como saben todos los programadores, descomponer un código en módulos no

tiene mucho sentido. Muchos de los códigos que se utilizan nunca cambian, y

por ello no tiene demasiada razón intentar mejorarlos, ya que se funcionan a la

perfección. En este sentido, existen códigos muy usados que no se ven muy

lindos en el papel, pero que funcionaron a la perfección durante años.

Porque es importante la programación modular?


En este punto, es necesario destacar la importancia de la programación modular

sobre los demás paradigmas de programación.


La programación modular te permite resolver un problema dividiéndolo en

problemas más pequeños, más conocidos como subproblemas. Esto es de mucha

importancia para el desarrollo de aplicaciones modernas.

Con la programación modular se obtiene una manera de resolver una tarea muy

complicada resolviendo primero los problemas más pequeños que acarrea.

A este tipo de resolución de problemas en programación se le denomina como

Top Down.

Usos de la programación modular


Como ya sabes a esta altura, la programación modular es solamente un

concepto. Este concepto se puede aplicar al desarrollo de software en cualquier

plataforma y en cualquier lenguaje de programación.

Más aún si es un lenguaje de programación de tipo procedimental, los cuales

ofrecen el compilador en forma separada.


Otro de los usos de la programación reside en que las bibliotecas de componentes

construidos a partir de módulos compilados por separado se pueden combinar

mediante un enlazador. Esta es una herramienta de programación muy usada en

esta técnica.

Una de las características fundamentales para que la programación modular sea

exitosa es que los nombres de las funciones en los diferentes módulos deben ser

únicos.

Con esto se hace más sencillo el acceso para cuando desees exportar las

funciones utilizadas por el módulo principal.


Lenguajes de programación para la programación modular
En la actualidad uno de los lenguajes de programación más usados que soportan

el concepto de programación modular es Java.

Sin embargo, existen otros lenguajes de programación que Java. Estos son

algunos ejemplos:

 C
 Ada
 PL/I
 Erlang
 Pascal
 Algol
 COBOL
 RPG
 Haskell
 Python
 HyperTalk
 IBM/360 Assembler
 MATLAB
 Ruby
 IBM RPG
 SmallTalk
 Morpho
 Perl

También podría gustarte