你的位置: 首页 > 新闻资讯 > 技术博客

为什么使用Lazarus Pascal作为主要编程语言?

2022-11-24 08:32:27

Lazarus(拉撒路)的历史

Lazarus(拉撒路)成立于1999年2月。它主要由三个人创立:

  • 克里夫·贝斯曼
  • 肖恩·米勒
  • 迈克尔·赫斯

这三人都曾试图参与解散的Megido项目。在项目解散的沮丧中,他们开始了Lazarus(拉撒路)项目。在接下来的几年里,它的支持者和开发者稳步增长。然而几个创始人由于各种原因不再参与该项目。

团队中年纪第二大的成员是Marc Weustink。他于1999年8月参与了该项目。紧随其后的是2000年9月参与其中的马蒂亚斯·加尔特纳(Mattias Gaertner)。他们两人都是Lazarus(拉撒路)的核心的主要贡献者。

那么什么是Lazarus(拉撒路)呢?

Lazarus是一个与Delphi兼容的跨平台IDE开发工具,编程语言是Free Pascal。它包括LCL可视化组件库,它或多或少与Delphi的VCL组件库兼容。Free Pascal是一个GPL开源编译器,可以在Linux,Windows,macOS,FreeBSD等上运行。Free Pascal被设计为能够理解和编译Delphi语法,这是OOP面向对象的经典Pascal的扩展,关系类似于C++与C语言。Lazarus是Free Pascal缺失的开发工具IDE拼图的一部分,它将允许您在上述所有平台上开发类似Delphi的程序。与Java不同,Java努力在任何地方运行一次写入,Lazarus和Free Pascal努力在任何地方进行一次编译即可运行。由于完全相同的编译器在上述所有平台上都可用,这意味着您无需进行任何重新编码即可为不同的平台生成相同的产品。

看起来确实很棒,但是用户界面GUI 呢?Lazarus(拉撒路)使用什么小部件集?

答案是完全由你自己决定。Lazarus正在被开发为完全独立于操作系统API。编写代码后,只需将其链接到您选择的 API 小部件集即可。如果你想使用GTK+,太好了!如果你想让它符合 Gnome 标准,那就太好了!只要您要使用的小部件集的界面代码可用,您就可以链接到它。如果它不可用,那么你可以自己编写它。

例如。假设您正在使用标准Windows小部件在Windows上创建产品。现在您要创建一个 Linux 版本。首先,您决定要使用的小部件集。假设你想使用 gtk+。因此,您将代码复制到Linux开发机器上,编译并链接到gtk+接口单元。就是这样。您现在刚刚创建了 Windows 产品的 Linux 版本,无需任何其他编码。

在开发的这一点上,我们使用Win32,gtk2+,Carbon,Cocoa和QT作为我们的API小部件集。自定义绘制组件的绑定正在开发中,其他小部件集也在路线图开发计划中。

那么这个软件真的像Delphi一样强大吗?

当然如此。它已经完全完成开发了吗?不,还没有。整个 IDE 是完整的,可用于大多数编程需求。该项目的几个方面仍然需要帮助(暗示、暗示:请提供捐助Lazarus)。

可以使用我现有的Delphi代码吗?

有些代码是可以的。如果代码是标准的Delphi Object Pascal,并且它使用Delphi中的标准组件,那么答案是肯定的。如果它使用某些特定的数据库、OCX 或 DCU,那么答案是否定的。这些项目特定于 Windows,只能在 Windows 上和 Windows 中工作。但是,如果您只想使用Free Pascal和Lazarus创建Windows产品,那么答案将是肯定的。这尚未添加到LCL中,但将来应该可以。

公司或个人可以用Lazarus(拉撒路)开发商业软件产品吗?

是的。Free Pascal 编译器的代码是在 GPL 下授权的。这意味着它是开源的,免费的,无论你想改成什么名字。如果您愿意,您可以修改代码,但您必须分发这些更改或将其提供给其他人(如果他们希望使用它)。

FCL(Free Pascal Component Libraries)和LCL(最终将成为FCL的一部分)在修改后的LGPL下获得许可。简而言之,这意味着您可以编写自己的专有软件,仅链接到这些库。您可以出售您的应用程序,而无需提供或提供您的代码。但是,与编译器一样,如果您对 FCL 或 LCL 进行修改,则必须将这些更改提供给公众和全世界。

无语了,为啥要叫Lazarus(拉撒路)这个名字?

尝试构建Delphi克隆产品的原始项目之一是Megido。然而,这种努力最后失败了。如你所知,Lazarus拉撒路是圣经中被耶稣基督从死里复活的人物。所以。该项目被命名为Lazarus,因为它是从Megido的死亡项目中开始/提出的。

战石电子为什么使用Lazarus(拉撒路)Pascal作为公司主力开发工具?

现实的原因是Lazarus(拉撒路)是完全免费开源的开发工具。另一个原因是因为战石公司的创始人在大学的时候系统学习了Borland公司的Turbo C和Turbo Pascal,并在职业生涯中大部分时间使用Delphi,对Pascal的优美、简洁、功能强大的类英语语法印象深刻。举例:完全用Lazarus(拉撒路)Pascal开发的开源免费3D游戏引擎Castle Game Engine如下图所示:

Zrzut-ekranu-z-2022-11-06-04-25-59.png



微站点
查看微站点
个人中心
人工客服
购物车
回顶部