编写关于PHP的系列文章让我更加深刻地了解了PHP开发人员的世界。我和许多PHP程序员交谈过,最令我惊奇的是只有很少的人使用IDE。大多数程序员使用文本编辑器,比如MicrosoftWindows上的记事本、Emacs或者Vim。
我提到的这些文本编辑器(以及我没提到)都是很不错的我不想讨论哪个编辑器更好。但是,我要强调的是不使用文本编辑器会使您对PHP代码有更深的见解。几乎所有人都将PHP项目视为只不过是文件目录而已(这种看法十分片面)。现在就让我带您进入IDE的世界,向您展示IDE能够或者应该给您带来什么,并向您介绍七个最流行的IDE。
简而言之,IDE为编码工作提供了一站式服务。IDE包括一个编辑器,在此编辑器内可以编辑代码、调试代码、在浏览器(通常是嵌入式的)中查看代码和签入和签出源码控制。为了支持这些功能,IDE拥有一套在基本编辑器(比如记事本或者Vim)中所找不到的特性。当然,您可以通过扩展编辑器来实现这些功能,但是IDE在一个精简软件包中囊括了所有这些功能并都已预配置:
IDE的一个关键特性是它把一个PHP应用程序看作是一个项目,而不仅仅是一组文件。这个概念项目额外的信息,比如源码控制的配置、用于调试的数据库设置,以及某一关键目录所在。
另一个方便的特性是集成调试。使用这个功能,可以在编辑器中设置断点,当PHP解释程序执行到这个脚本时就会停止。从断点开始,就可以检查局部变量的值,在代码中诊断问题。在代码中可以使用echo语句来检查值或者也可以使用错误日志获得变量的值。
PHP是一种非常规则的编程语言,这意味着它遵循着简单的模式。这些模式不仅使代码易于编写,也使IDE在项目中检查代码变得很容易。此外,它们可以通过显示检查结果帮助您编写程序。例如,如果在项目中定义了一个名为MyClass的类,在键入关键词new时,IDE会立即提供一个包括MyClass作为选项的弹出窗口。当使用那种类型的对象时,IDE就会显示它的可用方法和实例变量。当开始键入一个函数命令时,IDE就会显示它的可用参数。地说,这是应该使用IDE而不是文本编辑器的首要原因。这种代码智能可以有效减少敲错类名、方法名和参数。
IDE中的代码智能引擎产生的另一个作用是IDE可以产生项目的类视图。系统不是显示文件,而是显示已经定义的不同的类,而不管它们所在的文件。当单击类时,编辑器访问相应文件并显示相应类、方法或者实例变量。这在大项目中是一种非常好的方法。
这里评价的所有IDE都支持一些与源码控制系统的连接,允许随着时间项目中的文件版本。可以标记文件的特别版本为发布版本,这样在需要撤销改动的时候就可以恢复。在团队中使用源码控制系统是很关键的,即使对于个人使用也很重要。当磁盘瘫痪或者客户突然想要以前的版本而不是现在的版本的时候,一个好的源码控制系统就可以发挥作用了。大多数的IDE都支持ConcurrentVersionSystem(CVS)和Subversion,它们都是开源控制系统。其中一种IDE支持Perforce一款商业源码控制系统。
与源码控制相关的一种功能是在服务器中对于最新的代码使用FTP。这比使用FTP客户机或者自己打包文件并发送给服务器然后再解包要容易许多。
一个非基本但十分有用的特性是数据库。使用这个特性,可以浏览应用程序访问的数据库、找到表格和字段名并返回查询结果。一些系统甚至可以自动写入一些数据库访问代码。
一些IDE支持集成Web浏览器,可以直接到正在使用指定的附加参数编辑的页面,这个浏览器可以宿主在IDE内,也可以外部调用。诚实地讲,我并不大喜欢集成浏览器,因为我不介意在编辑代码和查看结果这两个的应用程序之间切换。但是我知道它确实有一定的作用,但您不必一定要使用它。
在所有这些IDE中我发现的最后一个特性是对于整段和定制代码片段的支持。片段是完成小任务(比如在一些输入中运行常规表达式、连接到数据库和查询数据库)的小部分代码。
以上总结了目前从购买的或者开源的IDE中可以预期的核心特性。接下来,将会介绍一些流行的IDE,展示一些IDE图片,并将解释它们所支持的功能及其成本。
另一个是PHPEclipse,它是开发的。因为使用Eclipse,所以这两个插件都可以在三大操作系统中运行:Windows、Linux和MacOSX。您可以只下载这两个插件(如果已经使用Eclipse),或者下载包含所需要的全部内容的pre-b版本。
这两个插件都支持核心IDE特性。特别是代码智能特性,它十分强大,可以在需要的时候弹出并显示所有需要的类、方法和参数信息。
图1显示了MacOSX上运行的PHPEclipse。左边是在项目中文件的项目视图。下面是类视图,显示所有已经定义的类。中间是代码。可以同时在多个选项卡中打开多个文件。右边是调试和浏览的面板。这是常用的PHPEclipse用户界面。
如果您不能看出区别,没有关系。这两个插件看起来确实非常类似,因为它们都依靠Eclipse平台呈现代码浏览和智能特性。Eclipse插件GUI能够保持连贯性是件很好的事情。
我没有发现哪一个插件可以把您锁定在某一个Eclipse项目中。您可以经常地将一个插件换成另一个插件。在我有限的测试中,我更喜欢PHPIDE项目插件,因为我感觉它集成得更好,而且代码智能特性的性能似乎更快捷。试试这两个插件,看看您更喜欢哪一个。
这两个插件的缺点是UI不是为PHP量身订做的,原因是Eclipse可以用于几乎所有的编程语言。结果是,Eclipse的术语最初有些另类。如果您刚开始学习Eclipse,那么这些插件的学习比其他IDE更难一些。但是,如果已经了解Eclipse,那么您就能比较快地熟悉PHPEclipse或者PHPIDE项目。
Eclipse和这些插件的最大优点是什么?它们是免费的,而且稳定、可靠。哦,我提到它们是免费的吗?
图3显示了在Windows上运行的Komodo。左边是类视图,右边是项目视图。中间的主要部分是代码视图。下面是调试用的断点、命令输出等等。对于所有这些系统,都可以根据需要定制UI。
Komodo是一个商业产品。在我写作本文的时候,这款IDE有个人版(US$29.95)和专业版(US$299.95)两个版本可选。它的一个独特的特性是常规表达式调试器。不管您是常规表达式的新手还是已经开始涉足高级常规表达式特性,这点购买的投入都是很值得的。
它的缺点是没有数据库集成(至少我没有找到),而且我还遇到了代码智能不总是在想要的时候弹出的小问题。但是,总的来说,Komodo还堪称是一款健壮的、特色丰富的、可靠的PHPIDE。
PHP设计器与其他IDE不太相同。当然,它支持有限的代码智能。但是,它更集中于PHPWeb应用程序的设计方面。这一点在其集成的浏览器上可见一斑,该浏览器特别地采用了像素标尺用于帮助在页面上定位元素。
PHP设计器中的PHP的代码智能和调试特性不是很显著,而对HTML、CSS和JavaScript的代码智能支持上要相对更强一些。PHP设计器介于程序员使用的IDE(主要侧重于代码)和AdobeDreamweaver(更侧重于设计)之间。如果您正在寻找这类中间产品,那么PHP设计器很值得考虑,因为IDE对于个人使用是免费的,而其专业版也只需US$55。
NuSphere的只用于Windows的PhpED在所有这里介绍的IDE中特性是最丰富的。它有一个很好的内部调试器,并为了更容易地访问页面调试而把调试工具条放到了MicrosoftInternetExplorer之内。
图5显示了在Windows中使用PHPEd开发PHP应用程序。在最左边是项目的文件视图。右边紧挨着的是类视图,最右边是代码视图。下面是输出状态。您可能已经注意到,所有这些IDE都遵循着相同的基本设计风格。
PhpED的突出特性包括一个很棒的调试器、优秀的数据库访问、较好的代码智能特性以及集成的PHP帮助。PhpED的价格范围从基础版本的US$119到专业版本的US$495。另外还有试用版本可用。
为了便于部署,PHPEdit可以连接到CVS和Subversion,以及FTP和它自己专有的ezDeployment系统。除了代码智能特性,为了加速开发,这款IDE有一个极好的代码示例整体模板库,您还可以向库里面添加内容。PHPEdit的评估版本可以免费使用,要得到正式版本,需要US$89。
最后,我们谈谈ZendStudio,它被最后列出只是因为它以Z开头。它可能应该是您第一个想到的。为什么?因为它来自ZendPHP幕后的精英团队。而且它真的是很不错。它运行于三大系统:Windows、MacOSX和Linux。而且绝对能够提供您所需要的一切:PHPV4、PHPV5等等。它的下载需要花很长时间,但常值得。
作为IDE,ZendStudio是最好的。它提供所有想在内置库和定制代码中拥有的代码智能特性。它还有非常好的调试功能,而且极易设置。要把代码放到存储库(repository)中,ZendStudio会连接到CVS和Subversion。要把代码放到服务器上,有集成FTP可以使用。ZendStudio非常适合Macintosh,如图7所示。
在其他一些IDE中,代码片段是内置的以使代码编制更为容易。这款IDE也直接集成了数据库以给出可用的表格和字段。
ZendStudio的标准版需要US$99,专业版需要US$299。我在这里提到的某些特性在标准版本中没有包含。ZendStudio试用版本可以免费使用。
有许多极好的IDE可供选择其中一些甚至是免费的您尽可以选择一个试用一下,如果您是专业人员,就更应如此。您可能需要支付公司或者个人的顾问费用,也可能要花钱购买必需的商品。如果考虑使用echo调试代码对比使用集成的调试器所花费的时间,IDE的购买价格绝对会物有所值。
网友评论 ()条 查看