Descubre millones de libros electrónicos, audiolibros y mucho más con una prueba gratuita

Solo $11.99/mes después de la prueba. Puedes cancelar en cualquier momento.

Iniciar con Lazarus y Free Pascal
Iniciar con Lazarus y Free Pascal
Iniciar con Lazarus y Free Pascal
Libro electrónico541 páginas5 horas

Iniciar con Lazarus y Free Pascal

Calificación: 5 de 5 estrellas

5/5

()

Leer la vista previa

Información de este libro electrónico

Tanto si quieres desarrollar tu propia aplicación de base de datos, como si lo que pretendes es desarrollar una aplicación web, o hasta programas de animación, 2D o 3D, “Iniciar con Lazarus y Free Pascal” es, sencillamente, el libro de programación de Lazarus con Free Pascal más amigable e inspirador que se encuentra disponible.
En este libro descubrirás cómo abordar la programación orientada a objetos utilizando Lazarus con Free Pascal, con total confianza. El formato simple y paso a paso de “Iniciar con Lazarus y Free Pascal” lo convierte en un libro imprescindible para los aspirantes a programadores.
Aprende cómo dominar técnicas de programación claves, desde temas simples a temas más avanzados, siguiendo instrucciones claras e ilustradas. Por ejemplo, descubre cómo escribir manejos de archivo simples, aplicaciones GUI fáciles de utilizar, programación de gráficos, programación de bases de datos, captura de errores, manejos de excepciones, técnicas de depuración, documentación en el código y mucho más.
Descubre la solidez de las más de 230 bibliotecas de componentes de Lazarus. Este libro se encuentra lleno de proyectos inspiradores y prácticos que son fáciles de seguir.
Cada capítulo te llevará de principio a fin con instrucciones claras y paso a paso, acompañadas de ejemplos para que puedas experimentar. Cada capítulo concluye con sugerencias para que las intentes realizar, lo que te permite poner a prueba los conocimientos que has adquirido. Este libro es, en gran medida, un libro práctico, por lo que ¡es hora de “arremangarse” y ponerse manos a la obra!
Perfecto para entusiastas que quieren ampliar sus habilidades de programación e ideal para desarrolladores principiantes, intermedios y avanzados que desean una mudanza rápida a Lazarus.

IdiomaEspañol
Fecha de lanzamiento28 ene 2016
ISBN9780993272356
Iniciar con Lazarus y Free Pascal

Relacionado con Iniciar con Lazarus y Free Pascal

Libros electrónicos relacionados

Programación para usted

Ver más

Artículos relacionados

Comentarios para Iniciar con Lazarus y Free Pascal

Calificación: 5 de 5 estrellas
5/5

1 clasificación0 comentarios

¿Qué te pareció?

Toca para calificar

