7种流行PHP集成开发工具(IDE)的比较
2016-07-10 10:59:06   来源:   评论:0 点击:

本文发掘集成开发环境(IDE)的所有用途,并比较7种流行的IDE的成本和优势。

编写关于PHP的系列文章让我更加深刻地了解了PHP开发人员的世界。我和许多PHP程序员交谈过,最令我惊奇的是只有很少的人使用IDE。大多数程序员使用文本编辑器,比如MicrosoftWindows上的记事本、Emacs或者Vim。

我提到的这些文本编辑器(以及我没提到)都是很不错的——我不想讨论哪个编辑器更好。但是,我要强调的是不使用文本编辑器会使您对PHP代码有更深的见解。几乎所有人都将PHP项目视为只不过是文件目录而已(这种看法十分片面)。现在就让我带您进入IDE的世界,向您展示IDE能够——或者应该——给您带来什么,并向您介绍七个最流行的IDE。

什么是IDE?

简而言之,IDE为编码工作提供了一站式服务。IDE包括一个编辑器,在此编辑器内可以编辑代码、调试代码、在浏览器(通常是嵌入式的)中查看代码和签入和签出源码控制。为了支持这些功能,IDE拥有一套在基本编辑器(比如记事本或者Vim)中所找不到的特性。当然,您可以通过扩展编辑器来实现这些功能,但是IDE在一个精简软件包中囊括了所有这些功能——并都已预配置:

项目

IDE的一个关键特性是它把一个PHP应用程序看作是一个项目,而不仅仅是一组文件。这个概念——项目——维护额外的信息,比如源码控制的配置、用于调试的数据库设置,以及某一关键目录所在位置。

调试

另一个方便的特性是集成调试。使用这个功能,可以在编辑器中设置断点,当PHP解释程序执行到这个脚本时就会停止。从断点开始,就可以检查局部变量的值,在代码中诊断问题。在代码中可以使用echo语句来检查值或者也可以使用错误日志获得变量的值。

代码智能

PHP是一种非常规则的编程语言,这意味着它遵循着简单的模式。这些模式不仅使代码易于编写,也使IDE在项目中检查代码变得很容易。此外,它们可以通过显示检查结果帮助您编写程序。例如,如果在项目中定义了一个名为MyClass的类,在键入关键词new时,IDE会立即提供一个包括MyClass作为选项的弹出窗口。当使用那种类型的对象时,IDE就会显示它的可用方法和实例变量。当开始键入一个函数命令时,IDE就会显示它的可用参数。公正地说,这是应该使用IDE而不是文本编辑器的首要原因。这种代码智能可以有效减少敲错类名、方法名和参数。

类视图

IDE中的代码智能引擎产生的另一个作用是IDE可以产生项目的类视图。系统不是显示文件,而是显示已经定义的不同的类,而不管它们所在的文件。当单击类时,编辑器访问相应文件并显示相应类、方法或者实例变量。这在大项目中是一种非常好的导航方法。

多语言支持

这里提到的每种IDE不仅支持PHP而且支持相关语言集:JavaScript、StructuredQueryLanguage(SQL)、HypertextMarkupLanguage(HTML)和CascadingStyleSheets(CSS)。因为HTML和CSS比较简单,所以IDE对它们的支持是最好的。对于JavaScript的支持经常会突出语法,但是支持比不支持要好。

源码控制

这里评价的所有IDE都支持一些与源码控制系统的连接,允许随着时间维护项目中的文件版本。可以标记文件的特别版本为发布版本,这样在需要撤销改动的时候就可以恢复。在团队环境中使用源码控制系统是很关键的,即使对于个人使用也很重要。当磁盘瘫痪或者客户突然想要以前的版本而不是现在的版本的时候,一个好的源码控制系统就可以发挥作用了。大多数的IDE都支持ConcurrentVersionSystem(CVS)和Subversion,它们都是开源控制系统。其中一种IDE支持Perforce——一款商业源码控制系统。

FTP/SFTP集成

与源码控制相关的一种功能是在服务器中对于最新的代码使用FTP。这比使用FTP客户机或者自己打包文件并发送给服务器然后再解包要容易许多。

数据库导航

