Lazarus es un entorno de desarrollo integrado basado en una extensión orientada a objetos del lenguaje de programación Pascal. Pascal es un lenguaje de programación de propósito ge...
Lazarus es un entorno de desarrollo integrado basado en una extensión orientada a objetos del lenguaje de programación Pascal. Pascal es un lenguaje de programación de propósito general y de alto nivel desarrollado por el profesor suizo Niklaus Wirth entre los años 1968 y 1969. Su objetivo era crear un lenguaje que facilitara el aprendizaje de programación a sus alumnos y que con el tiempo se ha convertido en una herramienta fabulosa para la creación de aplicaciones de todo tipo.
Mientras Borland introducía la programación orientada a objetos en Pascal con su compilador de Turbo Pascal 5.5, que terminó dando lugar a Delphi®, Cliff Baeseman, Shane Miller y Michael Hess, comenzaban a gestar el proyecto Lazarus/Free Pascal que, recogiendo las mismas características que Delphi, incluía tres aspectos diferenciales: ser de código abierto, completamente gratuito y verdaderamente multiplataforma.
Con este libro aprenderá:
Los principios básicos de la programación estructurada.
A configurar el IDE de Lazarus.
A escribir funciones y procedimientos para mejorar la claridad, calidad y tiempo de desarrollo de un programa.
Las técnicas esenciales de la programación orientada a objetos (POO).
A crear potentes interfaces gráficas de usuario (GUI).
A manipular ficheros de texto y binarios como extensión de los programas.
Las principales técnicas de depuración para corregir los habituales errores de programación.
Índice
Introducción
Capítulo 1. El arte de programar
1.1 Lenguajes de programación
1.2 Pascal , un lenguaje de propósito general
1.3 Lazarus
Capítulo 2. Lazarus y pascal
2.1 El ide de Lazarus
2.2 Modo consola frente a interfaz gráfica
2.3 El primer programa
2.4 Estructura de un programa pascal
2.5 Comentarios
2.6 Los nombres en Pascal
2.7 Directivas del compilador
Capítulo 3. Tipos, variables y constantes
3.1 Tipos
3.1.1 Enteros
3.1.2 Ordinales
3.1.3 Reales
3.1.4 Lógicos
3.1.5 Carácter
3.1.6 Cadena
3.1.7 Tipo enumerado
3.2 Cambio y forzado de tipos
3.3 Variables
3.3.1 Sentencias básicas de asignación
3.4 Constantes
3.5 Punteros
3.6 Un programa de ejemplo
Capítulo 4. Tipos estructurados de datos
4.1 Arreglos
4.1.1 Arreglos estáticos
4.1.2 Arreglos dinámicos
4.2 Cadenas
4.3 Registros
4.3.1 La sentencia with?do
4.4 Conjuntos
4.5 Ficheros
Capítulo 5. Operadores y expresiones
5.1 Operadores aritméticos
5.2 Operadores lógicos
5.3 Operadores relacionales
5.4 Precedencia de operadores
5.5 Un programa de ejemplo
Capítulo 6. Sentencias de control
6.1 Estructuras de selección
6.1.1 Sentencia if
6.1.2 Estructura case of
6.2 Estructuras repetitivas
6.2.1 El bucle for
6.2.2 La sentencia for in
6.2.3 El bucle while
6.2.4 La estructura repeat
6.3 Sentencias de control en los bucles
6.3.1 Break
6.3.2 Continue
6.4 Las excepciones
6.4.1 Flujo de programa
6.4.2 Clases de excepciones
Capítulo 7. Funciones y procedimientos
7.1 Funciones
7.1.1 Declaración y definición de una función
7.1.2 Parámetros de referencia
7.1.3 Argumentos por defecto
7.1.4 Sobrecarga de funciones
7.2 Procedimientos
7.2.1 Definición de un procedimiento
7.2.2 Declaración
7.2.3 Argumentos
7.2.4 La rutina Exit
7.3 Rutinas recursivas
Capítulo 8. Programación orientada a objetos
8.1 Clases y objetos
8.2 Gestión de memoria
8.3 Encapsulado
8.3.1 Niveles de acceso a los campos
8.3.2 Encapsulado con propiedades
8.4 Definición de objetos con unidades
8.4.1 Uso de las unidades
Capítulo 9. Herencia y polimorfismo
9.1 La herencia
9.1.1 La cláusula inherited
9.1.2 La cláusula Self
9.2 El polimorfismo
9.2.1 Métodos virtuales, dinámicos y abstractos
9.2.2 Polimorfismo multiplataforma
Capítulo 10. Lazarus y la programación visual
10.1 La estructura de un programa gráfico
10.2 El inspector de proyecto
10.3 El editor de código fuente
10.3.1 Navegación rápida
10.3.2 Compleción automática de código
10.4 El primer programa gráfico
10.4.1 Modificar el título e icono del programa
10.5 El inspector de objetos
10.5.1 La pestaña Restringido
10.6 La paleta de componentes
Capítulo 11. Controles visuales
11.1 La clase tcontrol
11.2 El nombre de los componentes
11.3 Propiedades de activación y visibilidad
11.4 Eventos
11.5 Los componentes de visualización
11.5.1 TLabel
11.5.2 TStaticText
11.5.3 TBevel
11.5.4 TStatusBar
11.6 Los componentes de entrada de texto
11.6.1 TEdit y TLabeledEdit
11.6.2 TMaskEdit
11.6.3 Edición de números enteros y reales
11.7 Selección de opciones
11.7.1 TCheckBox y TRadioButton
11.7.2 Listas
11.7.3 Rangos
Capítulo 12. La interfaz de usuario
12.1 Formularios de varias páginas
12.1.1 TPageControl y TTabSheet
12.1.2 La interfaz de un asistente
12.2 El control TToolBar
12.2.1 El ejemplo ToolBarDemo
12.3 El componente TAc tionList
12.3.1 Acciones predefinidas en Lazarus
Capítulo 13. Clases no visuales
13.1 La clase tpersistent
13.2 Colecciones
13.3 Listas y listas de cadena
13.3.1 Pares nombre-valor
13.3.2 Trabajar con listas de cadenas
13.4 Flujos de datos
13.4.1 La clase TStream
13.4.2 Clases de flujos
13.4.3 Flujos de datos de archivo
13.4.4 Compresión de flujos de datos con ZStream
13.4.5 Criptografía de un flujo de datos con Blowfish
Capítulo 14. Manipulación de ficheros
14.1 Registros y campos de un archivo
14.2 Operaciones sobre ficheros
14.3 Tipos de ficheros
14.4 El tipo file
14.4.1 Asignación de un fichero
14.5 Archivos de texto
14.5.1 Apertura de archivos de texto
14.5.2 Lectura/Escritura de datos en archivos de texto
14.5.3 Cierre de los ficheros de texto
14.6 Archivos binarios
14.6.1 Apertura de archivos binarios
14.6.2 Lectura/Escritura de datos en archivos binarios
14.6.3 Cierre de los ficheros
14.6.4 Otras operaciones con archivos binarios
14.7 Archivos sin tipo
14.7.1 Procedimientos de apertura
14.7.2 Procedimientos de entrada y salida de datos
14.8 Los ficheros en la poo
14.8.1 Archivos de texto
14.8.2 Archivos binarios
14.9 Un último apunte: nombres de ficheros
Capítulo 15. Los límites de la programación
15.1 Recursividad y números factoriales
15.2 Permutaciones
15.3 Tiempo y computación
15.4 De eventos a hilos
15.4.1 Multihilos en Lazarus
Capítulo 16. Técnicas de depuración
16.1 Prevención de errores
16.2 Unidades de prueba
16.2.1 Un ejemplo de prueba
16.3 Mensajes del compilador
16.4 Las aserciones
16.5 Observador de código
16.6 Refactorización
16.7 Seguimiento de las variables
16.7.1 La directiva {$DEFINE DEBUG}
16.7.2 Funciones de depuración
16.7.3 Interrupciones
16.7.4 El servidor de depuración
16.8 La unidad heaptrc
16.9 El depurador gdb
Material adicional
ÍNDICE ALFABÉTICO