为什么Delphi程序员会使用Lazarus作为IDE,而不是使用Delphi的IDE?

48
我一直很喜欢使用Delphi IDE进行编程。
但是我听说过Lazarus编程环境,并且也听说有些Delphi程序员使用它代替Delphi IDE。
Lazarus相比Delphi IDE有哪些优势?为什么一个Delphi程序员会或应该转而使用它呢?
答案让我比之前更有疑问。似乎有些人不同意在开发Delphi代码时可以使用Lazarus作为编辑器。我想你可以将所有内容保留在Delphi中,只是更改IDE。 Lazarus Wiki的Lazarus for Delphi Users部分说:

转换Delphi项目的第一件事
打开Lazarus后,您应该转到工具,然后转换Delphi项目为Lazarus项目。这不会为您做所有事情,但仍然会带您很远。请注意,Lazarus IDE的转换工具通常是单向转换。如果您需要保留Delphi兼容性,以便可以使用Delphi和Lazarus编译您的项目,请考虑使用XDev Toolkit转换您的文件。

因为Lazarus是免费的,并不是切换的原因,但不会因此在物理$方面惩罚您的切换。(您仍然需要投资时间进行转换和学习。时间=$)。

根据您的回答,我尽我所能得出的结论是,为什么有人可能从Delphi切换到Lazarus:显然,它必须提供Delphi目前无法提供的某些内容。当前是多平台支持和可能的64位支持。Delphi曾经有Kylix,但没有Mac支持。

但是,由于Embarcadero公司即将推出这两种编程语言,并且承诺很快会推出64位编程语言,你告诉我没有理由(至少对我来说)去切换。


2
显而易见的原因是有些人喜欢它。但是关于真正的功能比较,我无法告诉你。 - RCIX
1
在https://dev59.com/W3RB5IYBdhLWcg3wa2q2中,我们看到了其他用于编写Delphi代码的IDE,包括Emacs、Multi Edit和EditPad Pro。如果有人使用这些工具来编写Delphi代码,那么一定有其原因。我认为这个问题是询问为什么Delphi用户可能会选择Lazarus而不是其他替代品,而不是继续使用Delphi自己的IDE。(如果Ikessler能够支持我的解释,那就太好了,因为许多其他人似乎认为这是要放弃Delphi,转而使用Free Pascal。) - Rob Kennedy
2
Rob:Lazarus与普通编辑器不同,因为它具有表单编辑器和代码工具等功能,并且在掌握一定技巧后可以来回迁移(特别是在较新版本中)。但我同意替代是一种不好的思维方式。几乎所有全职使用Lazarus/FPC的用户也使用Delphi。甚至包括我在内的几个开发人员也是如此。 - Marco van de Voort
1
对于那些使用Delphi编写“沉闷/严肃”的客户端软件作为交付客户解决方案所需的许多技能之一的人来说,Lazarus现在是一个很好的解决方案,可以在Delphi模式下构建这些软件的64位二进制文件。一些程序员被聘为Object Pascal程序员4 life,他们可能会像FPC/Lazarus的开发者一样密切关注Delphi和Object Pascal的发展,并且没有问题。而使用Delphi是幸运少数人的奢侈选择,FPC适用于所有人,而Lazarus是一个很好的IDE。 - Henrik Erlandsson
1
2021年更新:我唯一看到的大差异/问题是Lazarus调试器比Delphi的慢且痛苦。提示:使用fpdebug包可以使其开始变得可用。但是现在的Lazarus编辑器非常稳定。对于代码编辑,比Delphi更加稳定和快速。它的自动完成功能也很好用。它真正实现了跨平台。我建议使用https://github.com/LongDirtyAnimAlf/fpcupdeluxe从源代码构建FPC和Lazarus,然后轻松安装交叉编译器。问题仍然是第三方组件,这些组件可能(遗憾地)只适用于Delphi。 - Arnaud Bouchez
显示剩余9条评论
12个回答

4
我没有太多新的东西要添加,但我想分享一下我的跨平台经验。当我需要快速搭建一个跨平台应用程序草图时,我发现Lazarus非常适用。最近我也在使用MonoDevelop,它有很多值得称赞的地方,但GUI设计器stetic似乎不如Lazarus GUI设计器完整。或者是工具包(GTK#)似乎缺少一些功能?在此之前,我使用过Qt/C++,也相当适合跨平台开发,但我对C++不是很熟悉,而且Qt的信号/插槽框架有点奇怪,但一旦你掌握了它,就可以很好地工作。总之,我发现使用Lazarus进行RAD和编码大多都是令人愉快的,何况这是一个多么酷的IDE名称!

3
只有CodeTyphon/Lazarus/FreePascal支持4个CPU/OS主机(Win32、Win64、Linux32、Linux64)和16个CPU/OS目标(arm-WinCE、arm-Linux、arm-Embedded、arm-gba、arm-nds、i386-Win32、i386-Linux、i386-FreeBSD、i386-Haiku、x86_64-Win64、x86_64-Linux、x86_64-FreeBSD、powerpc-Linux、powerpc64-Linux、sparc-Linux、sparc-Solaris)。Lazarus/FreePascal支持更多平台,但其他平台尚未集成到CodeTyphon中。一份代码适用于所有平台;-)。CodeTyphon是一个强大的一键安装包,用于基于Lazarus/FreePascal的跨平台本地Delphi类RAD/IDE,它消除了痛苦的跨平台设置。下载后几分钟即可开始编码,因此,如果跨平台、64位或价格是您的关键优势,请选择Lazarus而不是Delphi。Lazarus与Delphi高度兼容,我已转换了几个应用程序,没有遇到太多问题。可以维护在两者上都可以编译的代码。

上次我查看了一下,CodeTyphon在一些内部库方面存在严重的许可问题。作为他们自己的“Orca库”,它提供了一个初步的FMX代码-DXScene产品。我怀疑其他侵犯版权的行为也适用。我不建议使用它,而是使用https://github.com/LongDirtyAnimAlf/fpcupdeluxe。 - Arnaud Bouchez

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接