一个非基本但十分有用的特性是数据库导航。使用这个特性,可以浏览应用程序访问的数据库、找到表格和字段名并返回查询结果。一些系统甚至可以自动写入一些数据库访问代码。

集成Web浏览器

一些IDE支持集成Web浏览器,可以直接导航到正在使用指定的附加参数编辑的页面,这个浏览器可以宿主在IDE内,也可以外部调用。诚实地讲,我并不大喜欢集成浏览器,因为我不介意在编辑代码和查看结果这两个独立的应用程序之间切换。但是我知道它确实有一定的作用,但您不必一定要使用它。

片段

在所有这些IDE中我发现的最后一个特性是对于整段和定制代码片段的支持。片段是完成小任务(比如在一些输入中运行常规表达式、连接到数据库和查询数据库)的小部分代码。

以上总结了目前从购买的或者开源的IDE中可以预期的核心特性。接下来,将会介绍一些流行的IDE,展示一些IDE图片,并将解释它们所支持的功能及其成本。

#p#分页标题#e#

Eclipse

在Eclipse开发平台中有两个插件支持PHP。第一个PHPIDE项目是EclipseFoundation项目,这意味着它在Eclipse许可范围内发布,并使用EclipseFoundation工具和方法开发。

另一个是PHPEclipse,它是独立开发的。因为使用Eclipse,所以这两个插件都可以在三大操作系统中运行:Windows、Linux和MacOSX。您可以只下载这两个插件(如果已经使用Eclipse),或者下载包含所需要的全部内容的pre-fab版本。

这两个插件都支持核心IDE特性。特别是代码智能特性,它十分强大,可以在需要的时候弹出并显示所有需要的类、方法和参数信息。

图1显示了MacOSX上运行的PHPEclipse。左边是在项目中文件的项目视图。下面是类视图,显示所有已经定义的类。中间是代码。可以同时在多个选项卡中打开多个文件。右边是调试和浏览的面板。这是常用的PHPEclipse用户界面。

图1.OSX上的PHPEclipse

图2显示了来自EclipseFoundation的PHPIDE项目插件。

图2.OSX上的PHPIDE项目 

如果您不能看出区别,没有关系。这两个插件看起来确实非常类似,因为它们都依靠Eclipse平台呈现代码浏览和智能特性。Eclipse插件GUI能够保持连贯性是件很好的事情。

我没有发现哪一个插件可以把您锁定在某一个Eclipse项目中。您可以经常地将一个插件换成另一个插件。在我有限的测试中,我更喜欢PHPIDE项目插件,因为我感觉它集成得更好,而且代码智能特性的性能似乎更快捷。试试这两个插件,看看您更喜欢哪一个。

这两个插件的缺点是UI不是为PHP量身订做的,原因是Eclipse可以用于几乎所有的编程语言。结果是,Eclipse的术语最初有些另类。如果您刚开始学习Eclipse,那么这些插件的学习比其他IDE更难一些。但是,如果已经了解Eclipse,那么您就能比较快地熟悉PHPEclipse或者PHPIDE项目。

Eclipse和这些插件的最大优点是什么?它们是免费的,而且稳定、可靠。哦,我提到它们是免费的吗?

Komodo

下一个要介绍的是ActiveState的KomodoIDE。这个IDE在Windows、MacOSX和Linux上运行,并支持通用的开源语言——Perl、PHP和Ruby。代码智能引擎非常可靠。它扫描所有语言安装找到定制扩展,比如PEAR模块。在项目方面,它支持与CVS、Subversion和Perforce的集成,也允许直接向服务器FTP传递代码。

图3显示了在Windows上运行的Komodo。左边是类视图,右边是项目视图。中间的主要部分是代码视图。下面是调试用的断点、命令输出等等。对于所有这些系统,都可以根据需要定制UI。

图3.在Windows上运行的Komodo

Komodo是一个商业产品。在我写作本文的时候,这款IDE有个人版(US$29.95)和专业版(US$299.95)两个版本可选。它的一个独特的特性是常规表达式调试器。不管您是常规表达式的新手还是已经开始涉足高级常规表达式特性,这点购买的投入都是很值得的。

