Lázaro (software)

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar
Ambiente libre de desarrollo integrado multiplataforma para Free Pascal

Lazarus es un entorno de desarrollo integrado (IDE) multiplataforma gratuito para el desarrollo rápido de aplicaciones (RAD) utilizando el compilador Free Pascal. Su objetivo es proporcionar un entorno de desarrollo fácil de usar para los programadores que desarrollan con el lenguaje Object Pascal, que es lo más parecido posible a Delphi.

Los desarrolladores de software utilizan Lazarus para crear consolas de código nativo y aplicaciones de interfaz gráfica de usuario (GUI) para el escritorio y también para dispositivos móviles, aplicaciones web, servicios web, componentes visuales y bibliotecas de funciones para diversas plataformas, incluidas Mac, Linux y Windows.

Un proyecto creado usando Lazarus en una plataforma se puede compilar en cualquier otra que admita el compilador Free Pascal. Para las aplicaciones de escritorio, una única fuente puede apuntar a macOS, Linux y Windows, con poca o ninguna modificación. Un ejemplo es el propio Lazarus IDE, creado a partir de una única base de código y disponible en todas las plataformas principales, incluida Raspberry Pi.

Características

Lazarus proporciona un entorno de desarrollo WYSIWYG para la creación de interfaces de usuario enriquecidas, lógica de aplicaciones y otros artefactos de código de soporte, similar a Borland Delphi. Además de las funciones de gestión de proyectos, Lazarus IDE también proporciona:

  • Diseño de ventanas visuales
  • widgets GUI o componentes visuales como cajas de edición, botones, diálogos, menús, etc.
  • Componentes no visuales para comportamientos comunes como persistencia de configuraciones de aplicación
  • Componentes de conectividad de datos para MySQL, PostgreSQL, FireBird, Oracle, SQLite, Sybase y otros
  • Conjunto de widget de datos que permite al desarrollador ver datos en componentes visuales del diseñador para ayudar con el desarrollo
  • Depurador interactivo
  • Finalización del Código
  • Plantillas de código
  • Destacado sintaxis
  • Ayuda sensible al contexto
  • Administrador de recursos de texto para la internacionalización
  • Formato de código automático
  • Extensibilidad mediante componentes personalizados

Desarrollo multiplataforma

Arquitectura de la Biblioteca del Componente de Lázaro
Interacción de bibliotecas de clase y widgetsets en Lázaro y Pascal Libre

Lazarus utiliza Free Pascal como compilador de back-end. Como Free Pascal admite aplicaciones transversales, las aplicaciones Lazarus pueden ser cruzadas de Windows, Linux o macOS a cualquiera de los objetivos de compilación Pascal gratuito compatibles. Las aplicaciones para dispositivos integrados (smartphones, PDAs, routers, consolas de juego) se pueden completar en cualquier plataforma de escritorio.

Lazarus proporciona un marco de aplicación multiplataforma llamado Lazarus Component Library (LCL), que proporciona una interfaz única y unificada para los programadores, con diferentes implementaciones específicas de plataforma. Utilizando LCL, es posible crear aplicaciones en un escribir una vez, compilar en cualquier lugar de manera, a menos que las características dependientes del sistema se utilicen explícitamente. LCL fue modelado originalmente después de la Biblioteca del Componente Visual (VCL) en Delphi 6, pero no está restringido a Windows. Esto se hace separando la definición de clases de widget común y su aplicación específica de widgetset. Cada conjunto de widget es compatible con proporcionar un interfaz que interactúa directamente con el conjunto.

Desarrollo de bases de datos

Los desarrolladores pueden instalar paquetes que permiten a Lazarus apoyar varios sistemas de gestión de bases de datos (DBMSes). Los programas pueden interactuar con un DBMS a través del código o por los componentes caídos en un formulario.

Los siguientes DBMS son compatibles desde el primer momento:

  • dBase y FoxPro,
  • InterBase y Firebird
  • Microsoft SQL Server y Sybase ASE
  • MySQL y MariaDB
  • Bases de datos ODBC
  • Oracle
  • PostgreSQL
  • SQLite