Los comentarios deben tener al menos 10 palabras

    Vista previa del libro

    Iniciar con Lazarus y Free Pascal - Menkaura Abiola-Ellison

    Acerca del autor

    Menkaura Abiola-Elisson tiene más de 30 años de experiencia como ingeniero de software y programador.

    Comenzó sus primeros años escribiendo código ensamblador y BASIC durante la década de los 80, en su Acorn Atom que sus padres le habían comprado. Posteriormente asistió a la universidad para estudiar ciencias computacionales, donde obtuvo su Licenciatura en Ciencias con Mención Honorífica, y posteriormente un Máster en negocios.

    Por más de 20 años ha programado en diversas formas de Pascal, desde P-code, Module-2, Turbo Pascal hasta Delphi / Lazarus.

    Adicionalmente, posee experiencia técnica y comercial en otros lenguajes tales como C++, Java, Javascript, Visual basic, conjuntamente con una variedad de herramientas web, sin embargo se encuentra siempre retornando a Free Pascal una y otra vez.

    El autor ha trabajado en electro medicina por 25 años, desde UCI hasta Desarrollador de Sistemas Dentarios, y encontró Pascal a la altura de los desafíos de los continuos cambios en el mundo del software.

    Siente que Lazarus / Free Pascal ha permanecido escondido durante mucho tiempo, y cree que es un gran lenguaje para usar cuando hablamos de un primer lenguaje.

    Durante los números años que ha trabajado como ingeniero de software, pocos sistemas han resistido la prueba del tiempo tan bien como el programa Pascal.

    Menkaura ha usado Pascal para trabajos de sistemas de bajo nivel, creación de redes, hilos de ejecución de procesos, aplicaciones de base de datos, gestión de dispositivos médicos, codificación de ensamblado embebido (assembly), aplicaciones web y operación de dispositivos de control remoto, por mencionar algunos.

    Se ha mantenido usando Lazarus los últimos tres años y cree que está listo para emerger de las sombras del Delphi.

    Agradecimientos

    Escribir un libro no es una operación de un solo hombre (o mujer) y, por lo tanto, me gustaría dar las gracias a las personas que ayudaron a llevar esto de un concepto a una realidad. 

    Gran cantidad del material en este libro intenta abordar muchas de las cuestiones que noté preguntadas por numerosas personas que asistían a Lazarus / Free Pascal por primera vez. Los agradecimientos van dirigidos a aquellos fórums donde las personas han ayudado a otros en sus caminos hacia el aprendizaje de Lazarus.

    Me gustaría agradecer a Harriet Barham por su habilidad como corrector, y muchas gracias a Lloyd Evering por la lectura técnica.

    Estoy agradecido con el Dr. Femi Biko por su constante apoyo y estímulo.

    Me gustaría agradecer enormemente a Vaughan Tyler, por su determinación y paciencia en la prueba de muchos de los códigos presentados en este libro.

    La versión traducida español no sería posible sin la ayuda de Diana Suárez, a quien le estoy agradecido.

    Por último, pero no menos importante, un gran agradecimiento a mi esposa, Faith, por la corrección de textos y paciencia.

    Mis agradecimientos a todos aquellos, no mencionados específicamente por nombre, que contribuyeron a este esfuerzo. Tú sabes quién eres; y ofrezco mis disculpas a aquellos a quienes puede haber omitido inadvertidamente. Todos ustedes demostraron el espíritu de lo que se trata Free Pascal.

    Prefacio

    ¿Por qué usar Lazarus con Free Pascal?

    Lazarus no es la única Interfaz Gráfica de Usuario (GUI de sus siglas en inglés Graphical User Interface) para Free Pascal. Dos de ellas que valen la pena mencionar son fpGUI y MSEide+MSEgui.

    MSEide+MSEgui

    El MSEide es un Sistema de Desarrollo Multiplataforma de GUI para los programadores de Pascal, que se encuentra totalmente escrita en Pascal. El MSEgui no dispone de compatibilidad VCL. La biblioteca de gráficos proporciona una interfaz para win32 y X11. A pesar de ser un esfuerzo de una única persona (Martin S.) de momento.

    Sin embargo, al momento de escribir este libro, MSEide+MSEgui solo funciona en las plataformas Windows y Linux, aunque puedes desarrollar aplicaciones para ejecutar en diferente plataformas.

    fpGUI

    fpGUI, el conjunto de herramientas de la Interfaz Gráfica de Usuario de Free Pascal, es un conjunto de herramientas de interfaz gráfica de usuario multiplataforma desarrollado por Graeme Geldenhuys. fpGUI es un software libre de código abierto, autorizado bajo una Licencia Pública General Reducida (LGPL de sus siglas en inglés Lesser General Public License). El conjunto de herramientas ha sido implementado usando el compilador Free Pascal, lo que significa que se encuentra escrito en el lenguaje Object Pascal.

    fpGUI consiste solo en widgets gráficos o componentes, y una biblioteca de dibujo 2D multiplataforma. No implementa capas de base de datos, gráficos 3D, analizadores sintácticos XML, etc. Tampoco depende de una gran cantidad de bibliotecas externas como GTK o Qt. Todos los extras provienen directamente de los componentes disponibles con la biblioteca de componentes de Free Pascal (FCL de sus siglas en inglés Free Component Library) que viene por defecto con el compilador de Free Pascal.

    Lazarus

    A pesar de los dos GUI para Free Pascal mencionados anteriormente ser excelentes herramientas por derecho propio, escogí Lazarus por las siguientes razones:

    a/ Tiene una comunidad amplia y comprometida.

    b/ Es usada en escuelas, universidades y el mundo comercial en todo el planeta.

    c/ Lazarus IDE puede ser instalado en una amplia variedad de plataformas y dispositivos.

    d/ La asistencia web es muy amplia.

    e/ Es excelente para el desarrollo de aplicaciones de base de datos.

    f/ Posee una biblioteca vasta y es simple de añadir paquetes.

    Qué cubre este libro.

    Los capítulos del 1 al 5 introducen a los lectores a Lazarus y Free Pascal. Aquí el lector aprenderá como descargar, instalar y configurar Lazarus para su plataforma de preferencia. El lector primero aprenderá como escribir programas de líneas de comando usando un editor de texto y el compilador de Free Pascal.

    Los capítulos 6 al 11 impulsan el conocimiento del lector a través de la introducción de temas más avanzados, como por ejemplo arreglos y más. El lector también aprenderá las bases de la Programación Orientada a Objetos (POO). Estos capítulos introducirán al lector en el Entorno de Desarrollo Integrado (IDE de sus siglas en inglés Integrated Development Environment) de Lazarus, al ver Lazarus y POO en acción.

    Los capítulos 12 al 16 indagan aún más en la programación con Lazarus, y echa un vistazo a temas como errores y Manejo de excepciones, los paquetes de Lazarus y cómo crear tus propios paquetes. El lector aprenderá acerca de la Biblioteca de Componentes de Lazarus (LCL de sus siglas en inglés Lazarus Components Library) y cómo usarla para construir aplicaciones, incluyendo 2D, 3D y animación. Usando LCL, el lector aprenderá como programar por sí mismo.

    Durante los capítulos 13 al 23 el lector aprenderá como escribir aplicaciones que incluyan: manejo de archivos, aplicaciones de conjuntos y bases de datos, y desarrollo de aplicaciones Web. El lector también aprenderá como aplicar diversas técnicas de depuración usando las herramientas de depuración de Lazarus. Aprender a documentar tu código es una parte importante en el desarrollo de la aplicación; este aspecto será cubierto en el transcurso de estos capítulos. El capítulo termina con un vistazo a algunos dispositivos que Lazarus y Free Pascal usan en Android, sistemas embebidos de teléfonos inteligentes y Raspberry Pi, por nombrar algunos ejemplos.

    Qué necesitas para este libro.

    Necesitarás descargar el software Lazarus que sea soportado por tu sistema operativo (véase el capítulo 2 sobre Configuración de Lazarus).  Adicionalmente, algunos de los ejemplos presentados en este libro requerirán la descarga de componentes externos (tales como los ZeosDB, discutidos en el capítulo 19).

    Comentarios de los lectores

    Los comentarios de los lectores son siempre bienvenidos. Haznos saber qué opinas acerca de este libro, que es lo que te gusta o puede haber disgustado.

    Para enviarnos tus comentarios simplemente envía un e-mail a mka.feedback@gmail.com, mencionando el título del libro.

    Para quién es este libro

    Este libro asume que el lector no posee conocimientos previos en Lazarus o Free Pascal, y puede ser completamente nuevo en computación. Este libro también está pensado para programadores que desean cambiar desde otros lenguajes tales como Delphi, Visual Basic, Java, C++, etc., y que quieren comenzar rápidamente con Lazarus y Free Pascal.

    Este libro es ideal tanto para principiantes como para intermedios.

    Convenciones 

    En este libro encontrarás un número de estilos de texto e iconos que diferencian entre distintas clases de información. A continuación se encuentra la clave para distinguir estas informaciones:

    question Puntos sumamente importantes para recodar

    ipad Es tu turno de comenzar a programar.

    Por ejemplo:

    procedure THelloWorld.WriteOut;

    begin

    Writeln('Hello, World!');

    end;

    Declaración de línea única      Writeln('Hello, World!');

    d-i-y Cosas para que pruebes por ti mismo – ¡Inténtalo!

    Unas palabras de advertencia

    Como este libro es en gran medida un manual práctico, se espera que el lector digite los programas listados en este libro. Por lo tanto, NO habrá código para descargar. La mejor manera de aprender programación es programando. Los programas son incluidos intencionalmente; el código incluido en este libro es suficientemente manejable para ilustrar los ejemplos necesarios presentados.

    Mitad de la diversión es hacer el trabajo tú mismo, así que diviértete codificando.

    Errata

    A pesar de haber tomado cada esfuerzo para garantizar la exactitud del contenido, pueden ocurrir errores. Si encuentras algún error en este libro, agradecería si pudieras reportármelo. Al hacerlo, ahorras a otros lectores frustración y ayudas a mejorar subsecuentes ediciones de este libro. Si encuentras alguna errata por favor comunícalo conmigo a mka.publishing@gmail.com.

    1 Introduciendo Lazarus con Free Pascal

    Lazarus, un entorno de desarrollo integrado (IDE de sus siglas en inglés Integrated Development Environment), fue un proyecto resurgido de las cenizas del Proyecto Megido. Megido fue el primer intento de desarrollar una interfaz gráfica de usuario (GUI de sus siglas en inglés Graphical User Interface) para el lenguaje Free Pascal en 1998. Debido a diversos motivos el proyecto falló, sin embargo, algunos de los desarrolladores del proyecto decidieron intentar un abordaje diferente y crearon el proyecto Lazarus. Este proyecto se convirtió en un suceso con más de 4 millones de descargas desde marzo de 2014.

    ¿Qué es Lazarus?

    Lazarus es un IDE visual, libre y multiplataforma para el desarrollo rápido de aplicaciones (RAD de sus siglas en inglés para Rapid Application Development), que utiliza un compilador Free Pascal, el cual soporta Object Pascal, en diferentes grados. Una de las características importantes de Free Pascal es la de una vez escrito, compila en cualquier sitio (write once, compile anywhere).

    Esto significa básicamente que solo necesitas escribir tu código fuente una vez y compilarlo para orientar tu distribución (para ciertas plataformas como Windows, Linux, Mac, Android, FreeBSD, Unix, Raspberry Pi, entre otras).

    Al usar Lazarus como el IDE visual para Free Pascal, Lazarus se beneficia de un lenguaje compilado de programas orientados a objetos (POO), lo que ofrece una alta velocidad de ejecución y una compilación multiplataforma.

    La belleza de Lazarus es que permite al desarrollador desarrollar de manera rápida una aplicación, luego compilarla para ser ejecutada en diversas plataformas sin necesidad de ningún cambio en el código fuente (o solo usar modificaciones menores).

    Otra característica importante y bien recibida de Lazarus con Free Pascal es que está disponible como descarga gratuita desde la página web de Lazarus (a través de la página web http://.www.sourceforge.net). Este libro se basa en la versión 1.2.

    Lazarus contiene pocas palabras claves y una sintaxis relativamente simple. Es fácil de aprender y usar una vez que asimilaste la idea de la programas orientados a objetos (véase capítulo 7). Se encuentra respaldada por una amplia Biblioteca de Componentes de Lazarus (LCL por sus siglas en inglés Lazarus Component Library) para realizar diversas tareas. Los paquetes adicionales de terceros pueden ser agregados fácilmente al IDE de Lazarus. Es habitual que estos paquetes de terceros también se encuentren alojados en la página web de Source Forge y puedan ser descargados desde allí.

    Sin embargo, a pesar de Lazarus facilitar y acelerar la programación con Free Pascal, el principiante se encuentra ante el primer obstáculo de entender los conceptos de la programación orientada a objetos.

    El objetivo de este libro es ayudarte a sobrepasar la fase inicial y entrar seguro en el mundo de POO.

    El enfoque de este libro está dirigido a la inmersión directa en la escritura de programas cortos sin preocuparse mucho con sus características de POO. Aprender a través de la práctica y entender a través de ejemplos es la manera que este libro se dispone a introducirte en la iniciación a Lazarus con Free Pascal.

    Programas orientados a objetos.

    A pesar que el objetivo de este libro es que recojas los principios de POO a medida que avanzas, viene bien echar un vistazo a sus características principales.

    ¿Qué es un ‘objeto’?

    Objetos son bloques de códigos de programa y propiedades de datos pequeños, discretos y autosuficientes, que generalmente ejecutan una única tarea. El equivalente más cercano a un método de objeto en los antiguos lenguajes de programación por procedimientos es una subrutina, función o procedimiento. Sin embargo, Free Pascal varía en la manera que estos son construidos y la manera en que pueden ser unidos para crear una aplicación.

    p15

    Fig. 1 Un diagrama de flujo que define el proceso para el ajuste de temperatura. Los recuadros del diagrama ilustran los pasos para el procedimiento. El diagrama de fluejo puede ser usado como una base para escribir un programa con un lenguaje por procedimientos como serían BASIC, Fortran, Assembly.

    Antes de la época de la programación orientada a objetos, los desarrolladores usaban el enfoque de programación por procedimientos. Este enfoque incluye programación de bajo nivel (usando lenguajes de programación ensamblador) y programación de alto nivel (usando lenguajes como BASIC y PASCAL por procedimientos, como contraposición a Pascal Orientado a Objetos). Cabe destacar aquí que Free Pascal también soporta programación estructurada. Sin embargo, este libro enfocará principalmente los aspectos de POO.

    Con frecuencia, son usados diagramas de flujo en lenguajes por procedimientos para representar el flujo del programa que tomará la computadora (véase fig. 1). El programa es representado por una serie de recuadros, flechas y rombos de decisión que muestran caminos ramificados conjuntamente con la subrutina usual ‘ir hasta…’ que permite evitar programación repetitiva de las rutinas frecuentemente usadas.

    El problema clave con la programación por procedimientos es que cualquier parte del programa puede interactuar con cualquier otra parte, compartiendo datos y variables. Tales programas pueden ser muy complejos y difíciles de entender, lo que puede llevar a errores de programación y falta de fiabilidad. Debido a la complejidad de tales programas, puede ser difícil corregir varias partes del programa, y esto puede minar seriamente las otras áreas del programa, lo que crea una aplicación inestable.

    Por el contrario, Free Pascal es orientado a objetos. En el enfoque de Free Pascal para la Programación Orientada a Objetos, todo se resuelve en torno al concepto de ‘clases’. Una clase puede ser vista como un apuntador a un objeto, o un apuntador a un registro, con métodos asociados, como es mostrado en la fig. 2.

    p16

    Fig 2. Los elementos de un programa Free Pascal. Las cajas de rectángulos sombreadas representan los datos y métodos de cada clase.

    p17

    Fig.3  diagrama UML de clases básicas. Una Sub-clase típica. Mostrando clase nombre y método nombre e inputs.

    Las clases en sí mismas no son objetos, así como los diseños de una casa de un arquitecto no son una casa en sí.

    Una clase es definida cuando se le atribuye un nombre, un conjunto de datos y uno o más métodos que permitan manejar los datos. Nota que los datos y métodos son objetos y sus operaciones son determinadas por la clase.

    ¿Qué son métodos?

    Los métodos generalmente son pequeños segmentos de programa y son semejantes a la rutina de programas por procedimiento. Usan ideas familiares como rutinas ‘input’ y ‘output’ (por ejemplo ciclos con ‘for..while..do’ y toma de decisiones como ‘if..the..else…’). Estas habilidades aún serán necesarias cuando escribas en Pascal Orientado a Objetos aunque tengas experiencia en programación por procedimientos.

    ¿Qué es exactamente un Pascal Orientado a Objetos?

    Las clases de Free Pascal por sí mismas no son objetos, de la misma manera que el plano de diseño de una casa no es una casa en sí. Una clase puede ser considerada como una plantilla para construir un programa que lleva a cabo una tarea específica. (Una vez el arquitecto ha diseñado la casa, el constructor puede construir la casa física); de la misma manera, una vez que hayas definido una clase puede ser construida una instancia para esa clase, dándole variable(s)  especifica(s) y parámetros. Una única clase puede generar numerosas instancias con propiedades diferentes, pero con funciones similares. Debe notarse entonces que los objetos tienen una vida útil mientras que las clases no.

    A medida que avanzamos con el libro, la comparación entre clases y objetos se torna más clara. En resumen, podemos decir que una clase es un concepto general (como un animal), mientras que un objeto es una realización específica de esa clase, con una esperanza de vida limitada (como un gato, perro o ratón). Otra manera de pensar acerca de las diferencias entre clase y objeto es que una clase proporciona una plantilla para algo más específico que el programador tiene que definir, lo cual hará al momento de crear un objeto para esa clase.

    La idea de crear clases y objetos enfoca una única tarea, lo que significa que cada clase y objeto es autosuficiente. La interacción entre las clases se hace bajo condiciones estrictamente controladas. Esto es llamado encapsulamiento, lo que será concretizado a medida que avanzamos.

    A través de la manutención (encapsulamiento) de datos y métodos dentro de la misma clase, creamos fiabilidad, solidez, economía del tamaño del programa y facilidad en la construcción del programa (cuando se trata de construir nuevas clases que pueden ser bajadas desde una biblioteca de clases existente).

    El mantenimiento del programa también está simplificado. Desde el punto de vista del desarrollo y mantenimiento del programa, podemos considerar las ventajas que Lazarus tiene para ofrecer. Una clase que es autosuficiente puede ser programada y examinada de manera aislada. Posteriormente puede ser añadida al resto de la aplicación con la confianza de que funcionará.

    Si fuera necesario corregir o reemplazar las clases, también puede ser realizado sin causar ningún efecto adverso a las otras clases en la aplicación.

    Antes de sumergirnos en objetos y clases y mostrar cómo crearlos y usarlos, necesitamos obtener e instalar Lazarus.

    2 Instalar Lazarus

    La manera recomendada de obtener el software de Lazarus es visitando su página web en internet.

    Su URL es:

    http://www.lazarus.freepascal.org

    Esta página contiene una gran cantidad de información acerca de Lazarus así como los últimos desarrollos y actualizaciones.

    La descarga te llevará al enlace de Source Forge, donde podrás descargar el software Lazarus que se encuadre en tu sistema. Sigue las instrucciones de instalación en tu pantalla.

    La descarga generalmente consiste en un único archivo ejecutable, alrededor de 115MB para usuarios de Windows. Los usuarios de Linux y Mac también necesitarán descargar por separado el compilador de Free Pascal (fpc), conjuntamente con la fuente.

    Una vez hayas completado la instalación, tendrás instalado el IDE de Lazarus y el compilador Free Pascal. Recordemos que Lazarus es un constructor

    ¿Disfrutas la vista previa?
    Página 1 de 1