delphi rincon

23
Borland Delphi Indice Titulo Pagina Introducción 3 Programación Orientada a Objetos 4 Encapsulación 4 Herencia 4 Polimorfismo 5 ¿Que es Delphi? 7 Memoria Principal 8 Sistemas Operativos Soportados 8 Espacio Necesario en el Disco Duro 9 El entorno Delphi 9 La Ventana Principal 10 La Ventana de Programa 10 El Object Inspector 11 El Editor de Código Fuente 13 Desarrollo Visual de un Programa 14 Variables, Tipos de Datos y Constantes 15 Declaración de Variables 15 Asignación de Valores a Variables 17 Tipos de Datos Estándar 18 Instrucciones más Importantes 19 La Instrucción IF 19 La Instrucción CASE 21 1

Transcript of delphi rincon

Page 1: delphi rincon

Borland Delphi

Indice

Titulo Pagina

Introducción 3

Programación Orientada a Objetos 4

Encapsulación 4

Herencia 4

Polimorfismo 5

¿Que es Delphi? 7

Memoria Principal 8

Sistemas Operativos Soportados 8

Espacio Necesario en el Disco Duro 9

El entorno Delphi 9

La Ventana Principal 10

La Ventana de Programa 10

El Object Inspector 11

El Editor de Código Fuente 13

Desarrollo Visual de un Programa 14

Variables, Tipos de Datos y Constantes 15

Declaración de Variables 15

Asignación de Valores a Variables 17

Tipos de Datos Estándar 18

Instrucciones más Importantes 19

La Instrucción IF 19

La Instrucción CASE 21

1

Page 2: delphi rincon

La Instrucción REPEAT 23

La Instrucción WHILE 25

La Instrucción FOR 27

Diferencias entre Visual Basic y Delphi 29

Glosario de Términos 30

Dedicatorias y Consideraciones Finales 31

Bibliografía 32

Conclusión 33

Introducción

Inprise es una firma sobradamente conocida por la calidad de sus herramientas de desarrollo entre las quecabe destacar Borland C++, Borland C++ Builder, Borland Intrabuilder, Borland Jbuilder y sobretodoBorland Delphi.

Borland Delphi que represento la primera apuesta de Inprise por un entorno de desarrollo netamente visual,sigue evolucionando y lo hace convirtiéndose en una herramienta de ultima generación sumamente avanzada.El entorno de desarrollo de Borland Delphi es simple, flexible y potente al mismo tiempo, contando con ungran numero de componentes prefabricados que simplificarán de forma notable la creación de cualquieraplicación. El lenguaje de base de Borland Delphi es Object Pascal, una potente versión de Pascal que heredatoda la experiencia que Inprise ha adquirido durante mas de una década de desarrollo de compiladores de estelenguaje.

Algo que diferencia a Delphi de muchos otros competidores es el echo de tratarse de un compilador altamenteoptimizado, que genera código directamente ejecutable, no pseudo − código que debe ser interpretadoposteriormente en tiempo de ejecución. Esto tiene básicamente dos consecuencias: el ejecutable es másrápido, al no tener que ser interpretado en tiempo de ejecución y el tamaño total final de la aplicación suele serinferior ya que no es necesaria la distribución adicional del programa que interpreta y ejecuta el código al quese suele denominar Runtime.

Programación Orientada al Objeto

La programación orientada al objeto no es mas que una evolución de los lenguajes estructurados hacia unasimplificación del mantenimiento del código, así como mayores posibilidades de reutilización de este.

Generalmente la POO se asocia rápidamente con lenguajes como C++, pero Object Pascal, de ahí su nombrecuenta con todos los componentes básicos de un lenguaje orientado a objetos con la encapsulación, la herenciay el polimorfismo.

Encapsulación

Generalmente partiendo de un correcto diseño de los tipos de objetos, los datos que se declaren en el interiordel objeto solo serán manipulados por los métodos de ese objeto.

A esta característica de los objetos se la conoce como encapsulación, ya que en cierta forma aísla los datos y

2

Page 3: delphi rincon

métodos de un objeto, como si se tratase de una cápsula, impidiendo así que sean usados unos parámetroserróneos al llamar a un método o que un determinado procedimiento manipule las variables que no son.

La encapsulación es uno de los pilares de la POO, usada correctamente facilitara en gran medida elmantenimiento del código, ya que tomada la definición de un objeto y la implementación de los métodospodemos trabajar sobre ellos sabiendo de antemano que forman una entidad totalmente independiente delresto de la aplicación.

Herencia

La encapsulación es la característica de la POO que permite asociar código y datos formando objetosautosuficientes y, por lo tanto, constituye uno de los puntos principales de los lenguajes orientados a objetos.Otra de las características es la reutilización del código para lo cual tenemos que utilizar la herencia.

A la acción de crear un tipo de objeto a partir de otro ya existente se le llama derivación. Al tipo original se leconoce como tipo base o ascendente, mientras que al nuevo tipo, que hereda las características del anterior, sele llama tipo derivado o descendente. Al hacer que un tipo derivado herede todos los miembros del tipo baseserá heredado también los miembros de datos y los métodos.

Polimorfismo

La propia palabra, polimorfismo, nos indica que se trata de algo capaz de presentarse o adoptar diversasformas, lo que traducido a un lenguaje orientado a objetos le corresponde con un objeto que puedecorresponder a distintos tipos.

Suponga que hemos creado un tipo Tvehiculo que vamos a utilizar como base para derivar tres descendientes:Tbicicleta, Tciclomotor y Tautomovil, de las cuales a su vez se van a derivar otros tipos, constituyéndose lajerarquía de tipos que se muestra:

Aunque un deportivo, un turismo y un coche de competición son obviamente distintos, tienen muchas cosasen común: dos ejes, cuatro ruedas, etc. En realidad, todos son coches. Lo mismo ocurre con un camión, unautobús o un coche, que a pesar de ser distintos siguen teniendo muchas cosas en común y se caracterizantodos por ser automóviles. Tanto un automóvil como una bicicleta o un ciclomotor pertenecen a una mismafamilia, la de los vehículos, a la que podríamos añadir múltiples medios mas, como puede ser el tren, barco,avión o el carro de caballos.

Analice detalladamente esta jerarquía, vera que si el tipo Tvehiculo incorpora un cierto miembro, este seráheredado por todos los demás tipos, ya que Tvehiculo es la base de todos ellos. Los miembros de Tautomovil,sin embargo son solo herederos por sus descendientes directos e indirectos y no por el tipo Tbicicleta y susderivados. Por lo tanto, una variable del tipo Tvehiculo podría apuntar a un objeto cualquiera de esta jerarquía,ya que todos ellos contienen en su interior un Tvehiculo.

