0% encontró este documento útil (0 votos)
38 vistas14 páginas

Algo Prac

La programación modular permite dividir un problema complejo en módulos o subproblemas más simples mediante un enfoque de diseño descendiente, permitiendo la solución del problema original. Cada módulo resuelve un subproblema específico y puede comunicarse con otros módulos a través de interfaces bien definidas. Esta técnica facilita la comprensión, modificación y reutilización del código.
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)
38 vistas14 páginas

Algo Prac

La programación modular permite dividir un problema complejo en módulos o subproblemas más simples mediante un enfoque de diseño descendiente, permitiendo la solución del problema original. Cada módulo resuelve un subproblema específico y puede comunicarse con otros módulos a través de interfaces bien definidas. Esta técnica facilita la comprensión, modificación y reutilización del código.
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
Está en la página 1/ 14

PROGRAMACIÓN MODULAR

1. INTRODUCCIÓN:
La programación modular es un paradigma de programación que consiste en dividir un
programa en módulos o subprogramas con el fin de hacerlo más legible y manejable
Se presenta históricamente como una evolución de la programación estructurada para
solucionar problemas de programación más grandes y complejos de lo que ésta puede
resolver.
Un módulo es cada una de las partes de un programa que resuelve uno de los su
problemas en que se divide el problema complejo original. Cada uno de estos módulos
tiene una tarea bien definida y algunos necesitan de otros para poder operar. En caso de
que un módulo necesite de otro, puede comunicarse con éste mediante una interfaz de
comunicación que también debe estar bien definida.
Uno de los problemas habituales del programador ocurre cuando los programas alcanzan
un tamaño considerable en cuanto a línea de código. El problema se puede volver tan
complejo que fuera inabordable. Para mitigar este problema apareció la programación
modular.
En ella el programa se divide en módulos de tamaño manejable. Cada módulo realiza una
función muy concreta y se pueden programar de forma independiente. Se basa en
concentrar los esfuerzos en resolver problemas sencillos y una vez resueltos, el conjunto
de esos problemas soluciona el problema original. En definitiva la programación modular
implementa el paradigma divide y vencerás, tan importante en la programación. El
programa se descompone en módulos. Los módulos se puede entender que son pequeños
programas. Reciben datos y a partir de ellos realizan un cálculo o una determinada tarea.
Una vez el módulo es probado y validado se puede utilizar las veces que haga falta en el
programa sin necesidad de tener que volver a programar.
Si bien un módulo puede entenderse como una parte de un programa en cualquiera de sus
formas y variados contextos, en la práctica se los suele tomar como sinónimos
de procedimientos y funciones. Pero no necesaria ni estrictamente un módulo es una
función o un procedimiento, ya que el mismo puede contener muchos de ellos, no debe
confundirse el término "modulo" (en el sentido de programación modular) con términos
como "función" o "procedimiento", propios del lenguaje que lo soporte.
Cada programa contiene un módulo denominado programa principal que controla todo lo
que sucede; se transfiere el control a sub-módulos (posteriormente se denominarán
subprogramas), de modo que ellos puedan ejecutar sus funciones; sin embargo, cada
Sub-modulo devuelve el control al módulo principal cuando se haya completado su tarea.
Si la tarea asignada a cada sub-modulo es demasiado compleja, este deberá romperse en
otros módulos más pequeños. El proceso sucesivo de subdivisión de módulos continua
hasta que cada módulo tenga solamente una tarea específica que ejecutar. Esta tarea
puede ser entrada, salida, manipulación de datos, control de otros módulos o alguna
combinación de estos. Un módulo puede transferir temporalmente (bifurcación) el control a
otro modulo; sin embargo, cada módulo debe devolver el control al módulo del cual se
recibe originalmente el control.

2. ¿QUÉ ES LA PROGRAMACIÓN MODULAR?

La programación modular permite dividir un problema en


módulos o sub-problemas más simples que permitan la
solución del mismo, si estos no llegaran a ser suficiente,
tiene que seguirse dividiendo en sub-problemas hasta que
se halle el resultado y poder ser manipulados con cualquier
lenguaje de programación. A esta técnica de programación
comúnmente se le denomina “Top Down” o “descendente”
y “divide y vencerás”.

El diseño descendiente es aquel que comienza desde lo más general hasta lo más específico,
en cuanto son problemas grandes, a los cuales se convertirán en sub-problemas muchos más
pequeños.

Los módulos funcionan de manera que puedan resolver los sub-problemas creados o las
divisiones que los mismos poseen, permitiendo trabajar en conjuntos para el desarrollo de la
solución. Ya que este proviene de propuestas tecnológicas que son adoptadas por una
comunidad de programadores cuyo núcleo central es incuestionable en cuanto a que
unívocamente trata de resolver uno o varios problemas claramente delimitados, con
programaciones grandes y complejas.
Cabe destacar que este tipo de programación es guiada o estructurada por una evolución de
programas que han sido estudiados y manejados a través del tiempo.

Este tipo de programación, para poder resolver un problema tiene que ser dividido a sub-
problemas

Teniendo en cuenta sus características, algunos módulos no trabajan en común, pero a través
de una serie de comunicaciones detalladas, pueden manejarse y entenderse correctamente.

Características:

 Fácil comprensión a causa de la modularidad


 Reutilización de módulos
 Disminuye la complejidad del algoritmo
 Disminuye el tamaño total del programa
 Facilidad de localizar los errores en el algoritmo
 No se hay inconveniente modificación de algún módulo ya que no afecta a los demás
 Da la mejor comprensión del problema y reduce el código.
 Debe tener claras las dependencias del lenguaje (Esto permite cambiar de lenguaje en
medio del diseño sin ningún trauma).
3. ¿QUÉ SON LAS FUNCIONES? ¿CÓMO SE UTILIZAN Y DECLARAN?
Un sub-algoritmo función es un sub- algoritmo que recibiendo o no datos devuelve un único
resultado. Tienen su origen ligado al concepto matemático de función de una o más variables.
Ejemplo de este tipo de sub- algoritmos son las llamadas funciones internas (sin, cos, abs).
Las cuales pueden usarse en expresiones algorítmicas como si se tratara de variables.

