各网页框架系统的比较
外观
一般
[编辑]有关每个框架的基本资讯。
ASP.NET
[编辑]项目 |
目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
ASP.NET Dynamic Data | |||
Base One Foundation Component Library (BFC) |
7.51 | 2018-06-01 | 专有软件 |
Component-based Scalable Logical Architecture (CSLA) |
4.6.30 | 2016-02-01[1] | MIT授权条款 |
MonoRail | 2.1(暂停开发) | 2011-03-17[2] | Apache |
OpenRasta | 2.1.0.83282449 | 2011-09-28 | MIT授权条款 |
C++
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
CppCMS | 1.0.5 | 2014-10-30[3] | LGPL、 专有 |
Poco | 1.7.3 | 2016-05-02[4] | Boost软件协定 |
Tntnet | 2.2.1 | 2014-01-17[5] | LGPL |
Wt | 3.3.7 | 2017-03-31[6] | GPL、 专有 |
ColdFusion标记语言(CFML)
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
CFWheels | 1.4.5 | 2016-03-30 | Apache v2 |
ColdBox Platform | 4.0.0 | 2015-01-22 | Apache v2 |
ColdSpring | 1.2 | 2008-09-12 | Apache v2 |
Fusebox | 5.5.2 | 2012-05-08 | Apache |
Mach-II | 1.8.1 | 2010-09-20 | GPLv3 与 类路径例外 |
Model-Glue | 3.1.299 | 2010-03-05 | Apache |
Common Lisp
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
Caveman2 | 2.4.0 | 2015-06-05[7] | LLGPL[8] |
D
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
vibe.d | 0.7.30 | 2016-10-31[9] | 麻省理工学院许可 |
Haskell
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
Happstack | 7.0 | 2012-03-29 | BSD-3 |
Snap | 0.13 | 2014-05-06 | BSD-3 |
Yesod | 1.4.1 | 2014-11-23[10] | 麻省理工学院的许可 |
Java
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
Apache Click | 2.3.0 (退出) | 2011-03-27 | Apache 2.0 |
Apache OFBiz | 13.07.03 | 2016-04-04 | Apache 2.0 |
Apache Shale | 1.0.4 (退出) | 2007-12-19 | Apache |
Apache Sling | 8 | 2015-10-16 | Apache 2.0 |
Apache Struts 2 | 2.5 | 2016-05-09 | Apache 2.0 |
Apache Tapestry | 5.4.1 | 2016-03-16 | Apache |
Apache Wicket | 7.4.0 | 2016-07-21 | Apache 2.0 |
AppFuse | 3.5.0 | 2015-02-20 | Apache 2.0 |
Brutos Framework | 2.0 | 2015-06-30 | Apache 2.0 |
Eclipse RAP | 3.1 M4 | 2015-12-22 | Eclipse |
FormEngine | 2.0.1 (暂停开发) | 2012-05-08 | 专有 |
Grails | 3.1.4 | 2016-03-16 | Apache |
Google Web Toolkit | 2.8.0 | 2016-10-20 | Apache 2.0 |
Hamlets | 1.7.1 (暂停开发) | 2012-06-29 | BSD |
ItsNat | 1.4 | 2015-09-18 | GNU LGPL, 专有 |
JavaServer Faces (Mojarra) | 2.2.8 | 2016-05-30 | CDDL, GNU GPL 2, Apache 2.0 |
JBoss Seam | 3.1.0 final (停止开发) | 2012-01-13 | GNU LGPL |
Jspx-bay | 2.1 | 2015-12-23 | Apache 2.0 |
JVx | 2.4 | 2015-12-23 | Apache 2.0 |
JWt | 3.3.7 | 2017-03-31 | GNU GPL, 专有 |
OpenLaszlo | 4.9.0 (暂停开发) | 2010-10-21 | 通用公共许可证 |
OpenXava | 5.5 | 2016-04-27 | GNU LGPL |
Oracle ADF | 12.1.3.0 | 2014-06-26 | Oracle技术网开发者许可条款 |
Play | 2.5.13 | 2017-03-10 | Apache 2.0 |
RIFE | 1.6.1 (不再维护) | 2007-07-14 | CDDL, GNU LGPL |
Spark | 2.5 | 2016-05-03 | Apache |
Spring | 4.3.5 | 2016-12-21 | Apache 2.0 |
Stripes | 1.6.0 | 2015-07-23 | Apache |
Takes | 1.1 | 2016-06-26 | MIT |
Vaadin | 7.6.6 | 2016-05-12 | Apache 2.0 |
VRaptor | 4.2.0-RC4 | 2016-05-09 | Apache 2.0 |
Wavemaker | 8.2[11] | 2016-06-07 | Apache |
WebObjects | 5.4.3 (停止开发) | 2008-09-15 | 专有 |
WebWork | 2.2.6 (不再维护) | 2007-07-21 | Apache |
ztemplates | 2.4.0 (暂停开发) | 2011-09-11 | Apache |
JavaScript
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
AngularJS | 1.6x | 2017-01-05 | 麻省理工学院许可 |
React.js | 15.4.2 | 2017-01-06 | BSD |
Backbone.js | 1.3.3 | 2016-04-05 | 麻省理工学院许可 |
Ember.js | 2.12.0 | 2017-03-13[12] | 麻省理工学院许可 |
Express.js | 4.14.0 | 2016-06-16 | 麻省理工学院许可 |
KnockoutJS | 3.2.0 | 2014-08-12 | 麻省理工学院许可 |
Meteor | 1.4 | 2016-07-25 | 麻省理工学院许可 |
OpenUI5 | 1.44.9 | 2017-03-28 | 由SAP的Apache2.0许可证 |
Unified.js | 14.0 | 2014-04-01 | BSD (成分)和 专有 |
Vue.js | 2.2.6 | 2017-03-27 | 麻省理工学院许可 |
Scala
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
Play | 2.5.13 | 2017-03-10 | Apache2.0 |
Lift | 2.6 | 2015-01-11 | Apache2.0 |
Scalatra | 2.3.0 | 2014-06-11 | BSD |
Perl
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
Catalyst | 5.90112 | 2016-07-25 | 艺术, GPL |
Dancer | 1.3202 | 2015-11-07 | 艺术,GPL |
Mason | 2.24[13] | 2015-05-16 | 艺术,GPL |
Maypole | 2.13(暂停开发) | 2008-04-18 | 艺术,GPL |
Mojolicious | 7.03 | 2016-08-17 | 艺术 |
PHP
[编辑]项目 | 开始日期 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|---|
Agavi | 2005-05 | 1.0.8[14] | 2015-06-29 | LGPL |
CakePHP | 2005-08 | 3.4.7[15] | 2017-05-19 | MIT |
CodeIgniter | 2006-02-28 | 4.0.2[16] | 2020-02-25 | MIT |
Fat-Free | 2009-09 | 3.6.0[17] | 2016-11-19 | GPLv3 |
FuelPHP | 2011-08 | 1.8[18] | 2016-04-09 | MIT |
Gyroscope | 2008-11-20 | 8.8.0 | 2016-04-17 | BSD |
Jamroom | 2003-07-28 | 6.0.7[19] | 2017-02-06 | MPL |
Kajona | 2006 | 6.2[20] | 2017-06-08 | LGPLv2 |
Kohana | 2007-07 | 3.3.5[21] | 2016-03-10 | BSD |
Laravel | 2011-07-31 | 9.28.0[22] | 2022-09-06[±] | MIT |
Li3 | 2009-10 | 1.1.0[23] | 2017-04-23 | BSD |
Nette Framework | 2006-01[24] | 2.4.0[25] | 2016-05-03 | 新BSD, GPLv2, GPLv3[26] |
Phalcon | 2012-11-14 | 3.0.1[27] | 2016-08-24 | BSD |
PRADO | 2004-01 | 3.3.2[28] | 2016-08-23 | New BSD[29] |
Silex | 2011-09 | 2.0.0[30] | 2016-05-18 | MIT |
SilverStripe | 2007-02-03 | 3.1.15[31] | 2015-09-18 | BSD |
Smart.Framework | 2015-02-01 | 2.3.7.2[32] | 2016-09-27 | BSD |
Symfony | 2005-10 | 3.3.2[33] | 2017-06-06 | MIT |
TwistPHP | 2014-07 | 3.0.5[34] | 2017-01-11 | GPLv3 |
TYPO3 Flow | 2011-10 | 3.3.4[35] | 2016-09-29 | LGPLv3 |
Yii | 2008-12-03 | 2.0.12[36] | 2017-06-05 | 新BSD |
Zend Framework | 2006-03 | 3.0.0[37] | 2016-06-28 | New BSD |
Python
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
Bottle | 0.12.25[38] | 2023-03-04; 20个月前 | MIT |
BlueBream | 1.0[39] (暂停开发) | 2011-01-18; 13年前 | ZPL |
CherryPy | 18.8.0[40] | 2022-07-18; 2年前 | BSD |
CubicWeb | 4.8.0[41] | 2024-05-21; 6个月前 | LGPL |
Django | 5.1.3[42] | 2024-11-05; 21天前 | BSD |
FastAPI (页面存档备份,存于互联网档案馆) | 0.115.5[43] | 2024-11-12; 14天前 | MIT |
Flask | 3.1.0[44] | 2024-11-13; 13天前 | BSD |
Grok | 5.1[45] | 2024-10-28; 29天前 | ZPL |
Nagare | 0.5.2[46] | 2017-11-10; 7年前 | BSD |
Pyjs | 0.8.1a[47] (暂停开发) | 2012-05-09; 12年前 | Apache |
Pylons | 1.0.2[48] (暂停开发) | 2015-07-22; 9年前 | BSD |
Pyramid | 2.0.2[49] | 2023-08-25; 14个月前 | BSD |
TACTIC | 4.8.0.b04[50] | 2020-09-25; 4年前 | EPL |
Tornado | 6.4.1[51] | 2024-06-06; 5个月前 | Apache |
TurboGears | 2.4.3[52] | 2020-03-01; 4年前 | MIT, LGPL |
web2py | 2.27.1[53] | 2023-11-16; 12个月前 | LGPL3 |
Webware | 3.0.10[54] | 2023-05-27; 17个月前 | Python |
Zope 2 | 5.6.0[55] | 2022-09-09; 2年前 | ZPL |
Ruby
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
Camping | 2.1(暂停开发) | 2010-08-20 | 麻省理工学院 |
Padrino | 0.13.2 | 2016-05-09[56] | 麻省理工学院 |
Ruby on Rails | 5.0.1 |
2016-12-21[57] | 麻省理工学院 |
Sinatra | 2.0.0 | 2017-05-07[58] | 麻省理工学院 |
Merb | 1.1.3(暂停开发) | 2010-07-10 | 麻省理工学院 |
PureMVC | 2.0.4(暂停开发) | 2008-08-14 | CC +属性 |
Rust
[编辑]项目 | 目前稳定的版本 | 发布日期 | 许可证 |
---|---|---|---|
Yew | 0.21.0 | 2023-09-29 | Apache 2.0, MIT |
其他
[编辑]项目 | 编程语言 | 目前稳定的版本 | 发布日期 |
许可证 |
---|---|---|---|---|
AIDA/Web | Smalltalk | 6.7 | 2014-09-14 | MIT |
Application Express | PL/SQL | 5.0.3 | 2015-12-21 | 专用免费软件 |
Flex | ActionScript, MXML | 4.14 | 2015-02-03 | Apache |
Grails | Groovy (JVM) | 2.4.4 | 2014-10-28 | Apache |
Kepler | Lua | 1.1.1 (暂停开发) | 2009-03-11 | MIT |
Morfik | C#, BASIC, Pascal, Java | 3.0.8.1 | 2010-12-13 | 专用免费软件 |
Ocsigen | OCaml | 4.2 | 2015-07-21[59] | LGPL |
Opa | Opa | 1.1.1 | 2013-04-16[60] | MIT和AGPL |
OpenACS | Tcl | 5.7.0 | 2011-07-17 | GPL |
Seaside | Smalltalk | 3.2.0[61] | 2016-05-06 | MIT |
比较特性
[编辑]C++
[编辑]项目 | Ajax | MVC框架 | MVC push-pull | 国际化与本地化 | ORM | 测试框架 | 数据库迁移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 |
---|---|---|---|---|---|---|---|---|---|---|---|
CppCMS | 是 | 是 | Push | 是 | CppDB | 否 | 否 | 是 | 是 | 是 | 是 |
Tntnet | 是 | 否 | 否 | 是 | Tntdb | 否 | 否 | 否 | 是 | 否 | 否 |
Wt | 是 | 是 | Push & Pull | 是 | Wt::Dbo | Boost.test | 是 | 是 | 否 | 是 |
ColdFusion标记语言(CFML)
[编辑]Project | Ajax | MVC框架 | MVC push-pull | 国际化与本地化 | ORM | Testing框架 | 数据库迁移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 |
---|---|---|---|---|---|---|---|---|---|---|---|
ColdBox Platform | 是 | 是 | Push-pull | 是 | CF ORM | 是经由TestBox、MockBox | 经由插件 | 是 | CFML | 是 | 是 |
Fusebox | 由CF或任何JavaScript程式库 | 选择性 | Push | CFML | 经由Transfer, Reactor用的辞典 | 经由其他测试框架 | 否 | 经由插件 | CFML | 经由ColdSpring用的辞典 | 否 |
Mach-II | 由CF或任何JavaScript程式库 | 是 | Push | 经由插件 | CF ORM | 经由其他测试框架 | 否 | 经由插件 | CFML | ColdSpring | |
Model-Glue | 由CF或任何JavaScript程式库 | 是 | Push | CFML | CF ORM | 经由其他测试框架 | 否 | 经由插件 | CFML | ColdSpring |
Common Lisp
[编辑]项目 | AJAX | MVC 框架 | MVC push-pull | 国际化与本地化 | ORM | 测试框架 | 数据库转移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 |
---|---|---|---|---|---|---|---|---|---|---|---|
Caveman2 | 否 | - | - | 否 | 经由第三方套件,如Postmortem、Mito | 证明 | 经由第三方套件,如Postmortem、Mito | 否 | 是 | 是 | 否 |
Java
[编辑]项目 | 编程语言 | Ajax | MVC框架 | MVC push-pull | 国际化与本地化 | ORM | 测试框架 | 数据库转移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Apache Click | Java | jQuery | 页面导向 | Pull | 是 | Hibernate, Cayenne | 是 | 可用插件 | Velocity, JSP | 缓存模板 | 内建验证 | |
Apache OFBiz | Java, Groovy, XML, | jQuery | 是 | Push-pull | 是 | Entity Engine (内部类ORM,非实际ORM,知名例子为被Atlassian Jira使用) | JUnit | 实例引擎工具、资料档案工具、CSV解析器、Apache POI | 基于OWASP的内部安全框架 | Freemarker (推荐), Velocity (可用支援), JSP (可用支援) | 群集用使用分散式快取清理的内部快取维护 | 客户端验证, 用户端验证(JQuery) |
Apache Sling | Java | 是 | 是 | Push-pull | 使用JCR内容库 | 是 | 是 | 是 | ||||
Apache Struts | Java | 是 | 是 | Push-pull | 是 | 是 | 单元测试 | 是 | 是 | |||
Apache Tapestry | Java | Prototype, jQuery | 是 | Pull | 是 | JPA, Hibernate, Cayenne | Selenium, TestNG, JUnit | Spring Security, Shiro | 是 | 使用附加元件 | 原生或Bean Validation | |
Apache Wicket | Java | YUI, ExtJS或其他用的附加元件 | 否 (模组化事件驱动) | Pull | 是 | 使用附加元件 | 经由附加元件的伪物件、单元和整合测试 | 是 | 是 | 是 | 是 | |
FormEngine | Java | 是 | 是 | 拥有连接器API | 服务器端Ajax验证和表单状态更新 | |||||||
Grails | Groovy | 是 | 是 | Push | 是 | GORM, Hibernate | 单元测试、整合测试、功能测试 | 多插件: autobase、dbmigrate或其他 | Spring Security,[62] Apache Shiro[63] | 是 | 是 | 是 |
ItsNat | Java | 是 | 事件驱动 | Push | 使用Java i18n | 外部、内建 | 可用插件 | 纯HTML-SVG | 页面缓存 | 普通Java | ||
JavaServer Faces | Java | 是 | 是 | Pull | 是 | JPA, Hibernate和其他Java EE ORM框架 | JUnit | 是 | Facelets, JSP | 是 | 原生验证, 与Bean Validation整合 | |
项目 | 编程语言 | Ajax | MVC框架 | MVC push-pull | 国际化与本地化 | ORM | 测试框架 | 数据库转移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 |
JBoss Seam | Java | 是 | 是 | Pull | 是 | JPA, Hibernate | JUnit, TestNG | JAAS整合、Drools、Hibernate Filters、OpenID、CAPTCHA | Facelets | JBoss Cache, Ehcache | Hibernate Validator | |
Jspx-bay | Java | 是 | 页面导向 | 拥有API | JAAS整合 | 主板页面 | 是,内建UI验证控制 | |||||
JVx WebUI | Java | 是 | 模型驱动 | 是 | 是,可用插件 | JUnit | 是 | 单独来源 | 是,可用插件 | |||
JWt | Java | 是 | 是 | Push-pull | 是 | 是 | 是 | 是 | ||||
OpenXava | Java | 是 | 模型驱动 | 是 | JPA、Hibernate、EJB2 CMP | JUnit | Hibernate工具 | 使用JSR-168门户安全 | UI为自动生成 | 使用门户和JPA缓存 | 是 | |
Play | Java, Scala | 是 | 是 | Push-pull | 是 | JPA, Hibernate | JUnit, Selenium | 是 | 经由核心安全模组 | 是 | 是 | 服务器端验证 |
RIFE | Java | DWR | 是 | Push-pull | 是 | 是 | 容器外测试 | 是 | 是 | 与Terracotta整合 | 是 | |
Spring | Java | 是 | 是 | Push | 是 | Hibernate、iBatis或其他 | 伪物件、单元测试 | Spring Security (原Acegi) | JSP、Commons Tiles、Velocity、Thymeleaf或其他 | Ehcache或其他 | 一般验证器、Bean Validation | |
Stripes | Java | 是 | 是 | Pull | 是 | JPA, Hibernate | 是 | 框架附加元件 | 是 | 是 | ||
Vaadin | Java | GWT | Push-pull | 是 | 是 | 是 | 是 | 是 | ||||
Wavemaker | JavaScript (客户端), Java (服务器端) | Dojo Toolkit | 是 | Push | Dojo Toolkit | Hibernate | JUnit | Hibernate | Spring Security (原Acegi), 以角色为基础的存取控制 | Dojo Toolkit | Dojo Toolkit | 正规表达式、schema驱动验证 |
项目 | 编程语言 | Ajax | MVC框架 | MVC push-pull | 国际化与本地化 | ORM | 测试框架 | 数据库转移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 |
WebObjects | Java | 是 | 是 | Push-pull | 是 | EOF | WOUnit (JUnit), TestNG, Selenium | 在Project WONDER | 是 | 是 | 是 | |
ztemplates | Java JDK 1.5或更新 | 用annotations整合YUI、Google等等 | 是 | Push,单一URL多动作 | 标准Java | 使用任何J2EE ORM框架 | 单元测试 | annotation基底 | Velocity、FreeMarker、JSP或其他可用插件 | 服务器端Ajax验证和表单状态更新(YUI, JSON) | ||
Google Web Toolkit | Java, JavaScript | 是 | 是 | JPA和RequestFactory | JUnit, jsUnit, Selenium | 经由Java | 是 | Bean Validation | ||||
ZK | Java, ZUML | jQuery | 是 | Push-pull | 是 | 任何J2EE ORM框架 | JUnit,ZATS | HibernateUtil, SpringUtil | Spring Security | 巨集元件和结构 | 是 | 客户端、服务器端 |
JavaScript
[编辑]项目 | Ajax | MVC框架 | MVC push-pull | 国际化与本地化 | ORM | 测试框架 | 数据库转移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 |
---|---|---|---|---|---|---|---|---|---|---|---|
AngularJS | XHR, JSONP | 是 | 国际化与本地化 | Karma (单元测试), Protractor (点对点测试) | Content Security Policy (CSP), XSRF | 模板 | 缓存 | 表单验证(前端) | |||
EmberJS | 是 | 是 | 是 | Ember Data | QUnit | Handlebars | |||||
qooxdoo | 是 | 资料键结 | 国际化 | Testrunner | 表单验证 | ||||||
SproutCore | 是 | 是 | |||||||||
Wakanda | 是 | 是 | Push & Pull | 原生物件NoSQL数据库 | CommonJS Unit Testing YUI测试服务 | 资料安全和存取控制 | Storage (application.storage, user.storage, SessionStorage) |
Perl
[编辑]项目 | Ajax | MVC框架 | MVC push-pull | 国际化与本地化 | ORM | 测试框架 | 数据库转移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 |
---|---|---|---|---|---|---|---|---|---|---|---|
Catalyst | 工具包独立 (REST和JSON支援、为Prototype JavaScript框架的特定插件或其他) | 是 | 一般使用为Push | 是 | DBIx::Class、Rose::DB::Object或其他 | 支援Perl测试标准、Test Anything Protocol (TAP) | ? | ACL基底、外部引擎或其他 | Template::Toolkit、HTML::Template、HTML::Mason、PHP和其他现存的Perl模板引擎 | Cache、Memcached、shared memory或其他 | HTML::FormHandler HTML::FormFu、HTML::FormValidator或其他 |
Dancer | 是 | 是 | Push | 是 | DBIx::Class、ORMesque | 是 | ? | ? | Template::Toolkit、HTML::Mason、Text::MicroTemplate、其他现存的Perl模板引擎 | Cache、Memcached、shared memory或其他 | DataFu、其他现存的Perl表单验证软件 |
Mason | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Maypole | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Mojolicious | 工具包独立(REST和JSON支援) | 虽普遍当作MVC,但没有明确的模型支援 | Push | 是 | Commonly used with DBIx::Class | Test::Mojo | ? | 签署的会话cookie | 内建Perl模板、Template::Toolkit和许多其他经由插件 | ? | 没有明确的,使用Perl模组 |
PHP
[编辑]项目 | 编程语言 | Ajax | MVC框架 | MVC push-pull | 国际化与本地化 | ORM | 测试框架 | 数据库转移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 | 鹰架 | RAD | 移动性 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
CakePHP 1 & 2 | PHP >= 5.2 | Prototype、script.aculo.us、jQuery、jQuery UI、MooTools、MooTools或其他 | 是 | Push | 是 | Active Record (CakePHP 1.x)、资料映射模式 (CakePHP 2.x) | 单元测试、伪物件、fixtures、程式码覆盖、用SimpleTest和Xdebug PHPUnit (cakephp 2.0)做记忆体分析 | 是 | ACL基底 | 主题、配置、视图、元素 | Memcache、Redis、XCache、APC、File | 验证、安全性 | 是 | 否 | ? |
CakePHP 3 | PHP >= 5.4 | 任何 | 是 | Yes、Push & Cells | 是 | ORM、资料映射模式、SQL关系代数抽象层 | 单元测试、伪物件、fixtures、程式码覆盖、用PHPUnit 和 Xdebug 和 持续整合经由Travis做记忆体分析 | 是 | CRUD基底、ACL基底、多插件 | 主题、配置、资料格、视图、元素和Twig、Bootstrap等等用的插件 | Memcache、Redis、XCache、APC、File | 经由Contexts (Table (DAO)、Entity (VO)和Controller)、CSRF保护做验证 | 插件 CRUD | Cake Bake | 行动代理侦测、配置 |
CodeIgniter | PHP >= 5.2.4 | 任何 | 是 | Push | 几乎[64] | 只有第三方套件 | 预备在下一版 | 是 | 是 | 是 | 是 | 是 | 否[65] | 是 | 模板 |
Drupal | PHP | jQuery、jQuery UI或其他 | PAC | 不适用 | 是 | 选择性模组 | SimpleTest | 是 | 是 | 是 | Memcache、APC、Varnish或其他 | 是 | 否 | 否 | 是 |
Fat-Free Framework | PHP | 任何 | MVC、RMR | Push-pull | 是 | SQL、MongoDB、Flat-File用的资料映射 | 内建 | 是 | 是 | 是 | APC、Memcache、XCache、WinCache和Filesystem | 是 | 否 | ? | ? |
FuelPHP | PHP >= 5.3.x | 是 | MVC、HMVC | Push | 是 | 是 | PHPUnit | 是 | 是,可用插件 | 是,可用插件 | 档案、Redis、Memcache或其他 | 是 | 是 | ? | ? |
Fusebox | PHP | 是 | 无强制性 | Push | 否,自订 | ? | ? | ? | 可用多种插件 | ? | ? | 经由qforms或内建PHP验证 | 是 | ? | ? |
Gyroscope | PHP >=5.4 | nano.js、replaceable[66] | LCHH | Push-pull | 几乎 | 资料源不可知 | 否 | 内建Schema比较工具和UDF编辑器 | ACL基底、可替换 | 实作特定;帮手函数和可用主题模板 | APC、Memcache | 是 | 互动式程式码生成 | 是 | 专用移动配备和平板配置、横直萤幕转换 |
Joomla | ? | 是 | 插件 | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Kajona | PHP >= 7 | 任何 | 是 | Push | 是 | 是 | PHPUnit、Selenium、Jasmine | 是 | 是 | 是 | APC、数据库、档案 | 是 | 是 | 是 | Bootstrap |
Laravel | PHP >= 5.5.9 | 任何 | 是 | Push | 是 | 是 | PHPUnit | 是 | 是 | 是 | APC、数据库、档案、Memcache、Redis | 是 | 是 | 是 | 否 |
Lithium | PHP >= 5.3.6 | 任何 | 是 | Push | 是 | Yes | 单元测试、内建框架或其他独立元件 | 否 | 是,可用插件 | PHP、Twig插件可用 | Memcache、Redis、XCache、APC、档案 | Yes,有CSRF保护和表单签署 | 否 | 是 | ? |
Nette Framework | PHP >= 5.3.0 | 工具包独立 | MVP | Push | 是 | 只有第三方套件 | 是 | 否 | 是 | 是 | 是 | 是 | 否 | ? | ? |
Phalcon | PHP >= 5.5 | Template:任何 | 是 | Push | 是 | 是 | 是 | 是 | 是 | Volt | 是 | 是 | 是 | 是 | ? |
PRADO | PHP >= 5.3.0 | Prototype、script.aculo.us和内含元件[67] | 否 | Push-pull | 是 | 数据访问对象 (DAO)、active record模式、SQLMap资料映射 | PHPUnit、SimpleTest、Selenium | 否 | 是 | XML基底,类似于ASP.NET[68] | APC、数据库、eAccelerator、Memcached、XCache | 是[69] | 是[70] | ? | ? |
SilverStripe (Sapphire) | PHP >= 5.2 | jQuery、jQuery UI | 是 | Push-pull | 是 | Active record模式 | 单元测试、Selenium | 自动 | 包含OpenID | 主题 | 是 | 是 | 是 | 是 | 是 |
Silex | PHP >= 5.3.9 | 是 | 是 | 是 | 是 | 插件(Doctrine) | 是 | 否 | 是 | PHP、Twig | 插件 | 是 | 插件 | ? | ? |
Smart.Framework | PHP >= 5.4.9 | 是 | 是 | 是 | 是 | 是,(PostgreSQL、MySQL、SQLite、MongoDB、Solr或其他经由插件) | 是 | 否 | 是 | 是,(Markers、Twig或其他经由插件) | 是,File、Redis或其他经由插件) | 是 | 否 | 是 | 是,(jQuery mobile、Bootstrap或其他经由插件) |
Symfony | PHP 5 | Prototype、script.aculo.us、Unobtrusive Ajax加上UJS和PJS插件 | 是 | Push | 是 | Propel、Doctrine (YAML) | 是 | 插件(alpha程式码) | 插件 | PHP、Twig | 是 | 是 | 是 | ? | ? |
Symfony 2 | PHP >= 5.3.3 | 任何 | 是 | Push | 是 | Propel、Doctrine (YAML) | 是 | 插件 | 是 | PHP、Twig | 是 | 是 | 是 | ? | ? |
TwistPHP | PHP >= 5.3.3 | 任何 | 是 | Push | 是 | 是 | PHPUnit经由Travis | 否 | 是 | 是 | 是 | 是 | 否 | ? | ? |
TYPO3 | PHP >= 5.5 | 任何 | 是 | Push-pull | 是 | 是 | 是 | 部分 | 是 | TYPO3 Fluid | 是 | 是 | 插件 | 插件 | ? |
Yii | PHP >= 5.4 | jQuery、jQuery UI、内含元件、插件 | 是 | Push-pull | 是 | 资料存取物件 (DAO)、Active Record模式、插件 (包含Doctrine 2.0) | PHPUnit、Selenium | 是 | ACL基底、RBAC基底、插件 | PHP基底、类PRADO、插件 | APC、数据库、eAccelerator、档案、Memcache、Redis、WinCache、XCache、Zend Platform | 是 | 是[71] | ? | ? |
Zend Framework[72] | PHP >= 5.3 | 工具包独立 | 是 | Push-pull | 是 | 表格和Row Data Gateway或Doctrine | 单元测试、PHP Unit或其他独立元件 | 是 | ACL基底 | 是 | APC、数据库、档案、Memcache、Zend Platform | 是 | 是 | ? | ? |
Zend Framework 2 | PHP >= 5.3.3 | 工具包独立 | 是 | Push-pull | 是 | 表格和Row Data Gateway和Doctrine 2.0 (Zend Framework 2.0) | 单元测试、PHP Unit或其他独立元件 | 是 | ACL基底 | 是 | APC、数据库、档案、Memcache、Zend Platform | 是 | 是 | ? | ? |
Python
[编辑]项目 | 编程语言 | Ajax | MVC框架 | MVC push-pull | 国际化与本地化 | ORM | 测试框架 | 数据库转移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 | Python 3.* |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Bottle | Python | - | - | - | - | Sqlalchemy (经由插件) | - | - | - | 内建, Mako, Jinja2, Cheetah | - | - | 是 |
CherryPy | Python | - | - | _ | - | 可用插件 | - | - | - | 可用插件 | - | - | 是 |
Django | Python | 是 | 是 | Push | 是 | 是 | 是 | 是 | 是 | 内建, Jinja2, Mako, Cheetah | 是 | 是 | 是 |
Flask | Python | 是 | - | - | 是 | Sqlalchemy (经由插件) | 经由unittest | 是 | Jinja2 | 是 | 是 | 是 | |
Pyjs | Python, JavaScript | 是 | 使用PureMVC Python 版(编译成 JavaScript) | 是 | ??, 无直接资料存取 | 否 | 否 | ||||||
Pylons | Python | Prototype和 script.aculo.us用的帮手 | controller | Push | 是 | ORM-agnostic | 经由nose | 相依于ORM | 可用插件: Mako, Genshi, Myghty, Kid或其他 | Beaker缓存 (记忆体, memcached, 档案, 数据库) | 首选formencode | 否 | |
Pyramid | Python | 是 | 是 | Push | 是 | ORM-agnostic | 是 | 相依于ORM | 是 | 可用插件: Chameleon, Genshi; Mako, more | Beaker缓存 (记忆体, memcached, 档案, 数据库) | 首选formencode | 是 |
TACTIC | Python | Yes | Yes | Pull | 否 | 是 | 是 | 是 | 是 | Mako | 否 | 是 | 否 |
Tornado | Python | Advanced Async范例实作AJAX | - | - | - | - | - | - | - | - | - | - | Yes |
TurboGears | Python | 工具包独立, 经由JSON提供资源 | 全堆叠, best-of-breed基底 | Push | 是 | SQLAlchemy | nose | SQLAlchemy-Migrate | Repoze.what & Repoze.who | 可用插件: Genshi或其他 | 支援memcached和任何WSGI相容系统 | ToscaWidgets, 利用FormEncode | 是 |
web2py | Python | 是 | 是 | Push | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 否 |
Webware | Python | 否 | Optional | Pull | 否 | 是 | 是 | 否 | 是 | 是 | 否 | 否 | 否 |
BlueBream (Zope 3) | Python | 经由外挂产品,如Plone 加KSS | 是 | Pull | 是 | ZODB, SQLObject, SQLAlchemy | 单元测试与功能测试 | ZODB生成 | ACL基底 | 是 | 是 | 是 | 否 |
Zope 2 | Python | 是 | Pull | 是 | ZODB, SQLObject, SQLAlchemy | 单元测试 | ACL基底 | 是 | 是 | CMFFormController | 否 |
Ruby
[编辑]项目 | Ajax | MVC框架 | MVC push-pull | 国际化与本地化 | ORM | 测试框架 | 数据库转移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 |
---|---|---|---|---|---|---|---|---|---|---|---|
Camping | 否 | 是 | Push | 否 | Active Record | 经由Mosquito | 是 | 否 | 是 | 否 | 否 |
Ruby on Rails | Prototype, script.aculo.us, jQuery | ActiveRecord, Action Pack | Push | Yes | ActiveRecord | 单元测试, 功能测试和整合测试 | 是 | 插件 | 是 | 是 | 是 |
Sinatra | 否 | 是 | Push | 否 | ORM-independent | rack-test | 是 | 经由Rack中介软件 | 是 | 经由Rack中介软件 | 否 |
其他
[编辑]项目 | 编程语言 | Ajax | MVC框架 | MVC push-pull | 国际化与本地化 | ORM | 测试框架 | 数据库转移框架 | 安全性框架 | 模板框架 | 缓存框架 | 表单验证框架 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
AIDA/Web | Smalltalk | 是 | 是 | 是 | Gemstone/S、GLORP或其他 | SUnit | 是 | 是 | ||||
Application Express | PL/SQL | 是 | 是 | 是 | 是 | 是 | ||||||
Flex | ActionScript、MXML | 非同名的相似技术[73] | FlexUnit | |||||||||
Kepler | Lua | 是 | ||||||||||
Lift | Scala | 是 | 是 | Pull | 是 | 是 | ScalaTest、Selenium[74] | 是 | 是 | 是 | 是 | 是 |
Ocsigen | OCaml | 是 | 是 | 是 | ||||||||
Opa | Opa | 是 | 是 | MongoDB | 是 | 是 | 是 | |||||
OpenACS | Tcl | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | |
Seaside | Smalltalk | jQuery、jQuery UI、Prototype JavaScript Framework、script.aculo.us或其他 | 是 | 是 | GLORP、Gemstone/S或其他 | 单元测试、SUnit | 否,故意的 | Magritte |
参考
[编辑]参考文献
[编辑]- ^ Version 4.6.300. Github. [28 May 2016]. (原始内容存档于2017-07-29).
- ^ 存档副本. [2017-06-15]. (原始内容存档于2017-06-07).
- ^ CppCMS Blog. Blog.cppcms.com. [2013-08-18]. (原始内容存档于2013-08-03).
- ^ Release 1.7.3 is available. pocoproject.org. 2 May 2016 [3 May 2016]. (原始内容存档于2016-07-25).
- ^ Tntnet homepage. Tntnet.org. [2013-08-18]. (原始内容存档于2013-07-20).
- ^ 存档副本. [2017-06-15]. (原始内容存档于2017-08-06).
- ^ v2.4.0 commit on GitHub. 2015-06-05 [2015-09-18]. (原始内容存档于2017-07-29).
- ^ LLGPL License. [2015-09-18]. (原始内容存档于2015-10-26).
- ^ vibe.d. RejectedSoftware. [2016-11-10]. (原始内容存档于2016-11-11).
- ^ Yesod Web Framework for Haskell. Yesodweb.com. 2013-07-19 [2013-08-18]. (原始内容存档于2013-07-27).
- ^ 存档副本. [2016-06-10]. (原始内容存档于2016-06-20).
- ^ emberjs/data. [2017-04-07]. (原始内容存档于2017-07-29) (英语).
- ^ Jonathan Swartz. CPAN. [2016-03-16]. (原始内容存档于2016-03-19).
- ^ Agavi 1.0.8 released!. agavi.org. [7 November 2015]. (原始内容存档于2015-09-24).
- ^ CakePHP 3.4.7 Released. cakephp.org. [9 June 2017]. (原始内容存档于2017-07-06).
- ^ CodeIgniter 4.0.2. Github. [2020-03-11].
- ^ Fatfree Changelog. Github. [1 December 2016].
- ^ FuelPHP releases v1.8. FuelPHP. 9 April 2016 [27 May 2016]. (原始内容存档于2017-01-04).
- ^ Jamroom 6.0.7. jamroom.net. [2017-06-15]. (原始内容存档于2016-10-11).
- ^ Releases. github.com. [10 June 2017]. (原始内容存档于2017-07-29).
- ^ Kohana V3.3.5. kohanaframework.org. [2016-03-10]. (原始内容存档于2016-02-10).
- ^ Release - laravel/framework. github.com. [2022-09-12].
- ^ Releasing 1.1.0. [2017-06-15]. (原始内容存档于2017-06-04).
- ^ Nette Framework - first commit. 2014 [2014-04-23]. (原始内容存档于2017-07-29).
- ^ Released version 2.4.0. [2017-06-15]. (原始内容存档于2017-07-29).
- ^ Nette Framework Licence. nette.org. 2014 [2014-04-23]. (原始内容存档于2017-07-29).
- ^ Release Version 3.0.1 · phalcon/cphalcon. github.com. 2016-08-24 [2016-08-24]. (原始内容存档于2017-07-29).
- ^ pradosoft/prado: Release 3.3.2. 2015-08-23 [2016-09-03]. (原始内容存档于2017-07-29).
- ^ License of PRADO. pradosoft.com. 2013 [2013-10-16]. (原始内容存档于2013-10-16).
- ^ Changelog. sensiolabs.org. [27 May 2016]. (原始内容存档于2016-12-09).
- ^ 存档副本. [2017-06-15]. (原始内容存档于2015-10-08).
- ^ 存档副本. [2017-06-15]. (原始内容存档于2017-10-12).
- ^ Symfony 3.3.2 released. Symfony Blog. [9 June 2017]. (原始内容存档于2017-06-17).
- ^ TwistPHP Version 3.0.5. twistphp.com. [17 May 2017]. (原始内容存档于2017-07-29).
- ^ Release Overview. neos.io. [16 October 2016]. (原始内容存档于2017-07-29).
- ^ Yii 2.0.12 is released. Yiiframework.com. 2017-06-05 [2017-06-10]. (原始内容存档于2017-06-10).
- ^ Zend Framework Changelog. [2017-06-15]. (原始内容存档于2017-07-29).
- ^ Release 0.12.25. 2023年3月4日 [2023年3月8日].
- ^ bluebream 1.0. 2011年1月18日 [2020年12月18日].
- ^ Release v18.8.0. 2022年7月18日 [2022年7月18日].
- ^ Release 4.8.0.
- ^ Release 5.1.3. 2024年11月5日 [2024年11月13日].
- ^ Release 0.115.5. 2024年11月12日 [2024年11月23日].
- ^ Release 3.1.0. 2024年11月13日 [2024年11月21日].
- ^ Release 5.1. 2024年10月28日 [2024年11月22日].
- ^ Release 0.5.2. 2017年11月10日 [2021年3月20日].
- ^ Release 0.8.1a. 2012年5月9日 [2018年7月22日].
- ^ Release 1.0.2. 2015年7月22日 [2018年7月22日].
- ^ Release 2.0.2. 2023年8月25日 [2023年9月19日].
- ^ Release 4.8.0.b04. 2020年9月25日 [2020年12月18日].
- ^ Release 6.4.1. 2024年6月6日 [2024年6月27日].
- ^ Release 2.4.3. 2020年3月1日 [2020年3月2日].
- ^ web2py Web Framework.
- ^ Release 3.0.10. 2023年5月27日 [2023年6月2日].
- ^ Change log. 2022年9月9日 [2022年10月18日].
- ^ Padrino 0.13.2 - New Project Flag, Component Upgrades and Bug Fixes. Padrino. [28 May 2016]. (原始内容存档于2017-06-23).
- ^ All versions of rails | RubyGems.org | your community gem host. [2016-03-29]. (原始内容存档于2016-04-14).
- ^ 存档副本. [2017-06-15]. (原始内容存档于2017-07-05).
- ^ 存档副本. [2015-07-21]. (原始内容存档于2015-07-22).
- ^ The Opa Blog: Some great news on Opa. Blog.opalang.org. [2013-08-18]. (原始内容存档于2013-02-28).
- ^ 存档副本. [2017-06-15]. (原始内容存档于2017-07-29).
- ^ Grails Plugin: Spring Security Core Plugin. Grails.org. 2012-04-06 [2013-08-18]. (原始内容存档于2013-08-23).
- ^ Grails Plugin: Apache Shiro Integration for Grails. Grails.org. 2012-04-11 [2013-08-18]. (原始内容存档于2013-08-23).
- ^ Language helper included、must activate & set desired language by parsing HTTP headers. Codeigniter.com. [2013-08-18]. (原始内容存档于2012-11-08).
- ^ Change Log : CodeIgniter User Guide. EllisLab、Inc. [19 March 2012]. (原始内容存档于2012-12-30).
- ^ Replacing nano.js in Gyroscope. antradar.com. 2014-05-20 [2015-08-20]. (原始内容存档于2016-09-28).
- ^ PRADO QuickStart Tutorial. Pradosoft.com. [2013-08-18]. (原始内容存档于2013-09-28).
- ^ PRADO QuickStart Tutorial. Pradosoft.com. [2013-08-18]. (原始内容存档于2013-09-28).
- ^ PRADO QuickStart Tutorial. Pradosoft.com. [2013-08-18]. (原始内容存档于2013-09-28).
- ^ PRADO QuickStart Tutorial. Pradosoft.com. [2013-08-18]. (原始内容存档于2013-09-28).
- ^ Initial Prototyping: Scaffolding | Building a Blog System Using Yii | Yii PHP Framework. Yiiframework.com. [2013-08-18]. (原始内容存档于2013-07-24).
- ^ Zend Framework 2 Documentation Release 2.3.3 (PDF). Zend.com. [22 September 2014]. (原始内容存档 (PDF)于2016-08-17).
- ^ URLRequest - Adobe ActionScript® 3 (AS3 ) API Reference. Livedocs.adobe.com. 2013-07-01 [2013-08-18]. (原始内容存档于2009-02-12).
- ^ ScalaTest. ScalaTest. [2013-08-18]. (原始内容存档于2013-11-05).