Una variable del tipo Tautomovil podría apuntar a un Tcamion, Tautobus o Tcoche, incluso a un Tturismo oTberlina, por el contrario no podrá apuntar a un objeto Tbicicleta.

Al utilizar una variable de un cierto tipo que apunte a un objeto de otro tipo, permite manipular objetos dedistintos tipos de una genérica, ahorrando mucho código.

¿Qué es Delphi?

Delphi es una poderosa herramienta de desarrollo de programas que permite la creación deaplicaciones para Windows 3.1/3.11, 95, 98 y NT.

3

Page 4: delphi rincon

Las aplicaciones pueden colocarse de forma muy sencilla en la pantalla según el principio demódulos. Para ello se dispone de una paleta dotada de una gran variedad de componentes, algo asícomo los bloques de construcción de cada programa, esta paleta es denominada por Borland VCL*.

Esta VCL es mucho más poderosa que la de Turbo Pascal o las conocidas OWL* 1.0 de BorlandPascal 1.0, y ofrece una abstracción mucho mas alta del sistema operativo. El programador estotalmente independiente de las particularidades de Windows como manejadores, punteros yfunciones API*. La programación se hace con los cómodos componentes de Delphi y no con lascomplejas llamadas al sistema de Windows. Esto simplifica enormemente la hasta ahora poco claraprogramación bajo Windows.

A diferencia de otras herramientas de desarrollo programables (Visual Basic, Toolbook, etc.), conDelphi es posible crear de forma sencilla nuevos componentes que pueden entonces incorporarse a enla paleta de los componentes ya existentes y que pueden utilizarse de la misma forma. La VCL puedeestructurarse libremente y así adaptarse totalmente a las situaciones de programación.

Delphi no solo dispone de componentes para la sencilla creación de entornos como cuadros de lista,conmutadores o cuadro de dialogo terminados, sino que cubre con sus componentes muchos temas deprogramación bajo Windows: se incluye entre los mismos un complejo centro de control para lacreación de aplicaciones multimedia así como una gran variedad de componentes que actúan debajodel entorno, como tipos de listado muy variados y contenedores generales de datos. También hayherramientas de comunicación DDE y OLE a través de las que se pueden crear vínculos de datos ycomandos con otras aplicaciones. Uno de los aspectos mas destacados lo constituyen los componentesque Borland ha incluido en Delphi para el desarrollo rápido y sencillo de aplicaciones muy poderosasde bases de datos. No se esta limitado a un formato de datos determinado, sino que se tiene acceso ade 50 tipos de formatos de datos diferentes a través de controladores suministrados por terceros(IDAPI y ODBC*). Entre estos se encuentran todos los estándares importantes de bases de datos en elárea del PC como XBase, Paradox, Access, etc. Pero también es posible de acceder en forma muycómoda a servidores de bases de datos de otros sistemas (por ejemplo UNIX) por medio de SQL*.

Delphi dispone del Object Pascal, un lenguaje de programación muy poderoso que esta sin dudas a laaltura del C++ y que incluso lo supera en algunos aspectos. Este lenguaje surge a partir del desarrollode Borland Pascal 7.0, un lenguaje que ocupa un lugar muy importante en la programación deordenadores personales. El Object Pascal es totalmente compatible con Borland Pascal 7.0, lo quepermite que programas que sean desarrollados en este ultimo puedan ser convertidos a Delphi.

Las aplicaciones terminadas quedan disponibles como archivos ejecutables (EXE) que puedenutilizarse solos y sin bibliotecas adicionales. Consecuentemente, la velocidad con la que puedenejecutarse los programas creados es muy alta.

Delphi es una Two−Way−Tool, es decir una herramienta de dos direcciones, porque permite crearherramientas de dos formas: una de forma visual en la pantalla por medio de la función de arrastrar ycolocar (Drag & Drop), la otra es a través de la programación convencional, escribiendo el código.Ambas técnicas pueden utilizarse de forma alternativa o simultanea.

Memoria principal

También la dotación de memoria es un factor que no puede dejar de tenerse en cuenta en un producto comoDelphi, que utiliza la memoria de forma tan intensiva.

Con 4 MB casi no se podrá trabajar. Si con esa memoria logra iniciar Delphi (lo cual no siempre estagarantizado) el sistema estará ocupado la mayor parte del tiempo colocando datos y partes del programa en el

4

Page 5: delphi rincon

disco duro y leyéndolos entonces de nuevo desde el mismo. Mientras más grandes sean sus proyectos, mas seincrementará el tiempo de espera. Con 8 MB debe ser posible trabajar de forma aceptable con Delphi. Paragrandes proyectos con muchas imágenes será mejor trabajar con 12 MB. Pero si además de trabajar conDelphi quiere hacerlo simultáneamente con otros programas (por ejemplo, su programa preferido de dibujospara desarrollar sus imágenes propias) entonces se necesitaran16 MB o más de memoria.

Sistemas Operativos Soportados

Delphi necesita por lo menos Windows 3.1. El modo real de su procesador, Windows 3.0, no resulta adecuadocon él, Delphi no realizará su trabajo. También puede ejecutarse Delphi bajo Windows 95, Windows 98 yWindows NT.

Espacio Necesario en el Disco Duro

No debe olvidar que Windows también necesita constantemente espacio en el disco duro para el intercambiode datos y programas. Después de la instalación de Delphi debe disponerse al menos de 30 Mb para el archivode intercambio e Windows, si no quiere que el trabajo se convierta en un reto a la paciencia. Si Delphi secoloca en la misma unidad que la del archivo de intercambio, entonces debe tener en cuenta esta necesidad.

Al menos 10 MB tienen que reservarse para textos fuente y proyectos propios que se desean desarrollar conDelphi. Debido a la orientación gráfica del trabajo, se requieren grandes volúmenes de datos para imágenes defondo, conmutadores gráficos, etc. lo que hace que un proyecto pueda alcanzar fácilmente 400 KB o más.

En total si se pretende instalar una versión completa de Delphi, será necesario disponer de 120 MB de espaciolibre en el disco duro.

El entorno de Delphi

La eficacia de la VCL, es una de las bases en que se apoya el programador en el trabajo con Delphi. Pero¿para qué sirve la mejor biblioteca si no se dispone de ningún entorno adecuado para su utilización?Afortunadamente Borland ha procurado una segunda base sólida en forma de un entorno de trabajo de altorendimiento, diseñado únicamente con la ayuda de una biblioteca de clase moderna, es decir, la VCL misma.

El entorno de programación típico consta en Delphi de cuatro ventanas que comparten el espacio disponibleen la pantalla. Cada una de estas ventanas puede modificarse, cerrarse y volverse a abrir mediante el menúview. Se trata aquí de la ventana principal, el Object inspector, el editor de código fuente y, finalmente de unao varias ventanas de programa, que representan el entorno de un programa desarrollado por uno mismo.

