Modularidad
Unidad 5
¿Qué es un módulo?
• Las módulos, nos permiten dividir el trabajo que hace un programa, en
tareas más pequeñas separadas de la parte principal.
[Link]
¿Qué es un módulo?
• En programación, un módulo es una sección de un programa que
realiza un proceso de manera independiente al resto del programa.
[Link]
¿Qué es un módulo?
• Un módulo tiene tres componentes importantes:
• Los parámetros, que son los valores que recibe el módulo como entrada.
• El código del módulo, que son las operaciones que realiza el módulo.
• El resultado, que es el valor final que entrega el módulo.
[Link]
Programa en Java
Clase
F
l
u main
j
o
Proceso (50 líneas)
Proceso (50 líneas)
Proceso (50 líneas)
3 ejecuciones del mismo
proceso:
150 líneas de código.
Programa en Java
Clase
F
l
u main modulo1
j
o (Proceso de
Llamar a modulo1 50 líneas)
Proceso (50 líneas)
(1 línea)
Llamar a modulo1
Proceso (50 líneas)
(1 línea)
Llamar a modulo1
Proceso (50 líneas)
(1 línea)
3 ejecuciones del mismo
proceso con módulos:
53 líneas de código.
Flujo de ejecución (1 llamada al módulo)
El invocador (main)
Clase se pone en pausa y
se transfiere el flujo
de ejecución al módulo1.
F
l
u main F
j
l
o modulo1 u
Llamar a modulo1 (50 líneas) j
o
Se regresa el flujo de ejecución
al invocador (main) y continúa
en la instrucción en la que se
quedó.
Ir a jGrasp: programa para mostrar el
flujo de ejecución con una sola llamada
al módulo (P01).
Flujo de ejecución (varias llamadas al
módulo)
Clase
F
l
u main
j F
o modulo1 l
u
Llamar a modulo1 (50 líneas) j
o
Llamar a modulo1
Llamar a modulo1
Ir a jGrasp: programa para mostrar el
flujo de ejecución con varias llamadas al
mismo módulo (P01).
Flujo de ejecución (llamadas a varios
módulos)
Clase F
modulo1 l
u
F (50 líneas) j
o
l
u main
j
o
Llamar a modulo1
F
l
modulo2 u
j
Llamar a modulo2 o
Llamar a modulo3 F
l
modulo3 u
j
o
Flujo de ejecución (llamadas a varios
módulos)
Ir a jGrasp: programa para mostrar el flujo de ejecución con
llamadas a varios módulos (P01).
Clasificación de los módulos
Clasificación de módulos
• Los módulos se clasifican en dos tipos:
• Los métodos: son módulos que NO retornan ningún valor a quien los invoca.
• Las funciones: son aquellos módulos que SÍ retornan un valor a quien los
invoca. Es obligatorio el uso de la sentencia return.
Métodos
Existen 2 tipos:
• Sin parámetros
• Con parámetros
Método (sin retorno) sin parámetros.
Clase
metodo1
F
l
u main
j Todas las E
o
operaciones se j
Llamo a metodo1 realizan en el e
c
método: u
c
i
Entrada ó
Proceso n
Salida
Ir a jGrasp: crear método sin parámetros.
Método (sin retorno) con parámetros.
Clase
metodo1
tros.
ráme
main
7, 9 Envío
de pa
El método recibe E
Entrada
valores desde el j
Llamo a metodo1 invocador, pero e
c
no retorna u
ningún resultado. c
i
ó
Proceso n
Salida
Ir a jGrasp: crear método con
parámetros.
Funciones
Existen 2 tipos:
• Sin parámetros
• Con parámetros
Función (con retorno) sin parámetros.
Clase
f1
main
La función NO E
recibe valores j
Llamo a f1 desde el e
c
invocador, pero u
retorna un c
i
resultado. ó
Ret n
orn
o de
valo
res Entrada
Proceso
16
Salida
Ir a jGrasp: crear función sin parámetros.
Función (con retorno) con parámetros.
Clase
f1
tros.
ráme
de pa
main
7, 9 Envío
La función recibe E
Entrada
valores desde el j
Llamo a f1 invocador, y e
c
además retorna u
un resultado. c
i
ó
n
Ret
orn
o de
valo
res
Proceso
16
Salida
Ir a jGrasp: crear función con
parámetros.