Diferencias con Delphi

Lázaro se parece a Delfos en muchos aspectos. Es compatible con el modelo de objetos componentes (COM) desde la versión 2.2.0 y ofrece la mayoría de las funcionalidades de red de Delphi. Sin embargo, existen limitaciones en cuanto al rendimiento y el conjunto de funciones.

Lazarus no admite lo siguiente, mientras que Delphi sí lo hace:

  • Datasnap (Utiliza la funcionalidad de la empresa propiedad Embarcadero, no un sistema documentado públicamente).
  • Paquetes cargables dinámicamente
  • . Las bibliotecas NET (código .NET, sin embargo, pueden invocar el código Pascal Object o cualquier otra biblioteca nativa a través de los Servicios de Invocación de Plataformas).
  • Extensivo Microsoft Conectividad de oficina (Lazarus sólo puede abrir Microsoft Excel con una simple tabla llenada.)

LCL no es totalmente compatible con VCL. Esto hace que el extenso repositorio de widgets VCL disponibles sea inaccesible sin conversión. El esfuerzo de conversión implica principalmente cierta edición, aunque existen algunas diferencias fundamentales. Al realizar la portabilidad, las unidades faltantes en las bibliotecas son un problema considerablemente mayor que las incompatibilidades entre LCL y VCL. Los componentes de Delphi se pueden convertir para que funcionen en Lazarus. Esto puede ser complejo, aunque menos que para las versiones de Lazarus anteriores a 0.9.30, basadas en FP 2.4.x.

En Windows, el tamaño predeterminado de un archivo ejecutable es mayor que el equivalente de Delphi 6 o 7, ya que Lazarus almacena información de depuración dentro del ejecutable, en lugar de archivos separados. A partir de la versión 0.9.30, Lazarus admite símbolos de depuración externos mediante opciones del compilador. De este modo, el tamaño de los archivos de programa se puede reducir significativamente. Alternativamente, la información de depuración se puede eliminar de los EXE (por ejemplo, usando un puerto del comando strip de UNIX).

Distribución y licencias

Al igual que Free Pascal, Lazarus es software libre. Se distribuyen diferentes partes bajo diferentes licencias de software libre, incluidas GPL, LGPL, MPL y una versión modificada de LGPL. LCL, que está integrado estáticamente en los ejecutables producidos, tiene la licencia de una versión modificada de LGPL, lo que otorga permisos adicionales para permitir que se integre estáticamente en el software producido, incluidos los propietarios.

Instalar un paquete de tiempo de diseño equivale a vincularlo al IDE, de modo que distribuir el IDE de Lazarus con un paquete de tiempo de diseño incompatible con GPL, como los paquetes JEDI con licencia pública de Mozilla, preinstalados, causaría una licencia violación. Esto no prohíbe que se desarrollen paquetes propietarios con Lazarus.

Historia

El primer intento de desarrollar un IDE para Free Pascal se remonta a 1998, bajo el mandato "Megido" proyecto. Después del fracaso del proyecto, algunos de sus desarrolladores iniciaron un nuevo proyecto basado en una base más flexible. El nombre "Lázaro" alude al resurgimiento del concepto Megido. Está inspirado en Lázaro de Betania, quien, según el Evangelio de Juan, fue devuelto a la vida por Jesús cuatro días después de su muerte.

La primera versión preliminar de LCL estuvo lista para su lanzamiento en 2001. En 2003, la primera versión beta de Lazarus (0.9.0.3) se alojó en SourceForge. La versión 1.0 de Lazarus se lanzó en 2012. En 2014 se lanzó un Lazarus 1.2 significativamente mejorado. Se habían realizado más de cuatro millones de descargas desde SourceForge hasta marzo de 2014.

Versiones