La ventana principal

La barra de programa del margen superior de la pantalla representa la ventana principal de Delphi. Si secierra, todas las otras ventanas también finalizan su servicio. En la barra de menús de la ventana principalestán disponibles todas las ordenes relacionadas con el procesamiento de un proyecto concreto. La carga yalmacenamiento de proyectos pertenecen igualmente al menú, así como la ocultación de todas las ventanas yventanas adicionales (de ayuda) que están a disposición del programador en el entorno de desarrollo. Tambiénse encuentran aquí las ordenes para compilar y ejecutar un programa escrito por uno mismo.

5

Page 6: delphi rincon

La barra de herramientas −extensamente equipada− ocupa, con mucho, el área mayor de la ventana principal,en su mitad izquierda encontramos, de nuevo las funciones más importantes del sistema de menú, comobotones de herramientas.

Toda la parte derecha esta reservada para la representación de cada componente. Se simbolizan mediantevarios botones gráficos. La interpretación de cada gráfico se simplifica con un pequeño texto, que aparecerásiempre que el puntero del ratón se sitúe sobre alguno de los botones. Para aumentar aun la claridad, loscomponentes se han dividido en otras paginas y ordenado temáticamente en las secciones estándar, adicional,captura de datos, manejo de datos, diálogo, sistema, VBX y ejemplos. Se puede alternar de una sección a otracon la ayuda de las pestañas con inscripciones que aparecen en la parte inferior de las barras de herramientas.

La ventana de programa

un formulario para cada finalidad

La creación de entornos de programa, así como un parte significativa de la programación, tienen lugar enDelphi de forma puramente visual, es decir, uno simplemente toma el componente deseado de la barra deherramientas de la ventana principal y lo sitúa en una ventana especialmente destinada para ello, llamadoformulario formular. Naturalmente, en un programa se puede crear y utilizar cualquiera de dichos formularios.Tampoco hay ninguna diferencia entre diseñar una ventana principal o un dialogo.

Con un formulario se pueden reproducir el aspecto y comportamiento de todo tipo de ventanas, simplementecon especificar las propiedades correspondientes y/o escribir ampliaciones propias. Evidentemente aquí seencuentra el ajuste de tamaño y posición: con este fin, cada formulario posee, mientras se representa en elentorno de desarrollo (no necesariamente en el programa ejecutado), un borde que permite modificar laposición y el tamaño por los cuatro lados.

Mientras que el formulario representa solamente el marco de un programa, los componentes contenidos en el,se encargan de la interacción con el usuario. Los componentes que se utilizan mas a menudo son los cuadrosde texto, las listas de selección, o los botones de alternar, aunque también las barras de menú o de estadocuentan entre los posibles candidatos, solo por nombrar algunos ejemplos.

Una vez seleccionados e introducidos en el formulario, los componentes, como es natural, también se podránmodificar a voluntad posteriormente. Como propiedades principales cabría mencionar −del mismo modo queantes para el formulario− el tamaño y la posición. Con este fin muchos componentes poseen un borde que sehace visible mediante la pulsación del botón izquierdo del ratón y con cuya ayuda puede adaptarse a voluntadel tamaño en todas direcciones. La modificación de la posición se realiza con un simple Drag & Drop(arrastrar y colocar).

El Object Inspector

No obstante, malo seria para la eficacia del VCL que el tamaño y la posición fueran las únicas propiedadesque admitieran modificaciones. Afortunadamente, cada componente dispone de un gran numero deparámetros modificables, de modo que para su procesamiento, incluso con una sola ventana propia, basta: elObject Inspector.

En el Object Inspector se indican en orden alfabético todas las propiedades y eventos del componenteseleccionado en ese momento. Si se selecciona otro componente (por ejemplo, con la ayuda de la listadesplegable en la primera línea del Object Inspector, o bien mediante la pulsación directa sobre otro

6

Page 7: delphi rincon

componente del formulario), el contenido del Object Inspector se adapta al instante.

Las propiedades y eventos se representan en el Object Inspector en distintas paginas de la ventana con laayuda de las pestañas de la parte inferior de la ventana (o bien mediante CTRL + TAB) se puede escoger lapagina deseada. Cada pagina esta subdividida en dos mitades.

Consideremos primero la pagina de propiedades. Allí se encuentran, en la mitad izquierda, los nombres detodas las propiedades. Como ejemplo sirve aquí una propiedad presente en muchos componentes: Caption(título).

La mitad derecha contiene el valor actual de cada propiedad. Puede tratase de números, cadenas de caracteres,constantes determinadas, así como de gráficos y textos enteros. En caso de que la propiedad mencionadaarriba Caption, sea una cadena de caracteres se podría haber introducido, por ejemplo, la palabra Acerca de....Suponiendo que se estén manejando ahora las propiedades de un formulario, aparecerá el texto introducido enla barra de título de la ventana, mientras que en el caso de un botón de alternar, el texto aparecerá en forma deinscripción.

Como ya se ha mencionado, a la pagina de eventos del Object inspector se accede mediante la pulsación de lapestaña correspondiente en la parte inferior de la ventana o bien por medio del teclado CTRL + TAB.

En su mitad izquierda. La ventana contiene los nombres de todos los lugares de corte en los que se puedeañadir una rutina propia, como en el caso de las propiedades, esta lista de componentes también es distinta.Un evento que puede producirse en todos los componentes visibles es, por ejemplo, OnClick. Si se añade unarutina en ese lugar de corte de eventos, se producirá una llamada siempre que el usuario del programa pulse elbotón izquierdo del ratón sobre dicho componente.

Dentro de ese formato de código fuente debe escribirse el código del programa deseado. El nombre de larutina representa la conexión entre el evento del componente y el código fuente. Si se modifica el nombre deun evento en el Object Inspector, el nombre que le pertenece se adapta automáticamente en el código fuente.

Naturalmente, las rutinas de eventos pueden agregarse repetidas veces. Si se ha vinculado, por ejemplo, unaopción de menú con una rutina OnClick que se encarga de la apertura de un archivo, y se quiere disponer de lamisma función en un botón de alternar en la barra de símbolos, no es necesario escribir dos veces el código de

7

Page 8: delphi rincon

programa correspondiente. Basta con indicar asimismo el nombre de la rutina ya existente en el eventoOnClick del botón de alternar.

El editor de Código Fuente

Como se ha indicado anteriormente, en el editor de código fuente se encuentra el entorno creado por unomismo. También se integran aquí todas las rutinas de eventos definidas.

Delphi coloca para cada ventana diseñada un archivo de código fuente propio. Por lo tanto un proyecto constacomo mínimo de tantos archivos de código fuente como ventanas existan, mas el archivo de proyecto (con elque normalmente no debe hacerse nada). En programas grandes pueden aparecer fácilmente varias docenas deellos.