Otros ejemplos de funciones matemáticas:

Donde x, y, z: son los parámetros formales o ficticios, es decir permiten expresar la ley o
“forma” de la función. Las funciones pueden tener uno o más parámetros formales (datos)
pero siempre devuelven un único resultado. Las funciones son evaluadas utilizando
parámetros actuales o reales, es decir los valores con los que se quiere evaluar la función:

Una función es un objeto del ambiente, con nombre, tipo y valor único. El tipo se asocia al
valor que retorna la función cuando es evaluada para un conjunto dado de valores de sus
argumentos.

 Lista de parámetros formales: contiene las variables que pasan alguna información
necesaria para que la función ejecute el conjunto de acciones.
 Tipo de resultado: señala el tipo de dato que devuelve la función.
 Declaración de variables: en este lugar se deben declarar los parámetros formales y
también aquellas variables que se usarán en la función.
 Cuerpo de la función: lo constituye el conjunto de acciones a realizar por la función.
 Retornar el resultado: el único resultado que devuelve la función puede ser un valor
constante, o una variable o una expresión válida, la cual debe colocarse entre
paréntesis al lado de la acción Devolver. Cuando se ejecuta esta acción se devuelve el
control del programa al lugar donde se ha llamado a la función.
 En este ejemplo se muestran dos formas posibles de utilización de la función potencia:
en el caso 1 la función potencia es empleada directamente dentro de la acción escribir,
mientras que en el caso 2 el valor devuelto por la función potencia es asignado en la
variable real z y es el valor almacenado en z el que luego se muestra.
4. ¿QUÉ SON LOS PROCEDIMIENTOS? ¿CÓMO SE UTILIZAN Y DECLARAN?
Un procedimiento o subrutina es un sub- algoritmo que recibiendo o no datos permite devolver
varios resultados, un resultado o ninguno. Un procedimiento está compuesto por un grupo de
sentencias a las que asigna un nombre (identificador o simplemente nombre del
procedimiento) y constituye una unidad de programa. La tarea asignada al procedimiento se
ejecutará siempre que se encuentre el identificador (nombre del procedimiento) en el conjunto
de sentencias que definen el programa.

La declaración de un procedimiento no indica a la computadora que ejecute las instrucciones


dadas, sino que indica a la computadora cuáles son estas instrucciones y dónde están
localizadas cuando sea necesario.

Este último procedimiento recibe como


información el radio del círculo y devuelve
el área del mismo. r es una variable de
entrada: tiene un valor definido
previamente (parámetro actual) A es una
variable de salida: no tiene un valor asignado previamente y su valor es definido en por el
conjunto de acciones del procedimiento.

 La posición adecuada de dónde escribir el procedimiento depende del lenguaje de


codificación elegido. En seudocódigo, será indistinto el orden en que se escriben el
algoritmo y los sub-algoritmos. En este ejemplo, adoptamos arbitrariamente escribirlo
luego del programa principal.

En los programas y procedimientos se puede usar variables globales y locales

 Variable local: Es una variable que se declara dentro de un subprograma, y se dice que
es local al subprograma. Y lo que la caracteriza es que su valor sólo está disponible
mientras se ejecuta el subprograma, el programa principal no tiene conocimiento alguno
de las variables locales
 Variable Global: Es una variable que se declara en la sección de declaración de
variables en el programa principal, a diferencia de las locales, su valor está disponible
tanto en el cuerpo del programa principal como en el de cualquiera de los subprogramas
declarados.
5. PLANTEAR EJEMPLOS EN SEUDOCÓDIGO O VISUAL BASIC PARA CADA CASO:
 FUNCIONES:
 PROCEDIMIENTOS:
6. CONCLUSIONES Y RECOMENDACIONES:
 Existen varias técnicas para poder programar como lo son la no estructurada y la
procedimental pero la programación modular es una de las más prácticas y útiles que
existen ya que le brindan al desarrollador una ayuda para trabajar más ordenadamente
y con mejor limpieza en el código.
 La programación modular es uno de los métodos de diseño más flexibles y potentes
para mejorar la productividad de un programa.
 Es importante el estudio de los contenidos de la asignatura Fundamentos de
Programación, pues son la base fundamental para la asimilación, comprensión y
puesta en práctica de los mismos en la resolución de problemas computarizados
mediante los lenguajes de programación bajo el paradigma orientado a objetos.

7. BIBLIOGRAFÍA:
http://pnfi03031algoritmicayprogramacion.blogspot.com/2011/03/programacion-modular-
funciones-y.html
https://sites.google.com/site/basesdelaprogramacion/unidad-iii
http://usuarios.fceia.unr.edu.ar/~sorribas/info1_notas_de_clase_3.pdf
http://teleformacion.edu.aytolacoruna.es/PASCAL/document/modular.htm#parametros
https://fdoperez.webs.ull.es/doc/matematicas5.pdf
https://es.wikipedia.org/wiki/Programaci%C3%B3n_modular
http://www.aprenderaprogramar.com/index.php?
option=com_content&view=article&id=129:programacion-modular-y-definicion-de-
recursividad-o-autollamada-diagramas-de-flujo-ejemplos-cu00204a-&catid=36:curso-
qbases-de-la-programacion-nivel-iiq&Itemid=60
8. ANEXOS:

También podría gustarte