Está en la página 1de 8

República Bolivariana de Venezuela

Ministerio del Poder Popular para la Educación Universitaria


Universidad Politécnica Territorial de Estado Mérida Kleber Ramírez
Núcleo Tucani Edo Mérida

PROGRAMACIÓN
MODULAR

Profesor(a): Alumno(a):
Mia khalifa Michell Manzanillo
ÍNDICE

Pág.

INTRODUCCION……………………………………… 3
PROGRAMACIÓN MODULAR
 FUNCIONES PROCEDIMIENTO………………… 4
5
 DEFINICIÓN Y DECLARACIÓN……………..…..

 AMBITO DE VARIABLES…………………………. 6

 DATOS LOCALES Y GLOBALES…………………. 7

 LLAMADA A UNA FUNCIÓN Y PASE DE PARAMETROS.


8
……………………..

CONCLUSION…………………………………………… 9
INTRODUCCIÓN

La programación modular está presente desde los primeros tiempos de la


programación como disciplina. De hecho existía programación modular antes
de existiera programación estructurada para poder abordar problemas
complejos.
Cuando se requieren resolver problemas más complejos, en los que el número
de instrucciones aumenta, existen técnicas que permiten resolverla de forma
eficiente estos problemas, facilitando al programador la construcción de la
solución.
Se puede definir a la programación modular como aquella que usa el concepto
de dividir un problema complejo en subproblemas más pequeños, hasta que
estos sean fáciles de tratar y resolver por separado. Así la solución de los
subproblemas en conjunto dan como resultado la solución del problema
completo (López Román, 2003).
Aplicando este principio a la hora de hacer un programa, entonces habría que
dividir el programa en “subprogramas” que realicen tareas específicas. Es
importante considerar que para poner en práctica la modularización, es
necesario un mecanismo que permita aplicarla en los lenguajes de
programación; este mecanismo existe prácticamente en todos los lenguajes y
consiste en la posibilidad de definir tareas específicas como módulos de
código independientes del programa principal. En consecuencia estos módulos
de código independientes del programa deben poder invocarse desde el
programa o módulo principal para que empiecen a trabajar y deben acabar
devolviendo el control al programa o módulo principal cuando terminen de
ejecutarse.
La programación modular permite:
a) Dividir la complejidad de un problema convirtiendo problemas complejos
en un conjunto de problemas más simples y por tanto más sencillos de
implementar.
b) Reutilizar el código de un programa en cualquier momento de la ejecución
del mismo.
Evidentemente la división de un problema en módulos no tiene por qué ser ni
única ni obligatoria, pero si es claramente aconsejable a la hora de abordar un
problema para lo cual que se aplican diversos conceptos y técnicas entre las
que se encuentran el diseño descendente, el proceso de modularización y el
paso de parámetros, por mencionar algunos. A continuación se abordaran cada
uno de ellos.
Funciones y procedimientos.

Al igual que la programación estructurada, las funciones y procedimientos


surgieron con la idea de mejorar el mantenimiento de los programas, y
aumentar la productividad de los programadores.

Son utilizados para evitar la duplicidad de código y facilitar la legibilidad del


mismo.

Un método para solucionar un problema complejo es dividir el problema


principal en subproblemas, bajo el lema atribuido a Julio César, divide et
vincis.

Si los subproblemas son susceptibles de ser divididos de nuevo se repite el


proceso hasta encontrar soluciones sencillas.

Este método también se conoce como diseño top-down, y consiste en ver un


problema complejo como la suma de múltiples problemas más simples.

Normalmente las partes que componen dicho problema pueden implementarse


independientemente mediante funciones o procedimientos.

Funciones.

Una función es un subprograma que recibiendo uno o más datos de entrada


(parámetros) devuelven un único resultado que irá asociado al nombre de la
función.

Una función necesita ser definida y declarada una vez y puede ser llamada
tantas veces como se desee.

Existen 2 tipos de funciones:

Las que vienen definidas por el lenguaje de programación por ejemplo


funciones matemáticas de cadenas de caracteres. Vienen incorporadas en el
propio lenguaje (en librerías normalmente) y el usuario puede utilizarlas a
través de llamadas.
Las definidas por el usuario, siendo éste el responsable de declararlas,
definirlas e incluso crear sus propias librerías. Una vez creadas, cuando las
necesite, sólo tiene que llamarlas.

La declaración de una función es lo primero que hay que realizar antes de