Por esta razón, el editor dispone de un administrador de paginas, realizado totalmente al estilo del resto delproducto con la ayuda de pestañas. Cada pagina contiene su propio archivo. Los archivos innecesarios puedencerrarse mediante la opción de menú File/Close file. Igual que en el Object Inspector, puede accederse a unapagina en concreto mediante la pulsación de la pestaña correspondiente, o bien con la combinación de teclasCTRL + TAB.

Naturalmente, el editor ofrece toda una serie de otras funciones que han sido desarrolladas especialmente paralas necesidades de los programadores.

Desarrollo Visual de un Programa

Delphi aplica su nuevo concepto de desarrollo. Combina las ventajas de una enorme biblioteca de claseorientada al objeto con una programabilidad extremadamente sencilla − ya que es visual −. Borland designa sunueva biblioteca de clase como VCL. Todo el entorno de una aplicación puede diseñarse con ella en solo unafracción de tiempo y sin conocimientos preliminares avanzados.

Ofrece una abstracción no conocida hasta la fecha de todas las singularidades especificas de Windows. Con elpropio sistema operativo prácticamente no se entra en contacto, a no ser que se programe a propósito paraello.

El núcleo de la VCL, son los ya mencionados componentes, todos los elementos de entorno y de programaslistos para el uso, que pueden insertarse fácilmente en la ventana correspondiente mediante Drag & Drop.

Con ello se aprovecha el principio que se emplea desde hace tiempo en el llamado Case − Tools*, es decir, eldesarrollo de programas a partir de módulos prefabricados, que deben enlazarse solo de una maneradeterminada. El tipo de enlace determina el desarrollo del programa.

En cuanto al procesamiento de programas creados de este modo, existen algunas diferencias. Unos ejecutan elprograma directamente mediante el intérprete en pasos individuales. Estos programas no son aptos para laejecución por si mismos, sino solo dentro del programa en que fueron desarrollados. La ejecución es muylarga. Por otra parte, otros crean un tipo de código intermedio comprendido y ejecutado por una bibliotecaRuntime desarrollada para ello. Visual Basic es un conocido ejemplo de esto. Desgraciadamente lasaplicaciones mas complejas también padecen aquí de falta de velocidad de ejecución.

En Delphi, por el contrario, se crea durante la compilación, un autentico código de programa legible para lamaquina, que puede ser procesado directamente por el procesador. La velocidad de los archivos EXE creadoses por consiguiente, alta, y puede competir perfectamente con programas escritos en C o en C++.

Variables, Tipos de Datos y Constantes

8

Page 9: delphi rincon

¿Qué son los identificadores?

Cualquier nombre que aparece en una aplicación Delphi y que no corresponde a palabras reservadas(denominadas palabras clave) es un identificador. Pueden ser nombres de variables, tipos de datos,procedimientos, funciones u objetos. En general puede seguirse la regla de que los identificadores se declaranen código de programa antes de su utilización, es decir, se informa al compilador sobre su presencia. Elcompilador verifica literalmente la sintaxis del programa antes de su ejecución, e informa al programador dela presencia de posibles errores. En caso de error el proceso de compilación se interrumpe inmediatamente. Deesta manera el programador puede corregir el error aparecido y efectuar de nuevo el proceso de compilación.

Los identificadores no pueden tener el mismo nombre que las palabras claves en el sistema y que poseanfunciones determinadas. Esta función es necesaria para permitir al compilador la identificación inequívoca depalabras clave e identificadores introducidos por el programador. Si se salta esta regla, el compiladorcomunica el mensaje de error correspondiente.

Declaración de Variables

Una variable es un identificador definido por el usuario, declarado antes del código del programa. Elcontenido de una variable depende, entre otros factores, del tipo de datos asignado, y se almacena en lamemoria del ordenador. El valor de la variable puede modificarse de forma arbitraria durante la ejecución delprograma. Esta circunstancia se produce por la asignación de valores.

Al declarar una variable hay que tener en cuenta la elección del nombre, que debe hacerse de forma que lautilización de la variable sea identificada en el programa. Este procedimiento es imprescindible para facilitarla lectura del programa y su comprensión.

Al declarar una variable o cualquier otro tipo de identificador (por ejemplo constantes o tipos de datos) espreciso seguir determinadas reglas referidas a la sintaxis. En primer lugar hay que tener en cuenta que losnombres de la variables no pueden tener mas de 63 caracteres, ya que el compilador solo toma en cuenta losprimeros 63 caracteres. Por otra parte los nombres de las variables, lo mismo que de los demásidentificadores, deben empezar con una letra o con un trazo de subrayado. No pueden contener diéresis nicaracteres como, por ejemplo, & o %. En un programa, las denominadas variables globales o publicas puedendeclararse una sola vez. En caso de una declaración duplicada, el compilador da un mensaje de error. Lasdenominadas locales o privadas no pueden declararse dos veces dentro de una misma rutina. Por el contrario,se admite la declaración de la misma variable dentro de diversas rutinas.

El ámbito de aplicación de las variables globales abarca todo el módulo del programa en el que se declara lavariable en cuestión. Para conseguir esta condición, la declaración debe encontrarse al comienzo del módulo;por ejemplo en una UNIT. Las variables locales, en contraste, solamente son válidas dentro de la rutina en queestán declaradas. Es imposible el empleo de las variables fuera de esa rutina. En la declaración propiamentedicha, las variables globales no se diferencian de las locales.

A continuación se especifica la forma de declaración de las variables en una aplicación Delphi. En primerlugar se representa la palabra reservada VAR de la declaración de variable. A continuación es posible ladefinición e prácticamente cualquier variable. En cada declaración debe figurar el nombre de la variable y eltipo de datos. Las dos partes de la variable se dividen mediante el carácter de dos puntos. La indicación detipo de datos debe ir seguida de un símbolo de punto y coma que permita al compilador identificarinequívocamente el final de la declaración de una o de más variables (y otras condiciones).

Var

Valor1:integer;

9

Page 10: delphi rincon

Valor2:integer;

Valor3:byte;

Valor4:byte;

En el ejemplo anterior, las variables Valor1 y Valor2 son del tipo integer (números enteros comprendidosdesde el −32768 y el 32767) y las variables Valor3 y Valor4, del tipo byte (numero comprendidos desde el 0al 255). Para simplificar la declaración es posible agrupar las variables del mismo tipo, separándolas por unacoma. El carácter de dos puntos solo se coloca tras la ultima denominación de variable, en un bloque devariables, y al carácter de dos puntos le siguen generalmente la indicación del mismo tipo de datos aplicable atodas las variables dentro del bloque. El resultado es el siguiente.

Var

Valor1, Valor2: integer;

Valor3, Valor4: byte;

Asignación de valores a Variables

