本文来自于对活跃在SourceForge和GitHub上的项目的分析研究,同时我也在Twitter上向大家进行了调查,以免漏掉了很热门但是我却不知道的项目。

下面列出的项目都非常受欢迎,同时它们也成为了PHP编程界的标准,前景很好。(排名不分先后)

1. Symfony 2 及其组件

Symfony 2是一个完备的全栈HTTP框架,它可以以任何需要的方式来满足HTTP请求,而不仅仅是一个严格的MVC方法。Symfony 2为定义模块提供了一个Bundle API,你可以在应用程序之间进行模块移植。

此外,Symfony 2 有21个独立的组件,每个组件可当作一个独立的库。你可以用一个简单的Git子模块查看标准Autoloader或依赖注入容器。

2. Doctrine 和 NoSQL 映射器

Doctrine 2是成熟的ORM(对象关系映射),基于数据库抽像层,可以通过PHP对象轻松访问所有的数据库。与此同时,越来越多的数据映射并不只针对关系数据库,也有很多NoSQL数据库,例如:

  • 嵌入式map/reduce的面向文档的解决方案,可以用CouchDB
  • 声明查询,可以用MongoDB
  • 以图形形式管理数据,可以用OrientDB

3. HipHop 虚拟机

HipHop是Facebook的一个开源项目,这个项目由一个PHP到C++的转换程序、一个重新实现的PHP运行库,以及许多常用PHP扩展的重写版本构成,目的是加速和优化PHP。

最近,Facebook还发布了hhvm(HipHop Virtual Machine),它是一个PHP解释程序,可以动态地将PHP转换为机器语言,它可以保持语义等效地执行源代码,适用于需要不停编辑源文件的开发过程。

4. Moodle

在我对电子学习领域的研究中,无所不在一个工具就是Moodle(Modular Object-Oriented Dynamic Learning En vironment,模块化面向对象的动态学习环境),它是基于Web的PHP学习管理系统,其功能包括学校课程、招生、学生学习情况和教学内容的管理。

Moodle相当于学校版的WordPress,其是一个可以免费下载使用的主要软件,另外还提供了大量第三方插件。其应用非常广泛。

5. Composer 和 Packagist

网络上有大量的开源PHP代码,即便它们基于非常自由的许可,将它们放到你的新项目中也是非常困难的。有时候使用代码库并不是非常便捷的。Package管理系统可以解决这一问题。

Composer(以及它的默认存储库管理器Packagist)是一个新的项目,尝试以单个项目为基础,提供包和依赖管理,它比起安装全系统packages的PEAR来说,与Maven更相似。

6. DrupalJoomlaWordpress

这三个都是非常著名的CMS(内容管理系统),且都拥有大量的使用者。

这些工具越来越接近OOP(面向对象编程):Joomla有像类集合一样的所有libraries,而Drupal有像类一样的大量测试实例,以及几十个不同的模块,甚至在Drupal8里也有Symfony2组件。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