Leyenda:
Versión antigua
Versión más antigua, todavía mantenida
Última versión
Última versión de vista previa
Liberación del futuro
Número de versión Fecha de lanzamiento Plataforma Comentarios
Versión antigua, ya no se mantiene: 0,05 Enero de 2001 Windows Primera publicación de la biblioteca de componentes
Versión antigua, ya no se mantiene: 0.1 Enero de 2001 Windows Rediseñar la biblioteca de componentes para apoyar el desarrollo sensible a la plataforma para Linux y Windows utilizando GTK+ y otros widgetsets.
Versión antigua, ya no se mantiene: 0.5 30 de enero de 2001 Windows, Linux Corrección de errores y nuevas características que apoyan el desarrollo multiplataforma y los esqueletos del proyecto.
Versión antigua, ya no se mantiene: 0,8 9 de octubre de 2001 Windows, Linux Codetools implementado, bug fixes.
Versión antigua, ya no se mantiene: 0.8.2 17 de enero de 2002 Windows, Linux Encontrar funciones ampliadas.
Versión antigua, ya no se mantiene: 0,8.4 19 de agosto de 2002 Windows, Linux Gráficos mejorados y soporte de fuentes, soporte para la sintaxis Delphi 6. Los DFMs binarios ahora se convierten automáticamente en LFMs.
Versión antigua, ya no se mantiene: 0,8.5 26 de octubre de 2002 Windows, Linux LCL se decoupled de interfaces.
Versión antigua, ya no se mantiene: 0.9.0.3 4 de septiembre de 2003 Linux Primera publicación sobre SourceForge
Versión antigua, ya no se mantiene: 0.9.1 27 de febrero de 2004 Windows, Linux Soporte para paquetes, numerosas propiedades agregadas y mejoradas.
Versión antigua, ya no se mantiene: 0.9.4 3 de enero de 2005 Windows El apoyo mejorado, la versión pública más antigua alojada en SourceForge
Versión antigua, ya no se mantiene: 0.9.6 25 de febrero de 2005 Windows
Versión antigua, ya no se mantiene: 0.9.8 19 de julio de 2005 Windows
Versión antigua, ya no se mantiene: 0.9.10 3 de octubre de 2005 Windows, Mac OS X (PPC) Corrección de errores, extensibilidad de IDE mejorado, editor de documentos para archivos FPDoc. Incluye Free Pascal 2.0.1
Versión antigua, ya no se mantiene: 0.9.12 7 de febrero de 2006 Windows Nuevos paquetes para soporte de bases de datos, aplicaciones CGI e impresión.
Versión antigua, ya no se mantiene: 0.9.14 2 de abril de 2006 Windows, Mac OS X (PPC), Linux Bugfixes, más controles en la interfaz WinCE y Qt4
Versión antigua, ya no se mantiene: 0.9.16 28 de mayo de 2006 Windows, Mac OS X (PPC), Linux Corrección de errores, ayuda en línea para ventanas IDE y para aplicaciones LCL, mejoras en la interfaz de widgetset QT. Incluye Free Pascal 2.0.2
Versión antigua, ya no se mantiene: 0.9.18 23 de septiembre de 2006 Windows, Mac OS X (PPC), Linux Bugfixes, lista de procedimientos implementada, nueva herramienta de línea de comandos "lazbuild"
Versión antigua, ya no se mantiene: 0.9.20 5 de noviembre de 2006 Windows, Mac OS X (PPC), Linux Bufixes, plegable de código implementado, widget QT mejorado.
Versión antigua, ya no se mantiene: 0.9.22 26 de marzo de 2007 Windows, Mac OS X (PPC), Linux Nuevos componentes para escribir servicios de Windows y daemons Linux, soporte para cursores de ratón personalizados. Incluye Free Pascal 2.0.4
Versión antigua, ya no se mantiene: 0.9.24 15 de noviembre de 2007 Windows, Mac OS X, Linux Primer lanzamiento estable para Win64, WinCE y Mac OS X basado en Intel. Mejoras en interfaces de widgetset Qt, Carbon y Gtk2. Barra de herramientas personalizable. Incluye Free Pascal 2.2.0
Versión antigua, ya no se mantiene: 0.9.26 5 de octubre de 2008 Windows, Mac OS X, Linux Se reescribió el sistema gráfico interno. LCL ahora utiliza cadenas Unicode codificadas como UTF-8 en todas las plataformas. FPDoc ayuda en herramientas. Primera versión para funcionar nativamente usando el widgetset Carbon en Mac OS X.
Versión antigua, ya no se mantiene: 0.9.26.2 13 de marzo de 2009 Windows, Mac OS X, Linux Corrección de errores, mejor apoyo de iconos. Incluye Free Pascal 2.2.2
Versión antigua, ya no se mantiene: 0.9.28 29 de septiembre de 2009 Windows, Mac OS X, Linux Mejoras de editor y depurador incluyendo soporte para fuentes de doble byte como el este, japonés, chino y árabe, tamaños de archivos más pequeños de aplicaciones generadas. Incluye Free Pascal 2.2.4
Versión antigua, ya no se mantiene: 0.9.28.2 25 de octubre de 2009 Windows, Mac OS X, Linux Principalmente correcciones de errores.
Versión antigua, ya no se mantiene: 0.9.30 22 de marzo de 2011 Windows, Mac OS X, Linux Gran número de nuevas características, incluyendo docking y varias ventanas de código fuente. Basado en Free Pascal 2.4.2.
Versión antigua, ya no se mantiene: 0.9.30.2RC1 30 de septiembre de 2011 Windows, Mac OS X, Linux Incluye Free Pascal 2.4.4.
Versión antigua, ya no se mantiene: 0.9.30.2RC2 26 de octubre de 2011 Windows, Mac OS X, Linux Lanzamiento del candidato a Lazarus 0.9.30.2.
Versión antigua, ya no se mantiene: 0.9.30.2 5 de noviembre de 2011 Windows, Mac OS X, Linux Corrección de errores.
Versión antigua, ya no se mantiene: 0.9.30.4RC1 3 de marzo de 2012 Windows, Mac OS X, Linux Corrección de errores, incluye Pascal gratuito 2.6.0. Lanzamiento del candidato a Lazarus 0.9.30.4.
Versión antigua, ya no se mantiene: 0.9.30.4RC2 7 de marzo de 2012 Windows, Mac OS X, Linux Lanzamiento del candidato a Lazarus 0.9.30.4.
Versión antigua, ya no se mantiene: 0.9.30.4RC3 11 de marzo de 2012 Windows, Mac OS X, Linux Lanzamiento del candidato a Lazarus 0.9.30.4.
Versión antigua, ya no se mantiene: 0.9.30.4 14 de marzo de 2012 Windows, Mac OS X, Linux Corrección de errores
Versión antigua, ya no se mantiene: 1.0RC1 29 de julio de 2012 Windows, Mac OS X (Intel), Linux El candidato de lanzamiento para Lázaro 1.0.
Versión antigua, ya no se mantiene: 1.0RC2 21 de agosto de 2012 Windows, Mac OS X, Linux El candidato de lanzamiento para Lázaro 1.0.
Versión antigua, ya no se mantiene: 1.0 28 de agosto de 2012 Windows, Mac OS X, Linux Primera versión final. Esta versión estable incluye Free Pascal 2.6.0. Múltiples correcciones y mejoras del IDE, incluyendo una función macro, ampliación del código-folding y nuevas funciones de depurador.
Versión antigua, ya no se mantiene: 1.0.2 10 de octubre de 2012 Windows, Mac OS X, Linux correcciones de errores, adiciones menores a LCL y widgetsets
Versión antigua, ya no se mantiene: 1.0.4 2 de diciembre de 2012 Windows, Mac OS X, Linux correcciones de errores, adiciones menores a IDE, LCL y widgetsets, así como LazReport y TAChart
Versión antigua, ya no se mantiene: 1.0.6 3 de febrero de 2013 Windows, Mac OS X, Linux correcciones de errores, adiciones menores a IDE, LCL y widgetsets, así como LazReport y TAChart
Versión antigua, ya no se mantiene: 1.0.8 19 de marzo de 2013 Windows, Mac OS X, Linux Corrección de errores. Incluye Pascal gratuito 2.6.2
Versión antigua, ya no se mantiene: 1.0.10 12 de junio de 2013 Windows, Mac OS X, Linux Corrección de errores.
Versión antigua, ya no se mantiene: 1.0.12 24 de agosto de 2013 Windows, Mac OS X, Linux Corrección de errores.
Versión antigua, ya no se mantiene: 1.0.14 16 de noviembre de 2013 Windows, Mac OS X, Linux Corrección de errores.
Versión antigua, ya no se mantiene: 1.1.99 16 de septiembre de 2013 Windows, Mac OS X, Linux Versión alfa para Lazarus 1.2
Versión antigua, ya no se mantiene: 1.2RC1 3 de noviembre de 2013 Windows, Mac OS X, Linux Lanzamiento del candidato a Lazarus 1.2
Versión antigua, ya no se mantiene: 1.2RC2 13 de enero de 2014 Windows, Mac OS X, Linux Lanzamiento del candidato a Lazarus 1.2
Versión antigua, ya no se mantiene: 1.2 4 de marzo de 2014 Windows, Mac OS X, Linux Múltiples características nuevas, incluyendo un grabador de macros, soporte para gráficos con capas y script Pascal. Basado en Free Pascal 2.6.2
Versión antigua, ya no se mantiene: 1.2.2 23 de abril de 2014 Windows, Mac OS X, BSD, Solaris, Linux Corrección de errores. Basado en Free Pascal 2.6.4
Versión antigua, ya no se mantiene: 1.2.4 16 de junio de 2014 Windows, Mac OS X, BSD, Solaris, Linux Corrección de errores.
Versión antigua, ya no se mantiene: 1.2.6 12 de octubre de 2014 Windows, Mac OS X, BSD, Solaris, Linux Corrección de errores.
Versión antigua, ya no se mantiene: 1.4.0 19 de abril de 2015 Windows, Mac OS X, BSD, Solaris, Linux Mejoras de editor, manejo de recursos y nuevas características adicionales. Basado en Free Pascal 2.6.4.
Versión antigua, ya no se mantiene: 1.4.2 Julio 14, 2015 Windows, Mac OS X, BSD, Solaris, Linux Corrección de errores.
Versión antigua, ya no se mantiene: 1.4.4 4 de octubre de 2015 Windows, Mac OS X, BSD, Solaris, Linux Corrección de errores.
Versión antigua, ya no se mantiene: 1.6 Febrero 18, 2016 Windows, Mac OS X, Linux Múltiples características nuevas, incluyendo docking, grupos de proyectos y editor mejorado. Basado en Free Pascal 3.0.0.
Versión antigua, ya no se mantiene: 1.6.2 Noviembre 13, 2016 Windows, Mac OS X, Linux Corrección de errores.
Versión antigua, ya no se mantiene: 1.6.4 Febrero 26, 2017 Windows, macOS, Linux Corrección de errores. Basado en Free Pascal 3.0.2.
Versión antigua, ya no se mantiene: 1.8.0 Diciembre 6, 2017 Windows, macOS, BSD, Linux Mayor liberación con muchas características nuevas incluyendo un administrador de paquetes en línea. Basado en Free Pascal 3.0.4.
Versión antigua, ya no se mantiene: 1.8.2 28 de febrero de 2018. Corrección de errores.
Versión antigua, ya no se mantiene: 1.8.4 22 de mayo de 2018 Windows, macOS, BSD, Linux Corrección de errores.
Versión más antigua, sin embargo, mantenida: 2.0.0 5 de enero de 2019 Windows, macOS, BSD, Linux Múltiples características nuevas incluyendo soporte de Cocoa y la introducción de un transpilador Pascal a JavaScript.
Versión más antigua, sin embargo, mantenida: 2.0.2 16 de abril de 2019 Windows, macOS, BSD, Linux Corrección de errores.
Versión más antigua, sin embargo, mantenida: 2.0.4 Agosto 6, 2019 Windows, macOS, BSD, Linux Corrección de errores.
Versión más antigua, sin embargo, mantenida: 2.0.6 Noviembre 1, 2019 Windows, macOS, BSD, Linux Corrección de errores.
Versión más antigua, sin embargo, mantenida: 2.0.8 16 de abril de 2020 Windows, macOS, BSD, Linux Corrección de errores, mejora el widgetset Cocoa.
Versión más antigua, sin embargo, mantenida: 2.0.10 11 de julio de 2020 Windows, macOS, BSD, Linux Corrección de errores, adiciones menores, primera versión basada en Free Pascal 3.2.0.
Versión más antigua, sin embargo, mantenida: 2.0.12 21 de febrero de 2021 Windows, macOS, BSD, Linux Basado en Free Pascal 3.2.0. Lista de correcciones disponibles.
Versión más antigua, sin embargo, mantenida: 2.2.0 5 de enero de 2022 Windows, macOS, BSD, Linux Basado en Free Pascal 3.2.2. Múltiples mejoras, entre otras en el IDE, el LCL y los widgetsets.
Versión más antigua, sin embargo, mantenida: 2.2.2 19 de mayo de 2022 Windows, macOS, BSD, Linux Corrección de errores.
Versión más antigua, sin embargo, mantenida: 2.2.4 28 de septiembre de 2022 Windows, macOS, BSD, Linux Corrección de errores.
Versión más antigua, sin embargo, mantenida: 2.2.6 6 de marzo de 2023 Windows, macOS, BSD, Linux Corrección de errores.
Versión estable actual: 3.021 de diciembre de 2023 Windows, macOS, BSD, Linux Múltiples mejoras, entre otras en el IDE, el LCL, los widgetsets y el depurador.