Una vez conocida la forma en que se declaran las variables en los programas Delphi, procede analizar laforma en que estas actúan en el programa y el funcionamiento de cada asignación de valor. Antes de dar unejemplo concreto, cabe señalar que los valores susceptibles de admisión por las diferentes variables dependendel tipo de datos asignado a las variables en cuestión. Así por ejemplo a la variable Valor4 no se le puedeasignar el valor 1000, ya que queda fuera del rango definido para el tipo de datos estándar byte. En este casosolo son validos los valores comprendidos desde 0 hasta 255. Si se asigna a una variable un valor que quedafuera del rango valido para el tipo en cuestión, el compilador proporciona inmediatamente un mensaje deerror.

A continuación se muestra un ejemplo de asignación de valores a variables de diferentes tipos.

Var

Valor1, Valor2: integer;

Valor3, Valor4: byte;

String1: string;

Char1: char;

Boolean1: boolean;

Begin

Valor1:= 1000;

Valor2:= 20000;

Valor3:=10;

10

Page 11: delphi rincon

Valor4:=40;

Sring1:= `esto es una cadena de caracteres';

Char1:= `c';

Boolean1:= true;

End.

Como puede verse, en Object Pascal, la asignación siempre se realiza con la ayuda de los caracteres :=. A laizquierda de la asignación aparece la variable, y a la derecha, el valor asignado a la variable en cuestión. Laterminación se realiza con un carácter de punto y coma. Para aumentar la legibilidad del código fuente esrecomendable emplear comillas como en el ejemplo anterior. Además, en cada línea solamente debe escribirseuna instrucción.

Tipos de Datos Estándar

A continuación se exponen en forma de tabla los tipos de datos disponibles en condiciones estándar en ellenguaje Object Pascal. Las variables de los tipos previamente definidos pueden generarse directamente.

Integer

Números enteros comprendidos entre

−32768 y 32767; 16 bits (ocupan 2 bytes cada unoen la memoria)

ByteNúmeros enteros positivos comprendidos entre 0 y255; 8 bits (ocupa 1 byte cada uno en la memoria)

WordNúmeros positivos comprendidos entre 0 y 65535;16 bits (ocupan 2 bytes cada uno en la memoria)

LongInt

Números enteros comprendidos entre

−2147483647 y 2147483647 32 bits (ocupan 4bytes cada uno en la memoria)

ShortIntNúmeros negativos y positivos enteroscomprendidos entre −128 y 127; 8 bits (ocupa 1byte cada uno en la memoria)

RealNúmeros de coma flotante de 11 a 12 decimalessignificativos (delante y detrás de la coma); ocupan6 bytes cada uno en la memoria

Single

Números de coma flotante de 7 a 8 decimalessignificativos; solo es posible si está activada laopción de compilador {$N+}; ocupan 4 bytes cadauno en la memoria

Double

Números de coma flotante de 15 a 16 cifras delantey detrás de la coma; solo es posible si está activadala opción de compilador {$N+}; ocupan 8 bytescada uno en la memoria

Extended Números de coma flotante de 19 a 20 cifras delantey detrás de la coma; solo es posible si está activadala opción de compilador {$N+}; ocupan 10 bytes

11

Page 12: delphi rincon

cada uno en la memoria

Comp

Números de coma flotante de 19 a 20 cifras delantey detrás de la coma; solo es posible si está activadala opción de compilador {$N+}; ocupan 8 bytescada uno en la memoria

StringSecuencia de símbolos con una longitud máxima de255 caracteres ASCII*

Char Caracteres ASCII simples

Pchar Puntero a una cadena terminada en carácter nulo

PointerPunteros que pueden apuntar a cualquier estructurade datos; sin enlace con un tipoconcreto(denominados punteros sin tipo)

BooleanTipo de Datos Booleano, cuyas variables puedentomar los valores True (verdadero) o False (falso)

Instrucciones más Importantes

Las instrucciones se cuentan entre los elementos más importantes del código de programa. Controlan,literalmente, la ejecución del programa. Existen instrucciones de bifurcación, como IF y CASE, y de iteración,como REPEAT, WHILE y FOR. A continuación se describen detalladamente cinco de estas instrucciones, quese emplean en todos los casos de escritura de aplicaciones Delphi.

La instrucción IF

Esta condición se genera con la palabra reservada IF. A continuación sigue la condición, es decir, unaexpresión, de cuyo resultado depende el camino de ejecución del programa. Si la condición es verdadera, elcódigo de programa se bifurca tras al palabra clave THEN. Si la expresión es falsa, se ejecuta el código deprograma que aparece a continuación del bloque THEN o tras la palabra clave ELSE.

If Suma = 100 then

