Web开发框架中的架构模式比较
(Wang Hailong)
目录
架构模式Architectural Pattern的基本概念... 2
用户身份确认Authentication 和授权Authorization. 17
ASP.Net的服务器端配置文件web.config例子。(节录)... 17
Java web 框架的服务器端配置文件web.xml例子。... 18
序
本文讨论两大类web开发框架——java web框架和微软的.Net框架之间的架构模式的比较。
涉及到的Java web 框架包括:Cocoon,Struts,Axis,Xalan等Apache开源项目,SourceForge.net的开源项目Echo。
涉及到的架构模式Architectural Pattern包括:
Server Page, (页面内容和逻辑)
页面控件重用,(TagLib)
页面内容和表现风格的分离,(XSLT)
页面输入验证 Validation,
Database driven page,
多语言支持,
用户身份确认Authentication 和授权Authorization,
SOAP Web Service。
架构模式Architectural Pattern的基本概念
软件开发中的模式,根据处理问题的粒度不同,从高到低,分为3个层次:
架构模式 Architectural Pattern
设计模式 Design Pattern
实现模式 Implementation Pattern
架构模式 Architectural Pattern 是模式中的最高层次,表示最基本的系统组成,通常提供一组预定义的子系统。比如,用户和文件系统安全策略模型,N-tier结构,组件对象服务,名字服务(Naming Service),服务端Session Keeping and Tracing;再比如,Container模式——在J2EE技术中,web server是servlet和jsp的container,Application Server是EJB的Container;还有,我们熟知的MVC结构也属于架构模式的层次。
设计模式 Design Pattern是模式中的第二层次,用来处理程序设计中反复出现的问题。 例如,[Gang of Four]总结的23个基本设计模式 —— Factory Pattern, Observer Pattern等等。
实现模式 Implementation Pattern 是最低也是最具体的层次,处理具体到编程语言的问题。比如,类名,变量名,函数名的命名规则;异常处理的规则,等等。
本文通过举例(java和.Net)说明web开发框架中的一些架构模式。
Server Page, (页面内容和逻辑)
页面控件重用,(TagLib)
页面内容和表现风格的分离,(XSLT)
页面输入验证 Validation,
Database driven page,
多语言支持,
用户身份确认Authentication 和授权Authorization,
SOAP Web Service。