【发布时间】:2010-09-24 14:04:51
【问题描述】:
每个 PHP 程序员都可能至少使用某种形式的模板引擎和数据库抽象层,但除此之外,您认为哪些附加功能是必不可少的,或者建议您的程序员同行尝试一下?
【问题讨论】:
每个 PHP 程序员都可能至少使用某种形式的模板引擎和数据库抽象层,但除此之外,您认为哪些附加功能是必不可少的,或者建议您的程序员同行尝试一下?
【问题讨论】:
一个好的框架。
PHP 有很多可供选择:Zend's、Solar、CakePHP、Symfony、Kohana。一个好的框架将承担应用程序开发的大部分繁琐部分,让您可以将更多时间花在实现特定于项目的领域逻辑上。框架还有助于实施一致的编码风格,通常有大量文档,并且大多数都经过了很好的测试并且总体上很稳定。
一个好的 IDE。
对于任何认真的开发人员来说,一个好的 IDE 是必须的。项目组织、目录导航、代码完成和各种有用的扩展(例如,用于文件版本控制系统)都是极大的生产力助推器。 PHP 有几个不错的 IDE,包括 Zend Studio 和 PDT for Eclipse。
构建系统。
构建脚本对于在阶段(开发/暂存/生产)之间移动项目之前自动重复任务很有用,例如设置目录/文件权限、SVN 更新、运行测试等。我主要使用Phing(Ant 克隆)来构建和部署项目。
分析和调试工具。
这两个需求由同一个工具解决 - xdebug,它提供了改进的调试功能,还可以生成 kcachegrind 报告来分析您的应用程序。然后我使用webgrind 访问这些报告。
操作码缓存。
PHP 的运行时编译方案对性能造成了重大影响。 Op-code caches 通过在编译状态下缓存脚本来改进这一点,避免缓存命中时的编译开销。如果有机会,我会使用APC 作为我的操作码缓存。
各种开源软件包。
PHP 作为一种开源语言,有着悠久的开源开发传统。对于最常见(和一些不常见)的需求,有许多高质量/有用的包,可以节省大量的开发时间。我使用wordpress 和joomla 作为博客平台,HTML Purifier 用于清理和验证 HTML,minify 用于缩小和连接 CSS 和 Javascript 等。
【讨论】:
IDE:Eclipse 的 PDT
源代码控制:SVN 与 Tortoise SVN
其他细节,如框架,取决于项目。
【讨论】: