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. Capítulo 1. El arte de programar Capítulo 2. Lazarus y pascal Capítulo 3. Tipos, variables y constantes Capítulo 4. Tipos estructurados de datos Capítulo 5. Operadores y expresiones Capítulo 6. Sentencias de control Capítulo 7. Funciones y procedimientos Capítulo 8. Programación orientada a objetos Capítulo 9. Herencia y polimorfismo Capítulo 10. Lazarus y la programación visual Capítulo 11. Controles visuales Capítulo 12. La interfaz de usuario Capítulo 14. Manipulación de ficheros Capítulo 15. Los límites de la programación Capítulo 16. Técnicas de depuración
1.1 Lenguajes de programación
1.2 Pascal , un lenguaje de propósito general
1.3 Lazarus
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
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
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
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
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
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
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
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
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
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
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
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
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
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