|
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. Obrien 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 UtilizarListado 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: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;
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.
![]()
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
![]()
![]()
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 Ejecutable
UNIDAD MOUSE
Ver Código Fuente