UNIDADES DEFINIDAS POR EL USUARIO

Al igual que las unidades que nos provee TURBO PASCAL como GRAPH, DOS, PRINTER, entre otras, las cuales nos brindan una serie de funciones y procedimientos que facilitan enormemente el desarrollo de un programa, uno puede crear sus propias librerias de herramientas para usarlas en una infinidad de programas que facilitan el control y depuración de estos

Una unidad es una agrupación lógica de declaraciones que se compila por separado y que es accesible por otros programas y unidades, las unidades pueden contener tipos, constantes, variables y subprogramas (funciones y procedimientos) todas las declaraciones dentro de una unidad son generalmente dependientes de otra unidad ya sea proporcionada por PASCAL o creadas por el usuario.

 

Las unidades no son ejecutables por si solas, dependen del programa que las llama para poder realizar su función.

 

VENTAJAS

MODULARIDAD: Las unidades parten un programa en trozos más pequeños

REUTILIZACION: Toda la serie de instrucciones de una unidad estan disponibles para otro programa o unidad, dado esto, constituyen librerias de funciones y procedimientos reutilizables

OCULTAMIENTO DE INFORMACION: Una unidad al ser compilada, toma la extensión TPU, cuando un programa las utiliza no tiene acceso al código fuente en el que se implemento

{Este texto fue tomado del libro Turbo Pascal 7.0, manual de referencia stephen k. O’brien steve namerof Editorial Osborne McGrawHill pag 17}

COMO CREAR UNA UNIDAD

Partamos de la idea fundamental de que una unidaa es una estructura similar a un programa normal con unas pequeñas diferencias...

SINTAXIS

UNIT Nombre_unidad;

INTERFACE

USES Unidades a Utilizar

Listado de nombres de funciones y procedimientos a utilizar o implementar la unidad.

IMPLEMENTATION

Desarrollo e implementación de procedimientos y funciones

BEGIN

Código de inicialización

END.

 

Ejemplo:

UNIT PRIMERA;

INTERFACE

USES CRT;

PROCEDURE ESCRIBE_TEXTO(CADENA:STRING);

IMPLEMENTATION

PROCEDURE ESCRIBE_TEXTO(CADENA:STRING);

BEGIN

CLRSCR;

TEXTCOLOR(YELLOW);

WRITELN(CADENA);

END;

END.{Final de la unidad}

Este bloque de código se compila a disco pero no se corre, para lograr tal objetivo, haz los siguientes pasos:

F10

Compile

En destination presionar ENTER para que aparezca DISK

Presiona F9 y listo, Aparecera un letrerito que traducido dice                      Compilando a Disco

Ahora editemos el programa que va a llamar a la unidad

PROGRAM Unidades;

USES crt, primera;{Llama a la unidad compilada como PRIMERA.TPU}

VAR

    Cadena : STRING;

BEGIN

    TEXTCOLOR(LIGHTBLUE);

    Cadena:=’FELIZ DIA’;

    Escribe_Texto(CADENA);{Invoca a el procedimiento definido en la      unidad}

    READKEY;

END.

Como las unidades se pueden invocar desde otros programas (concepto de reutilizabilidad), llamemosla ahora desde otra aplicación

PROGRAM OTRO_USO;

USES crt, primera;

VAR

    Titulo : String;

BEGIN

    TEXTBACKGRUND(LIGHTMAGENTA);

    Titulo := ‘Menu Principal’;

    Escribe_texto(Titulo);

    READKEY;

END.

Usa la siguiente unidad cada vez que desees centrar texto en la pantalla, con base en esta y cuando ya hallas aprendido a manejar el modo gráfico sería muy bueno que desarrollaras una unidad para hiciera lo mismo en este modo.

UNIT Centrado;
INTERFACE
    PROCEDURE Centrar(Texto : String; Fila : Integer);

IMPLEMENTATION
USES Crt;
VAR

    Columna : Integer;

PROCEDURE Centrar(Texto : String; fila : Integer);
    BEGIN
        Columna := (80 - Length(Texto)) DIV 2
        GotoXY (Columna, fila);
        Write(Texto);
    END;

BEGIN
END.

 

Ahora llamemos la unidad desde un programa:

Program usa_otra_unidad;

Uses crt,centrado;

var

cadena:string;

begin

clrscr;

cadena:='Tutorial de Programación';

centrar(cadena,12);{Centra el texto en la mitad de la pantalla}

{No se olvide que el 12 hace referencia a las filas}

readln;

end.

NOTA: Una vez compiladas las unidades quedan con la extensión TPU (Turbo Pascal Unit), en el caso de los ejemplos aparecerán así:

CENTRADO.TPU

PRIMERA.TPU

CMR_mouse.gif (8658 bytes)

 

 paleta2.wmf (4198 bytes)A continuación te muestro una práctica unidad que habilita el mouse o ratón. Esta es usada por un programa llamado pintura el cual simula las principales funciones del PAINT de Windows 95, tiene un procedimiento que evalua constantemente la posición del ratón en la pantalla y de acuerdo a esto realiza las acciones correspondientes (similar como lo hace cualquier aplicación de Windows); la activación de las herramientas se hace con el boton izquierdo y el cambio de COLORES con el derecho.

Con el proposito de despertar tu creatividad, se le han deshabilitado algunas de las herramientas para que las diseñes e implementes a tu gusto.

PROGRAMA PINTURA

Ver Código Fuente

 Ver Ejecutable

UNIDAD MOUSE

Ver Código Fuente


Anterior Pulsa aquí para regresar

Siguiente Pulsa aquí para continuar

Indice Presiona aquí para regresar al índice