collections,
web 应用框架:
新机制
一个框架结构在编程语言之上加入了新的机制,并且这些机制能够为许多特定的目标自动提供一些开发模式。一个框架结构同样为编码增加了结构,并且促使程序员编出更好、更易读的、有持续性的代码。一个框架结构能让编程变得更加简单,因为它把复杂的程序封装成了简明的陈述。
一个框架的发展通常是以它所使用的语言所延伸出来的。一个php5框架是由一系列的用php5写成的文件组成的。
层次
一个框架将为应用划分出层次。从整体上来说,它可以将应用分为三个层次:
◆表现逻辑层(presentation logic) 用于处理用户与软件之间的交互
◆数据源逻辑层(data source logic) 提供了一个数据库同其他数据提供者的联系通道。
◆范围逻辑层(domain logic),或者叫事务逻辑层(business logic),这是剩余的部分。它包括关于输入的计算、处理表现层中的数据,以及根据从表现层收到的指令分派调度数据源逻辑层。
网络应用框架
网络应用框架致力于促进网络应用的开发(websites,intranets,等等)。建立一个基本的动态网站可以从现有的编程语言中轻易的实现,而PHP的知名就是由于它的简易性被广泛的应用。只需要php,你就可以查询数据库、管理会话(session,cookies)、访问服务器端文件等等。而当你需要构建一个更加复杂的站点,当事务逻辑大大的增加了用于维护的编码量的时候,你就需要一个网络应用的框架出现了。
MVC, Tapestry, Struts, Ruby on Rails.
Java 平台: Java平台有3个版本,它们是适用于小型设备和智能卡的Java平台Micro版(Java 2 Platform Micro Edition,J2ME)、适用于桌面系统的Java平台标准版(Java 2 Platform Standard Edition,J2SE)、适用于创建服务器应用程序和服务的Java平台企业版(Java
2 Platform Enterprise Edition,J2EE)。
网站应用程式架构
ASP.NET |
▪ASP.NET MVC |
▪BFC |
▪DotNetNuke |
▪MonoRail |
▪Umbraco |
|
|
|
|
|
|
---|
ColdFusion |
▪ColdSpring |
▪Fusebox |
▪Mach-II |
▪Model-Glue |
▪onTap |
▪on Wheels |
|
|
|
|
|
---|
Common Lisp |
▪ABCL-web |
▪blow |
▪BKNR |
▪SymbolicWeb |
▪UnCommon
Web |
|
|
|
|
|
|
---|
Java |
▪Apache
Struts |
▪AppFuse |
▪Flexive |
▪GWT |
▪Grails |
▪Vaadin |
▪ItsNat |
▪JavaServer Faces |
▪Makumba |
▪OpenXava |
▪Reasonable
Server Faces |
▪RIFE |
▪Restlet |
▪Seam |
▪Spring |
▪Stripes |
▪Tapestry |
▪WebWork |
▪Wicket |
▪ZK |
|
|
|
---|
Perl |
▪Catalyst |
▪Interchange |
▪Mason |
|
|
|
|
---|
PHP |
▪Agavi |
▪Akelos |
▪CakePHP |
▪Chisimba |
▪CodeIgniter |
▪Garden |
▪Horde |
▪Kohana |
▪Kolibri |
▪KumbiaPHP |
▪Midgard |
▪Orinoco
Framework |
▪PHPonTrax |
▪Seagull |
▪Simplicity |
▪Symfony |
▪WASP |
▪Yii
Framework |
▪Zend |
▪Zoop |
|
|
|
---|
Python |
▪Bottle |
▪CherryPy |
▪Django |
▪Flask |
▪Gork |
▪Pyjamas |
▪Pylons |
▪Pyramid |
▪Tornado |
▪TurboGears |
▪web2py |
▪Zope |
|
|
|
---|
Ruby |
▪Ruby on Rails |
▪Merb |
▪Sinatra |
|
|
|
|
---|
Other languages |
▪Application
Express |
▪Fusebox |
▪OpenACS |
▪Yaws |
▪HAppS |
▪SproutCore |
|
|
|
|
|
---|
用户点评