Escolar Documentos
Profissional Documentos
Cultura Documentos
Área de Computación
Curso de C #
Facilitador:
Prof. Bassam Asfur
Programación Modular
¡Divide y Vencerás!
Programación Modular
● máxima cohesión
Un módulo debe ofrecer un grupo de servicios que sin lugar a dudas deben
ir juntos, por ejemplo:
La Clase Math
Algunas Ventajas
Un tipo de dato de retorno: tipo de dato del valor que la subrutina devolverá al
terminar su ejecución.
FUNCIONES
Parámetros de entrada
Permiten aportar datos a función o procedimiento por parte del algoritmo que le
invoca.
Parámetros de salida
El parámetro real asociado con un parámetro formal de este tipo debe ser
necesariamente una variable en la que almacenar el resultado devuelto por la
acción. Esa variable no tiene porque haber sido inicializada con anterioridad.
Parámetros de entrada/salida
1. Cada vez que se necesita operar con ciertos tipos de datos compuestos (como
registros o vectores) suele resultar necesario disponer de procedimientos para la
lectura de esos datos, otras para la visualización de los mismos y finalmente otras
que implementen las distintas operaciones necesarias.
Esto mismo ocurre con las operaciones que se deben ejecutar justo antes de
terminar el algoritmo (volcados a disco, etc.). Por otra parte, si las operaciones son
muy sencillas, no será probablemente interesante realizar este proceso.
Funciones y Procedimientos
6. Cuando en un algoritmo se repita más de una vez la misma tarea con una
diferencia pequeña, esta diferencia pequeña se representará en los parámetros de un
procedimiento o función que será capaz de adaptarse a todas las circunstancias en
las que pueda ser empleado.
En todo caso, hablar de diferencia pequeña implica que las instrucciones ejecutadas
son las mismas y que, por ejemplo la única diferencia se encuentra en el número de
veces que se ejecuta una composición iterativa o cuestiones muy similares que se
puedan parametrizar.
ÁMBITO DE VARIABLES
El ámbito de estas variables es global, es decir, que son visibles por cualquier
función y cualquiera de ellas puede modificar su valor. La vida de estas variables
va ligada a la del programa, se crean cuando empieza la ejecución del programa
y pueden ser utilizadas hasta que se acabe el mismo.
Cualquier otro dato cuyo uso sólo tenga sentido dentro de una función o
procedimiento, se declarará como una variable local a ésta, incluso en el caso de
que una variable similar con el mismo identificador y tipo se use en otros
procedimientos y funciones.
Tal y como se ha comentado con respecto a las variables globales, una variable
local de una función o procedimiento oculta a la variable global con el mismo
identificador.
Variables Globales y Locales
Variables estáticas: A pesar de que sólo pueden ser utilizadas por la función
donde han sido declaradas, no son destruidas al terminar ésta.
Por lo tanto, mantienen su valor para la próxima vez en que sea llamada la
función. Se declaran, precediendo el nombre del tipo por la palabra "static".
Variables Globales y Locales
EFECTOS LATERALES
En el paso de parámetros por referencia, en vez de trabajar con una copia de los
parámetros reales almacenada en la pila de ejecución, se trabaja directamente
sobre el parámetro real, por lo que cualquier modificación realizada sobre el
parámetro formal es repercutida automáticamente en el parámetro real.
Definición de funciones
Para crear una nueva función hay que definirla. Dentro de la definición fijamos
el nombre de la función, el tipo del resultado que devuelve, la lista de
argumentos y el cuerpo de la función, siguiendo la siguiente sintaxis:
· Nombre_de_la_función
Es el identificador de la función.
· Lista_de_parámetros_formales
Son una lista de variables precedidas de su tipo y separadas por comas. Estas
variables copian los valores de los argumentos que utilizamos cuando llamamos
a la función. Cuando la función no tiene argumentos se dejan vacíos los
paréntesis, o bien se pone entre ellos la palabra reservada void, para indicar
exactamente eso, que la función esta ‘vacía’ de argumentos.
Funciones
Llamada a las funciones
Para utilizar las funciones que hemos declarado, simplemente hemos de llamar a
la función por su nombre, pasándole entre paréntesis tantos valores (argumentos)
como parámetros formales hayamos definido.
Estos valores que utilizamos en la llamada, se van copiando sobre las variables
definidas como parámetros; por lo tanto ha de existir una correspondencia, no
sólo entre el número de valores y el número de parámetros, sino también entre
sus tipos.
La sentencia return