definir y utilizar una función. Aquí se indica el nombre de la función, el tipo
de valor retornado y el número y tipo de los parámetros que utilizará. Los
parámetros son variables que permite recibir o entregar valores entre el
programa que hace la llamada y la función.

Los prototipos sirven para que el compilador del lenguaje pueda chequear si
los parámetros y el valor de retorno de la función son los adecuados.

La definición de una función consta de dos partes:


Una cabecera formada por el tipo de dato que devuelve la función, el nombre
de ésta y los parámetros (formales) de dicha función.

El cuerpo de la función: donde se definen las variables locales y las acciones


o instrucciones a realizar.

La definición de una función tendrá el siguiente formato:

<Tipo del resultado>función nombre_funcion (parametro1,


parametro2, etc)
[Declaraciones locales]
Inicio
<Acciones> //cuerpo de la función
Fin

Donde:

Tipo de resultado es el tipo que devuelve la función

nombre_funcion es el nombre asociado a la función

parametro1 al parámetro N es la lista de parámetros formales o argumentos.


Siempre es necesario reflejar el tipo de cada parámetro.

<Acciones> son las instrucciones que constituyen la definición de la función y


que debe de contener una acción que asigne un valor al nombre de la función.
Los argumentos de la declaración de la función se denominan parámetros
formales: son nombres de variables, nombres de otras funciones o
procedimientos, que sólo se utilizan dentro del cuerpo de la función.

La llamada a una función se realiza a través de su nombre, seguido de los


argumentos que se quieran introducir como datos de entrada.

nombre_funcion (lista de parámetros actuales)

Dónde:

Nombre de función es la función que llama


Lista de parámetros actuales son las constantes, variables, expresiones,
valores de funciones, nombres de funciones o procedimientos.

Los argumentos utilizados en la llamada a la función se denominan


parámetros actuales, pueden ser constantes, variables, valores de funciones o
nombres de funciones o procedimientos.

La llamada a una función puede hacerse desde el programa principal o desde


otro módulo del programa, pero siempre dentro de una expresión de la misma
forma itria el dato que proporciona la función como resultado.

Cada vez que se llama a una función, se establece automáticamente una


correspondencia entre los parámetros formales y los parámetros actuales. Es
decir, se emparejan según su posición en la lista.

Esto requiere que ambas listas tengan el mismo número de parámetros y que
coincidan en el tipo.

Para realizar las acciones, pueden ser necesarias variables intermedias, la


cuales serán definidas dentro de las acciones se las llamará variables locales.
Estas variables sólo se utilizan en el ámbito de la función y no tienen
significado en el programa principal.

Procedimientos
La estructura de un procedimiento es similar a la de una función, pero existen
varias diferencias entre ellos:
• Los procedimientos pueden devolver más de un valor como resultado, o
incluso ninguno, mientras que en las funciones siempre se devolvía uno.

• La devolución de resultados no se hace a través del nombre de


procedimiento sino a través de los parámetros

• La llamada a un procedimiento se hace desde una instrucción concreta, no


desde una expresión.
Tanto la entrada de información al procedimiento, como la devolución de los
resultados desde el Programa llamador, se realizarán a través de los
parámetros.
Alcance de las variables.
Cuando se consideran varios módulos de software y no un solo programa
principal, se pueden declarar variables tanto en el contexto global del
algoritmo, como de manera local en cada módulo a lo que se le conoce como
alcance de las variables, en otras palabras esto permite identificar la zona del
programa donde una variable es accesible “conocida”. Desde este punto de
vista, las variables pueden ser de dos tipos: locales o globales.
11
Variables globales.
Son las que son accesibles desde cualquier punto del programa y se pueden
usar desde cualquier módulo o subprograma, esto lleva a considerar que la
variable puede usarse en cualquier parte del programa y su valor se puede
alterar incontroladamente, y si posteriormente es necesario usar la variable en
otra parte del programa con su valor original, se tendrá un error. El punto
donde se da el error es fácil de localizar, pero no lo es tanto el origen del
mismo. Este tipo de efectos colaterales produce errores cuyo origen es difícil
de trazar y localizar: La programación modular sugiere que se evite el uso de
variables globales

Variables locales.
Las variables locales sólo existen en un ámbito determinado del programa, por
ejemplo en un subprograma o en un bloque de sentencias. Solo pueden ser
utilizadas en el módulo donde fueron definidas (ver figura 7).
Entonces si son analizados los conceptos de variables globales y locales, es
posible resumir que cuando se usan variables locales, éstas son independientes
de las globales y de las de otros módulos.

También podría gustarte