MessageDig (`Suma es 100', mtinformation, [mbOK], 0)

Else

MessageDig (`Suma no es 100', mtinformation, [mbOK], 0);

Si en el ejemplo anterior, la variable Suma no tiene el valor 100, el cuadro de mensaje aparece con el textoSuma es 100. Si el valor es distinto de 100, la ventana de mensajes aparece con el texto Suma no es 100. Paracomprender mejor la instrucción IF esta construcción se denomina si −entonces −sino− instrucción".

El bloque ELSE es opcional y no tiene por que aparecer siempre. Cuando existe, y el valor booleano de lacondición es False, el código de programa se ejecuta a continuación del bloque THEN.

If Suma = 100 then

MessageDig (`Suma es 100', mtinformation, [mbOK], 0);

MessageDig (`Este cuadro de mensaje aparece siempre', mtinformation, [mbOK], 0)

12

Page 13: delphi rincon

Independientemente de lo expuesto, tanto si la suma es 100 como si no, en el presente ejemplo, el cuadro demensaje aparece con el texto Este cuadro de mensaje aparece siempre. Ello es debido a que la instrucción noforma parte del bloque IF.

Tanto el bloque THEN como el ELSE, en una condición IF, pueden estar formados por varias instrucciones.Para que se ejecuten todas las instrucciones, deben estar encerradas con una instrucción BEGIN END.

If Suma = 100 then

Begin

MessageDig (`Suma es 100', mtinformation, [mbOK], 0);

Mult := suma * 100;

End

Else

Begin

MessageDig (`Suma no es 100', mtinformation, [mbOK], 0);

Mult := suma * 200;

End;

La condición de la instrucción IF puede estar formada por varias condiciones parciales enlazadas entre simediante los operadores booleanos tales como AND (tratamiento Y) u OR (tratamiento O). Además, pudeutilizarse completamente la negación NOT. Cuando esta activada la opción {$B+} del compilador, este valoratotalmente las expresiones. Si dicha opción no está activada, el compilador genera un código de valoraciónconforme al procedimiento denominado parcial, en el que las expresiones parciales (condiciones parciales)van valorándose secuencialmente conformemente aparecen. La valoración se interrumpe cuando el resultadopersiste, es decir, cuando el valor de la expresión completa ya no puede variar.

A continuación se presenta una condición IF formada por varias condiciones parciales:

If (suma = 100) or (suma = 200) then

MessageDig (`Suma es 100 o 200', mtinformation, [mbOK], 0)

Else

MessageDig (`Suma no es 100 ni 200', mtinformation, [mbOK], 0);

En este caso, el resultado de la condición IF es True cuando se cumple una de las dos condiciones. Esto ocurreporque se utiliza el operador OR para el tratamiento de las condiciones. Si en lugar de dicho operador seaplica el operado AND, el valor de la expresión en conjunto de la instrucción IF, nunca podrá ser True. Ello esdebido a que una variable como la variable suma utilizada en el ejemplo, siempre tiene que tener un únicovalor. Dos valores de la misma variable simultáneamente son imposibles en la regla de la lógica.

La instrucción CASE

13

Page 14: delphi rincon

A través de la instrucción CASE pueden establecerse varias condiciones en un bloque. Cuando se cumple unade las condiciones expuestas en el bloque CASE, el código de programa que aparece a continuación de lacondición en cuestión se ramifica.

Case suma of

100:

MessageDig (`Suma es 100', mtinformation, [mbOK], 0);

200:

MessageDig (`Suma es 200', mtinformation, [mbOK], 0);

500:

MessageDig (`Suma es 500', mtinformation, [mbOK], 0);

1000:

MessageDig (`Suma es 1000', mtinformation, [mbOK], 0);

End;

A continuación de la palabra CASE se expresa la referencia de las condiciones siguientes. A esta informaciónle sigue la palabra reservada OF. En la línea siguiente comienza el bloque, que contiene las condiciones y lascorrespondientes ramificaciones código. El final del bloque se reconoce por el compilador gracias a la palabraclave END. Opcionalmente, en un bloque CASE también es posible una sección ELSE, de forma análoga acomo ocurre con una condición IF.

Case suma of

100:

MessageDig (`Suma es 100', mtinformation, [mbOK], 0);

200:

MessageDig (`Suma es 200', mtinformation, [mbOK], 0);

500:

MessageDig (`Suma es 500', mtinformation, [mbOK], 0);

1000:

MessageDig (`Suma es 1000', mtinformation, [mbOK], 0)

Else

MessageDig (`Suma no es 100, ni 200, ni 500'+

14

Page 15: delphi rincon

`ni tampoco 1000', mtinformation, [mbOK], 0);

End;

La instrucción CASE no siempre es posible. El compilador proporciona un mensaje de error, por ejemplo, sidurante el tratamiento de un programa, aparece la creación de un bloque CASE con una variable, partiendo deun tipo String. Tampoco es posible la instrucción CASE cuando el tipo de variables de referencia esestructurado (por ejemplo array o record). Sin embargo es preferible a la instrucción IF cuando el tipo devariables a las que se refiere el bloque CASE son Integer o del tipo subrango. La instrucción CASE debeutilizarse sobre todo cuando se necesitan varias condiciones y ramificaciones, como es el caso del ejemploanterior. Es mucho más eficaz que la condición con varias instrucciones IF. Para aclarar estas condiciones, lascondiciones del bloque CASE del ejemplo anterior se han convertido a IF.

If suma = 100 then

MessageDig (`Suma es 100', mtinformation, [mbOK], 0)

Else

If suma = 200 then

MessageDig (`Suma es 200', mtinformation, [mbOK], 0)

Else

If suma = 500 then

MessageDig (`Suma es 500', mtinformation, [mbOK], 0)

Else

If suma = 1000 then;

MessageDig (`Suma es 1000', mtinformation, [mbOK], 0)

Else

MessageDig (`Suma no es 100, ni 200, ni 500'+

`ni tampoco 1000', mtinformation, [mbOK], 0);

Como puede comprobarse, la estructura del código del bloque de condiciones preparado con ayuda de lainstrucción CASE es mas claro que el correspondiente a la estructura en base a condiciones IF del ejemploanterior.

Un inconveniente de las condiciones en el bloque CASE es que no cabe la posibilidad de enlazar condicionesentre sí a base de operadores booleanos tales como AND y OR. Por lo tanto definen una condición única.

Si varias condiciones conducen a la misma ramificación de código, en el bloque CASE pueden enumerarseseparadas por comas, a fin de reducir la longitud del código fuente. En el siguiente ejemplo se muestra comofunciona esta condición.

15

Page 16: delphi rincon

Case suma of

100, 200, 500, 1000:

MessageDig (`Suma es 100, 200, 500 o 1000', mtinformation, [mbOK], 0)

Else

MessageDig (`Suma no es 100, ni 200, ni 500'+

`ni tampoco 1000', mtinformation, [mbOK], 0);

La instrucción REPEAT

En los apartados anteriores se han visto las instrucciones IF y CASE para generar condiciones en un programaDelphi. Ahora se describen las instrucciones de bucle que se utilizan para ejecuciones repetidas de partes delcódigo de programa. En primer lugar se describe detalladamente la instrucción REPEAT,

Con la instrucción REPEAT se crean repeticiones de instrucciones en el programa Delphi, hasta que se cumpleuna condición de interrupción que aparece a continuación de la palabra clave UNTIL. La condición deinterrupción es una expresión booleana, y de forma análoga a como ocurre con la condición IF, se componede varias condiciones parciales. La condición de interrupción se cumple cuando el resultado de expresión totales True.

A continuación se describe la instrucción REPEAT en base a un ejemplo concreto.

Antes del bucle REPEAT... UNTIL se establece en 0 el valor de la variable suma. Cada vez que se cumpla lacondición de bucle se aumenta en 1 el valor de suma, lo que puede realizarse de una forma de una forma muysencilla con el operador +. El bloque REPEAT− UNTIL se repite una y otra vez hasta que la variable sumaalcanza el valor 100, que es la condición de término de bucle.

Suma := 0;

Repeat

Suma := Suma + 1;

Until Suma = 100;

Para probar de inmediato en la practica la instrucción REPEAT, puede realizarse primero un nuevo proyectoen Delphi. A continuación, se ha de insertar en el proyecto una nueva UNIT generada al pulsar el botón delratón en la opción NEW UNIT (menú File). En el código fuente del nuevo archivo UNIT que contiene elnombre de UNIT2, se ha de insertar la instrucción USES en la que se indica que debe utilizarse la UNITestándar WinCrt. Esta condición es necesaria para la visualización de texto por medio de una de las rutinasestándar WRITE o WRITELN.

Una vez realizadas las operaciones descritas, se declara en la sección interface de la UNIT el procedimientoShowRepeatLoop. En la sección de implementación se escribe el código de la rutina en cuestión, de forma queel listado de la unidad en conjunto tenga la forma siguiente:

unit Unit2;

16

Page 17: delphi rincon

interface

uses

WinCrt

Procedure ShowRepeatLoop;

Var

Suma : integer;

Begin

Suma := 0;

Repeat

Suma := suma + 1;

Writeln(suma);

Until suma = 100;

End;

End.

Una vez escrito el código fuente de la unidad, en el formulario que se genera al realizar un proyecto nuevo, seha de insertar un botón y programar la rutina Tform.Button1Click, tal y como se muestra en el listadosiguiente:

Procedure Tform1.Button1Click (sender: TObject);

Begin

ShowRepeatLoop

End;

Antes de ejecutar el programa (pulsando la tecla F9), en la instrucción USES del archivo UNIT, enlazado conel formulario donde se encuentra el botón Button1, se inserta la entrada UNIT2, de forma que el compiladorpueda enlazar esta UNIT con la del formulario. Esta opción es necesaria para que no se produzcan mensajesde error al compilar el proyecto, debido a que la rutina ShowRepeatLoop es desconocida.

Tras ejecutar el programa y pulsar el botón del ratón sobre el botón insertado en el formulario en el modo dedesarrollo, se abre una ventana y se muestran en ella los diferentes pasos de la ejecución del bucle REPEAT...UNTIL. Van apareciendo los valores de la variable suma creados por la rutina ShowRepeatLoop al llamar alprocedimiento estándar WRITELN.

La instrucción WHILE

17

Page 18: delphi rincon

Aparte de la instrucción REPEAT, el lenguaje Object Pascal de Delphi tiene otras dos funciones mas de bucle,se trata de las instrucciones WHILE y FOR. En este apartado se analizan las propiedades de la WHILE − DO.

En primer lugar conviene decir que la diferencia entre las instrucciones REPEAT y WHILE radica en que lacondición de la instrucción WHILE... DO se expresa al principio, directamente después de la palabra claveWHILE. El bucle WHILE... DO se ejecuta mientras la citada condición es True. Sin embargo en la instrucciónREPEAT, se trata de una condición de interrupción y la condición de la instrucción WHILE puede tomarsecomo condición para la ejecución del bucle.

De forma análoga a como ocurre con la condición de interrupción de la instrucción REPEAT, también en lainstrucción WHILE, la condición para la ejecución del bucle puede estar formada por varias condicionesparciales que se someten a tratamiento lógico de cualquier tipo con la ayuda de los operadores AND y OR. Lacondición se cumple cuando el resultado de la expresión completa es True. En estos casos, la ramificaciónhacia el código de programa tiene lugar dentro de la instrucción WHILE − DO. Cuando el resultado de laexpresión completa es False, se tiene criterio de interrupción de la ejecución reiterada del código. En estecaso, las instrucciones en el bloque WHILE... DO se saltan, y la ejecución del programa continúa con lasiguiente instrucción, directamente después del bloque.

Para comprender mejor la instrucción WHILE, se presenta un ejemplo de código que facilite la comprensiónde esta instrucción, recurriendo a la suma que se ha utilizado en el apartado anterior.

Como consecuencia de las propiedades de la instrucción WHILE, la condición en el bucle WHILE− DO debeser modificada ligeramente, en comparación con la condición del bucle REPEAT−UNTIL. El código deprograma del bloque WHILE−DO solo puede ejecutarse cuando el valor de suma sea inferior a 100, por lo quees necesario modificar la formulación de la condición.

Suma := 0;

While suma < 100 do

Suma := suma + 1;

Conviene no olvidar que el valor de suma antes de la instrucción WHILE de ponerse a 0. Para que la ejecucióndel bucle WHILE−DO en el programa pueda seguirse paso a paso, la UNIT UNIT2 se amplía con un nuevoprocedimiento que recibe el nombre de ShowWhileLoop. De forma análoga a como ocurre con elprocedimiento ShowRepeatLoop, para presentar el texto en pantalla se utiliza en esta rutina la instrucciónestándar Writeln.

Procedure ShowWhileLoop;

Var

Suma : integer;

Begin

Suma := 0;

While suma < 100 do

Begin

18

Page 19: delphi rincon

Suma := suma + 1;

Writeln (suma);

End;

End;

En total, en el bucle ShowWhileLoop pueden ejecutarse dos instrucciones, por lo que el principio del bloquecompleto debe marcarse con la palabra reservada Begin, y el final, con End.

Para comprobar las diferencias entre la ejecución de las rutinas ShowRepeatLoop y ShowWhileLoop, puederecurrirse a insertar un segundo botón en le formulario del programa. El correspondiente control tomaautomáticamente el nombre Button2, en el caso que se utilicen componentes Button. Pulsando dos veces elbotón del ratón sobre la columna de valores del evento OnClick (en el inspector de objetos) se genera unarutina de tratamiento para el evento. Pero antes de realizar estas operaciones no hay que olvidarse deseleccionar Button2 pulsando el botón de ratón. En la rutina de tratamiento generada por Delphi, provista delnombre Tform1.Button2Click, llamar al procedimiento ShowWhileLoop.

Una vez arrancado el programa, se ha de pulsar una vez el botón del ratón sobre el botón Button1, con lo quellamara a la rutina ShowRepeatLoop (instrucción Repeat). Obsérvese los valores que se muestran en laventana y, una vez terminada la salida de texto, ciérrese la ventana y púlsese el botón del ratón sobre el botónButton2 en el formulario para llamar a la segunda rutina, la rutina ShowWhileLoop (instrucción While). Alpulsar el botón del ratón sobre el control activo, se abrirá igualmente una ventana y se mostraran los valoresactuales que la variable suma va tomando durante la ejecución del bucle. Si se ha observado detenidamente lasalida de texto anterior, en la primera ventana, podrá comprobar que ambas rutinas ShowRepeatLoop yShowWhileLoop hacen lo mismo, a pesar de que utilizan diferentes tipos de bucles.

La instrucción FOR

Hasta aquí se ha hablado de dos tipos de bucles, que se ejecutan cuando la condición definida es True (bucleWhile... do) o False (Bucle Repeat... Until). En el presente apartado se presenta el tercer tipo de bucle,denominado FOR... DO, en el que no se necesita ninguna condición para la interrupción o para la ejecucióndel código del programa. En los bucles FOR... DO se define exactamente con anterioridad cuantas veces serepetirá la ejecución del código.

Para la implementación de un bucle FOR... DO es imprescindible declarar previamente una variable numérica,por ejemplo del tipo Integer o Byte. La instrucción FOR introduce la denominada iteración a intervalos, que seejecuta hasta que el contador alcanza un determinado valor, partiendo del valor inicial. En la instrucción FORse indica tanto el valor inicial del contador como el final. De esta forma se define la cantidad de repeticionespara el código del bucle FOR... DO. Entre los valores inicial y final del contador debe aparecer la palabraclave TO (incremento del contador o la DOWNTO (decremento del contador).

El empleo de bucles es particularmente recomendable para cumplimentar los campos de las variables dematriz con valores crecientes o decrecientes, o para ponerlos a 0. Para acceder a todos los campos de matriz,basta con escribir a continuación de la denominación ARRAY, entre corchetes, la variable numérica queaumenta (incremento) o disminuye (decremento) en 1 con cada repetición del código.

Var

Array : array[1..100] of integer;

19

Page 20: delphi rincon

Count : integer;

Begin

For count : = 1 to 100 do

Array1[count] := count;

End;

En el presente ejemplo se recorren todos los campos de la matriz de 1 a 100 y a cada campo se le asigna suíndice. Para recorrer los campos de matriz en sentido inverso es preciso cambiar la palabra clave TO de lainstrucción FOR por DOWNTO. Además es preciso cambiar entre si los valores de comienzo y de final delcontador.

For count := 100 downto 1 do

Array1[count] := count;

Los bucles FOR... DO también pueden anidarse. El anidamiento es necesario, por ejemplo, cuando esnecesario rellenar una matriz multidimensional. Por lo demás para cada bucle aisladamente considerado debeutilizarse una variable contadora por separado.

Var

Array2 : array[1..10, 1..100, 1..5] of integer;

Count1, Coount2, Count3: integer;

Begin

For count1 := 1 to 10 do

For count2 := 1 to 100 do

For count3 := 1 to 5 do

Array2[count1, count2, count3] := 0;

End;

En el ejemplo anterior se recorren todos los campos de la matriz tridimensional y se pone 0 a su valor.

En los bucles FOR... DO también es posible definir criterios de interrupción, pero dado que no está previstoinicialmente, para esta finalidad se recurre a la condición IF. Para abandonar un bucle FOR... DO se utiliza lainstrucción estándar EXIT.

Var

Arrat3:array[10..1000] of integer;

Count3: integer;

20

Page 21: delphi rincon

Begin

For count3 := 10 to 1000 do

Begin

Array3[count3] := 0

If count3 = 200 then

Exit; {abandonar el bucle}

End;

End;

Un programador de Delphi debe ser consciente de la gran rapidez de los bucles, por lo que la aplicación deberealizarse siempre que se conozcan los números de repeticiones y se desee ejecutar el código con rapidez.

Diferencias Entre Visual Basic y Delphi

Delphi produce aplicaciones en código máquina, mientras que Visual Basic produce código para serinterpretado. Esto quiere decir que las aplicaciones Delphi son mucho más rápidas que lasequivalentes escritas en Visual Basic (de 10 a 20 veces, según los datos lo Borland). Pero tambiénsignifica que nos ahorramos la instalación del intérprete que necesitan los programas de Visual Basic.

En cualquiera de las versiones de Delphi podemos programar DLLs, para poder comunicarnos conotros lenguajes de programación.

Los componentes visuales de Delphi tienden, por lo general, a ser más eficientes que loscorrespondientes controles VBXs ya que forman parte del propio programa ejecutable final y no deuna biblioteca dinámica. Un control definido en una DLL, por ejemplo, duplica inevitablemente partedel entorno de tiempo de ejecución del sistema en que fue programado, ocupa más memoria yprovoca un mayor intercambio de páginas de memoria virtual con el disco.

En Delphi podemos programar directamente los componentes visuales. En cambio, Visual Basic nopermite programar controles VBX ni OCX. Utilizando Delphi incluso podemos crear nuevos controlesque hereden características de controles ya existentes.

Delphi puede programar tanto controladores como servidores de automatización.•

Por último, los componentes visuales de Visual Basic pueden utilizarse desde Delphi, ya sean losobsoletos VBX para la versión de 16 bits, o los nuevos OCX en la versión de 32.

Delphi utiliza Object Pascal desde sus primeras versiones, un lenguaje Orientado a Objetos, lo queproduce que podemos beneficiarnos de características tan importantes como son el encapsulamiento,el polimorfismo y la herencia.

Glosario de Términos

API : Aplication Programing Interface (Interfaz de programación de aplicaciones)•

21

Page 22: delphi rincon

ASCII : American Standard Code for Information Interchange (código americano estándar deintercambio de información), es un formato de archivo que no contiene formato de texto, por lo que sepuede transferir en distintos sistemas operativos y programas. Los archivos ASCII se usanuniversalmente para intercambiar información entre equipos.

CASE − TOOLS : Computer Aided Software Engineering (desarrollo de software asistido porordenador)

ODBC : Open Database Conectivity. Es una interfaz de programación que permite a las aplicacionestener acceso a datos en sistemas de administración de bases de datos que utilizan el SQL comoestándar de acceso a datos.

OWL : Object Windows Library (librería de objetos de Windows)•

SQL : Structured Query Language (lenguaje de consultas estructurado). Constituye un estándar delenguaje de uso general, para consultar y modificar datos administrados por servidores especiales debases de datos como Oracle, Sybase, Informix o Adabas).

VCL : Visual Component Library (biblioteca de componentes visuales.•

Dedicatorias y Consideraciones Finales

Este presente trabajo se lo queremos dedicar a toda la gente que hay tras nosotros, partiendo primeramente pornuestras familias quienes gracias a su gran esfuerzo nos han ayudado en este difícil camino, creyendo ennosotros y apoyándonos, a nuestros abuelos, tíos, hermanos, amigos, nuestras(os) novias(os), my lovin' guitar,por su inspiración, al gato amarillo y al Félix, en fin todos aquellos que en poca o gran medida han hecho quenuestro sueño de apoco se convierta en realidad. A todos ustedes quienes siempre recordaremos.

Extra gracias : Al señor Luis Galdames Bert y al señor Jorge Fuentes por su gran ayuda, apoyo yconocimientos entregados sin fines de lucro alguno. (ya nos veremos pronto las caras)

Los autores.

Julio de 2001.

Bibliografía

Para la realización de este trabajo se utilizaron los siguientes textos como referencia.

El Gran Libro de Delphi.•

Autores : Arthur Burda y Günther Färber

Editorial : Marcombo/Data Becker

Programación Orientada a Objetos•

Autor : Luis Joyanes Aguilar

Editorial : McGraw−Hill

Aprenda Visual Basic 6.0 ya•

22

Page 23: delphi rincon

Autor : Michael Halvorson

Editorial : McGraw−Hill

Programación con Delphi 4•

Autor : Francisco Charte Ojeda

Editorial : Anaya Multimedia

Conclusión

32

Vehículo

Ciclomotor

Bicicleta

Automóvil

Montaña

Paseo

Camión

Autobús

Coche

Competición

Deportivo

Turismo

Berlina

Familiar

23