系统将采用多层次的架构设计,采用MVC的设计模式,支持XML接口和ajax的动态接口,建立复杂的状态流。
多层架构的出现,使得程序编写的代码得以重用,程序员之间可以更好地分工合作,程序架构更加清晰并易于维护。多层架构适用于需要协同开发且具有一定规模或业务较复杂的系统。同时由于分了多层,一个接口的变化可能会引起多层接口的修改。
多层设计结构
架构同“软件架构”定义,是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计;上图是一个系统的草图,它所描述的对象是直接构成系统的抽象组件,各个组件之间的连接则明确和相对细致地描述组件之间的通信。在面向对象领域中,组件之间的连接通常用接口来实现。
一个成熟的架构具有以下优点:
l 安全性:根据业务的需要,可以通过减少访问数据的入口点把一些危险的系统功能给屏蔽了,从而提高其安全性。
l 可扩展性:架构的搭建使用了多种设计模式,通过多种策略来提高系统的可扩展性。
l 可定制性:可以根据客户群的不同和需求的变化进行调整。
l 可维护性:搭建架构的目的之一就是为了提高系统的可维护性,通过对各层功能的明确细分提高其可维护性。
一般构成系统的模块有:人机交互界面,业务处理模块,这是传统的二层架构设计。然而一个系统中操作最频繁的是数据库访问,随着电子商务系统越来越复杂,持久,高效的数据库访问组件是迫切需要的,因此,新的架构设计中,人们将数据库另立一层,专门为数据库访问服务。除了数据持久层外,我们还需要一个服务层。对于大型的电子商务系统,跨平台,分布式计算,服务器群互动通信是必不可少的,服务层设立的意义就是为了实现这些功能。那么我们根据分析,将整个网站的层次分为数据持久层、业务逻辑层、服务层、表示层。
MVC(Model-View-Controller)设计模式
MVC是一种非常经典的设计模式。它广泛应用于各种语言和各种类型的应用中。MVC的思想是将“显示”(View)、“数据”(Model)和“控制”(Control)分开。View部分负责向用户展示数据和接收用户输入Control负责接收View传来的输入并执行相应的业务逻辑获得执行结果,然后再调用View将结果向用户呈现。Model是输入和输出的数据载体。MVC将显示和控制分开,使得View的变化不会影响到Control的修改,同时同样的数据可能会提交到不同的View进行显示。MVC和多层架构一样,提高了系统的可维护性、可扩展性和可移植性。
现在各种开发语言都有很多框架和技术支持MVC这种设计模式。在JAVA里有开源框架Struts、Spring MVC、JSF等。它们通常都是利用Servlet作Control,利用模板语言作为View。而.net也推出了自己的MVC框架,最近推出了MVC2.0(在vs2008下支持)。这一切都显示了MVC设计模式的强大生命力。要想学习MVC设计模式必须深入理解三个部分的作用并从根本上改变以前开发当中的设计思路,不然用到MVC设计模式会觉得处处受牵制。
Html5+CSS3
标准通用标记语言下的一个应用HTML标准自1999年12月发布的HTML4.01后,后继的HTML5和其它标准被束之高阁,为了推动Web标准化运动的发展,一些公司联合起来,成立了一个叫做 Web Hypertext Application Technology Working Group (Web超文本应用技术工作组-WHATWG)的组织。WHATWG 致力于 Web 表单和应用程序,而W3C(World Wide Web Consortium,万维网联盟) 专注于XHTML2.0。在 2006 年,双方决定进行合作,来创建一个新版本的 HTML。
2013年5月6日, HTML 5.1正式草案公布。该规范定义了第五次重大版本,第一次要修订万维网的核心语言:超文本标记语言(HTML)。在这个版本中,新功能不断推出,以帮助Web应用程序的作者,努力提高新元素互操作性。
HTML5标准才刚刚起步,但随着HTML5和CSS3逐渐兴起,其强大的特性在移动Web应用当中得到了非常HTML5标准才刚刚起步,但随着HTML5和CSS3逐渐兴起,其强大的特性在移动Web应用当中得到了非常好的发挥。好的发挥。
CSS即层叠样式表(CascadingStyleSheet)。在网页制作时采用层叠样式表技术,可以有效地对页面的布局、字体、颜色、背景和其它效果实现更加精确的控制。只要对相应的代码做一些简单的修改,就可以改变同一页面的不同部分,或者页数不同的网页的外观和格式。CSS3是CSS技术的升级版本,CSS3语言开发是朝着模块化发展的。以前的规范作为一个模块实在是太庞大而且比较复杂,所以,把它分解为一些小的模块,更多新的模块也被加入进来。这些模块包括:盒子模型、列表模块、超链接方式、语言模块 、背景和边框 、文字特效 、多栏布局等。
平台的选择
目前软件开发平台有Microsoft.NET平台、J2EE(JAVA)平台、WEB开发平台等多种。其中 Microsoft .NET是一种全新的运算平台,其核心内容之一就是要搭建第三代互联网平台,该平台能够最大的保护用户的现有投资和适应未来发展的需要。为促进.NET应用程序的开发,Microsoft推出了Visual Studio.NET集成开发环境。这个集成环境中包含了许多强大的工具,并且支持多种编程语言,如C#、Visual Basic.NET、C++、JAVASCRIPT、DHTML等。而C#是一种专门为.NET设计的面向对象程序语言,融合了其他语言的优点,使用类似C的语法,通过与.NET Framework结合,与类库的支持,得以更简单地开发出更稳固、功能更强大的应用程序。工程专业人员可以用VC#.NET实现他所需要的任何编程功能,从开发个人使用的应用程序,到大型工程软件应用系统,都可以在VC#.NET提供的工具中得到支持。且.NET的数据访问工具则由基于XML的ADO.NET代替了基于COM组件的ADO.任何以XML为输出的数据源都可以作为 ADO.NET 的数据源.相应的结果集升级为数据集 (DataSets),命令语句则升级为数据集命令(DataSet Commands)。从形式来看,微软的ADO.NET更新潮和时髦一些,基于XML的特性使其可以处理极其丰富的数据源,且因其构架在HTTP协议之上,易于穿透防火墙,使沟通更为便利。