Delphi (.NET) 的最佳替代 IDE 是什么?

14

我使用 Delphi 2007(win32和.Net版本),但 CodeGear IDE 经常令我感到恼火,因此如果可能的话,我想找一个替代品。

我们有一个构建脚本,所以我可以从命令行编译,而且我很少进行任何 GUI 设计工作,因此我唯一需要的就是一个文本编辑器(具有语法高亮,自动完成/智能感知等功能)。

我想使用 Visual Studio 或 Emacs,但不知道在这些环境中开发 Delphi 代码是否可行。特别是调试 - 即使我不在其上进行编辑,Delphi IDE 仍然可以作为我的调试器吗?

有人有摆脱 RAD studio 的经验吗?

P.S. 我知道有新的 Delphi Prism,但那不能解决我的问题 - 我仍然需要在原始的 Delphi 环境中工作,并使用 Delphi 2007 编译器。


出于好奇,是什么让您对D2007 IDE感到如此烦恼,以至于您想找一个替代品?我想我可能有点奇怪,但我更喜欢Delphi IDE而不是VS2005和VS2008。 - Mick
6
我也想知道什么会让你感到烦恼 - 我还可以采取一些行动,因为我是 Delphi 产品经理。;-) - Nick Hodges
而且,Mick,你不怪。 ;-) - Nick Hodges
我认为我的主要问题是加载IDE所需的时间太长(约30秒:Pentium 4,2GB RAM),以及每次调用代码完成时的延迟(这最令人不安,因为它会在几秒钟内停止我的流程,并阻止我输入任何内容,直到符号被加载)。 - Mark Pim
@Nick,对我来说最烦人的事情是 - 我不知道如何构建调用树,如何查找符号的所有引用以及如何防止CodeGear IDE在我尝试调试项目时挂起。 - Sergey Miryanov
显示剩余2条评论
12个回答

9

我们已经在使用GExperts,你说得对,它非常有用。+1 - Mark Pim

4

Emacs似乎有一个Delphi编辑模式,如果您正在尝试启动并运行程序,那么这可能是一个很好的起点。


3
当然,您可以在Delphi IDE之外编辑源文件。当您切换回IDE时,它会注意到文件已在其外部更改,并询问您是否重新加载它们(如果它们当前在编辑器中打开)。如果您从未在IDE内部进行编辑,则这样做是安全的,但为了避免出现确认消息,最好在emacs中编辑它们时根本不要在Delphi编辑器中打开源文件。
即使您使用自定义构建脚本并从emacs构建项目,仍应保持项目文件最新状态。当您在IDE中使用调试器时,它通常会首先编译项目。为了始终如此(即使具有可视化表单或框架继承),正确的项目文件至关重要。当您有多个具有相同名称的源文件位于不同目录中且在搜索/浏览路径中,或者您没有将所有源目录放入搜索/浏览路径时,对于调试也很重要。
无论您使用哪些工具来编辑或以其他方式更改源文件,请确保所有行都具有DOS样式的CR + LF行尾符( \ r \ n ,#13#10 ),因为仅使用LF( \ n ,#10 )往往会使IDE混淆-您会注意到调试器中的蓝色点与源行不同步,并且编译器错误行号错误。在源文件上使用 sed 或 awk 可以节省大量时间,但请确保使用为Win32编译的工具,而不是(例如)cygwin环境提供的工具。

3

我知道FreePascal编辑器叫做Lazarus,它可以成为一个不错的替代品。

虽然它不兼容VCL,所以只适用于新项目。


1
不要忘记文本模式IDE(Turbo)。我主要用它来编写小型命令行工具。它有许多现代特性。 - Marco van de Voort

3

如果您的主要问题是Delphi 2007 IDE的速度较慢,那么可以使用DelphiSpeedUp


2

在codefactor2.com上,可以免费获取OPEditII,听起来像是更新版的codefactor。值得一提的是,它在Windows Seven 64位系统下非常流畅,并且具有集成的Delphi代码解析器。因此,您可以使用类浏览器、代码完成、从接口到实现的代码导航以及大量的代码重构工具。


2
如果你有 Delphi 2009 并且不觉得它很烦人,可以尝试Andy's IDE Compiler Plugin 1.0。它可以用于使用 Delphi 2009 编译 Delphi 2007 项目。

2
我使用CodeFactor,但不幸的是它已经不可用了。
Delphi 2009相对于Delphi 2007有很大的改进,如果你有条件的话,这可能会帮助很多。

1

看一下Multi Edit - 它是一个很棒的编辑器,支持Borland产品


1
你应该尝试使用 Semware 公司的 TSEPro(又名 QEdit)编辑器。它支持该语言,具有非常强大的宏系统,并支持通过 bcc32 编译器在编辑器内部进行编译。

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