提到Lazarus就不能不说FreePascal.
1.FreePascal是纯粹的32位编译器。这一点不要被FreePascal的设计初衷所蒙蔽:最初FreePascal的设计者只是想提供一个在 linux下面的TurboPascal 7.0。然而就算在设计的最初阶段,FreePascal就已经是一个纯粹的32位编译器,这是TurboPascal 7.0所无法比拟的。
2.FreePascal是源码跨平台的。我的意思是,当你开发好程序后,源代码能够在各种平台上编译,如果没有使用平台相关的特性,则可以实现 “一次编写,到处编译”。但是实际上,当你在linux下开发时,经常不可避免地使用linux特有的函数,而在windows上开发时经常会用到 linux所不支持的东西,在这种情况下,只好采用预编译指令来控制了。
3.FreePascal的编译速度极快,其编译出的二进制码效率非常高。具体的性能我无法给出比较客观的测试结果,但你试着编译、运行一下,就明白我说的是什么意思了。
4.广泛支持的多种功能。在freepascal内有多种工具库的接口可供使用。比如:ncurses,opengl,xforms,x11, md5,regexpr(正则表达式),libpng,ggi,gtk,gtk2,svgalib,zlib等等,还有很多数据库的接口如oracle, postgres, mysql等等。在开发时,既可做底层开发,也可以做前端开发。可上可下,非常灵活。看看帮助文档中的unit就可以知道“底层”的这个“底”字究竟是什 么意思了。
4.FreePascal是面向对象的。FreePascal的设计者最大限度地兼容了Delphi的Object Pascal语法,从而使你能够借力于面向对象技术的强大力量。FreePascal实现了大多数Delphi底层类库,使得开发非常方便。对于可视化类 库,则由项目Lazarus实现。
5.FreePascal能够很好地支持图形开发,虽然不是可视化的编程,也没有比较强大的可视化类库(Lazarus正在此领域努力),但是借 助于其面向对象的能力,以及对多种图形库的支持,使得用FreePascal开发图形程序成为一件非常容易的事情。大家可以下载sourceforge上 的gtk2forpascal,看看上面的例子就明白了。现在FreePascal非常好地支持gtk、gtk2,也能支持较为底层的xforms、 x11编程,如果有人愿意做的话,qt编程也不难得到支持。
6.FreePascal也支持一些比较流行的新技术,如xml。另外也提供了一个rtf parser。对于网络编程也提供了很多有用的库。
Lazarus的设计目标是应用Free Pascal,所以所有凡是Free Pascal能运行的平台,Lazarus都可以运行。最新版本能运行于Linux,Win32和FreeBSD。整个界面的外观和操作和Delphi IDE一样,因此,如果你会使用Delphi的话,用起Lazarus IDE来就一定能得心应手了。它是一个用于Free Pascal的快速应用开发(RAD)的面向对象的Pascal集成开发环境(IDE)。最新的版本利用了SynEdit,能把Delphi的代码 移植到Lazarus。下面是这个IDE的一些特色:Form Designer (表单设计器)、Object Inspector (对象观察器)、Editor Options (编辑器选项)、Compiler Options (编译选项)、Environment Options (环境选项)、Project Options (项目选项)、Code Completion (代码自动完成)、Syntax Highlighting (语法高亮)等。
官方网址:
http://www.lazarus.freepascal.org/
http://sourceforge.net/project/showfiles.php?group_id=89339