Sei sulla pagina 1di 5

TEMA_15 -------------- Mdulos

1. Concepto de mdulo Un mdulo es un fragmento de programa desarrollado de forma independiente (diseado y compilado de forma independiente del programa que lo va a utilizar). El concepto de mdulo est ntimamente asociado a la abstraccin de datos. Cuando utilizamos un mdulo a un programa, slo hay que saber que hace el mdulo y sus funciones, pero no tenemos por qu saber cmo est implementado. 2. Especificacin y realizacin Al igual que en cualquier elemento abstracto, en un mdulo podemos distinguir: - La especificacin Qu hace el mdulo? (Interfaz o interfaz) - La realizacin Cmo lo hace? (Implementacin o realizacin) Cuando un programa hace uso de otros mdulos hay que tener en cuenta los siguientes conceptos: - Compilacin separada: El proyecto o programa estar formado por varios ficheros fuente, cada uno de los cuales se compilar por separado. - Compilacin segura: Al compilar un fichero fuente, el compilador comprueba que el uso de los elementos de otros mdulos es consistente con la interfaz. - Ocultacin: Al compilar un fichero fuente el compilador no utiliza informacin de los detalles de realizacin de los elementos de otros mdulos. 3. Mdulos en C + Para crear un mdulo en C + -, habr que crear dos ficheros: - El fichero de interfaz (nombre_modulo.h) - El archivo de implementacin (nombre_modulo.cpp) Archivo de interfaz (nombre_modulo.h) # Pragma once Definicin de constantes Definicin de tipo Definicin de variables globales Definicin de procedimientos y funciones Archivo de implementacin (nombre_modulo.cpp) # Include <stdio.h> # Include "nommodul.h .......... Implementacin o codificacin de los procedimientos y funciones definidos en el mdulo interfaz. Programa principal # Include <stdio.h> # Include "nombre_modulo.h .......... int main () { .......................... }

EJEMPLO 1: UTILIZACIN DE MDULOS

EJEMPLO 2: UTILIZACIN DE MDULOS Supongamos que tenemos el siguiente diseo de mdulos: Programa principal Moduls3.cpp Librera propia Tabulacio.h Tabulacio.cpp

Al igual que el ejemplo de antes creamos un proyecto de consola y le aadimos los 3 ficheros que formarn el proyecto: 3

Archivo de interfaz Tabulacio.h

Archivo de implementacin "Tabulacio.cpp

Archivo programa principal Moduls3.cpp

4. DATOS ENCAPSULADOS Cuando definimos un tipo abstracto de datos, luego hay que declarar variables de ese tipo para poder trabajar con ellas. Los datos encapsuladas nos permiten declarar dentro de un mdulo una variable y evitar una declaracin explcita externa. Por ejemplo, el mdulo de implementacin pondramos: static Untipo valorInterno; static void Operacion3 () { ..... valorinterno ...... } void Operacion1 () { ..... valorinterno ....... } void Operacion2 () { ..... Valorinterno ...... } Hay que recordar que por defecto las variables y subprogramas definidos en el nivel ms externo de un mdulo son globales por defecto. Para que sean tratados como locales hay poner delante de ellos la palabra static.

Potrebbero piacerti anche