它的缺点是没有数据库集成(至少我没有找到),而且我还遇到了代码智能不总是在想要的时候弹出的小问题。但是,总的来说,Komodo还堪称是一款健壮的、特色丰富的、可靠的PHPIDE。

#p#分页标题#e#

PHP设计器

PHP设计器与其他IDE不太相同。当然,它支持有限的代码智能。但是,它更集中于PHPWeb应用程序的设计方面。这一点在其集成的浏览器上可见一斑,该浏览器特别地采用了像素标尺用于帮助在页面上定位元素。

图4显示了运行的PHP设计器。

图4.在Windows上的PHP设计器

PHP设计器中的PHP的代码智能和调试特性不是很显著,而对HTML、CSS和JavaScript的代码智能支持上要相对更强一些。PHP设计器介于程序员使用的IDE(主要侧重于代码)和AdobeDreamweaver(更侧重于设计)之间。如果您正在寻找这类中间产品,那么PHP设计器很值得考虑,因为IDE对于个人使用是免费的,而其专业版也只需US$55。

PhpED

NuSphere的只用于Windows的PhpED在所有这里介绍的IDE中特性是最丰富的。它有一个很好的内部调试器,并为了更容易地访问页面调试而把调试工具条放到了MicrosoftInternetExplorer之内。

图5显示了在Windows中使用PHPEd开发PHP应用程序。在最左边是项目的文件视图。右边紧挨着的是类视图,最右边是代码视图。下面是输出状态。您可能已经注意到,所有这些IDE都遵循着相同的基本设计风格。

图5.在Windows中的PhpED

PhpED的突出特性包括一个很棒的调试器、优秀的数据库访问、较好的代码智能特性以及集成的PHP帮助。PhpED的价格范围从基础版本的US$119到专业版本的US$495。另外还有试用版本可用。

PHPEdit

来自WaterProofSoftware的PHPEdit感觉像是应用于PHP的Microsoftmsdev环境——这是个不错的事情。PHPEdit是仅用于Windows的IDE,很容易设置。它甚至还有PHP的版本。在PHP、CSS和HTML的代码智能方面它做得很好,但是却不提供对JavaScript的代码智能的支持。图6显示了运行的PHPEdit。

图6.在Windows中的PHPEdit

为了便于部署,PHPEdit可以连接到CVS和Subversion,以及FTP和它自己专有的ezDeployment系统。除了代码智能特性,为了加速开发,这款IDE有一个极好的代码示例整体模板库,您还可以向库里面添加内容。PHPEdit的评估版本可以免费使用,要得到正式版本,需要US$89。

ZendStudio

最后,我们谈谈ZendStudio,它被最后列出只是因为它以Z开头。它可能应该是您第一个想到的。为什么?因为它来自Zend——PHP幕后的精英团队。而且它真的是很不错。它运行于三大系统:Windows、MacOSX和Linux。而且绝对能够提供您所需要的一切:PHPV4、PHPV5等等。它的下载需要花很长时间,但是非常值得。

作为IDE,ZendStudio是最好的。它提供所有想在内置库和定制代码中拥有的代码智能特性。它还有非常好的调试功能,而且极易设置。要把代码放到存储库(repository)中,ZendStudio会连接到CVS和Subversion。要把代码放到服务器上,有集成FTP可以使用。ZendStudio非常适合Macintosh,如图7所示。

图7.在Mac上的ZendStudio

在其他一些IDE中,代码片段是内置的以使代码编制更为容易。这款IDE也直接集成了数据库以给出可用的表格和字段。

ZendStudio的标准版需要US$99,专业版需要US$299。我在这里提到的某些特性在标准版本中没有包含。ZendStudio试用版本可以免费使用。

结束语

有许多极好的IDE可供选择——其中一些甚至是免费的——您尽可以选择一个试用一下,如果您是专业人员,就更应如此。您可能需要支付公司或者个人的顾问费用,也可能要花钱购买必需的商品。如果考虑使用echo调试代码对比使用集成的调试器所花费的时间,IDE的购买价格绝对会物有所值。

相关热词搜索:开发工具

上一篇:如何编译PHP源代码
下一篇:PHP实现给上传图片加水印的程序代码

分享到: 收藏