Ejemplos de aplicaciones producidas con Lazarus

  • ASuite es un lanzador de aplicaciones de código abierto gratuito para Windows. Desde 2.1 Alpha 1, está completamente escrito en Lázaro/FPC.
  • Beyond Compare es una utilidad de comparación de datos para Windows, macOS y Linux. Las versiones de macOS y Linux se compilan utilizando Lazarus/FPC.
  • Cartes du Ciel es un programa planetario gratuito para Linux, macOS y Windows. El software mapea y etiqueta la mayoría de las constelaciones, planetas y objetos que puedes ver con un telescopio. Está completamente escrito en Lazarus/FPC y publicado bajo GPL.
  • C-evo es un juego de estrategia de código abierto basado en el turno que ha sido portado de Delphi a Lazarus.
  • Cheat Engine es un escáner de memoria de código abierto/hex editor/debugger. Es útil para hacer trampas en juegos de ordenador. Desde la versión 6.0 se compila con Lazarus/FPC.
  • EPANET, un paquete de software para modelar sistemas de distribución de agua.
  • HNSKY, Hallo Northern Sky es un programa planetario gratuito para Windows y Linux. Desde la versión 3.4.0 escrita y compilada con Lazarus/FPC.
  • MyNotex es un software libre para Linux útil para tomar y gestionar notas textuales.
  • PeaZip es un archivador de código abierto, hecho con Lazarus/FPC.
  • TorChat se está alejando de Python y está siendo reescrito en Lazarus + Free Pascal.
  • Total Commander 64-bit versión.
  • Double Commander es un gestor de archivos de código abierto multiplataforma con dos paneles lado a lado. Está inspirado en Total Commander, además de algunas ideas nuevas.
  • CudaText es un editor de texto de código abierto multiplataforma.
  • SimThyr es un programa de simulación continua para la homeostasis tiroidea.

Ejemplos de bibliotecas Delphi compatibles con Lazarus

  • GLScene es una librería basada en OpenGL que proporciona componentes visuales y objetos que permiten describir y renderizar escenas 3D.
  • OpenWire es una biblioteca de código abierto que permite realizar conexiones entre componentes LCL similares a LabVIEW o Agilent VEE.
Más resultados...
Tamaño del texto:
undoredo
format_boldformat_italicformat_underlinedstrikethrough_ssuperscriptsubscriptlink
save