论网站结构(框架篇)
论网站结构(框架篇)
网站的框架,听起来多么熟悉的词眼呀。
但是有多少人能解释清楚这是个什么呢?本篇文章就带各位看客对他探讨个究竟。
1,什么是框架?
框架,即framework。
做WEB开发接触到最多的框架可数ORM框架,ORM框架只是所有数据关系映射框架的统称,具体的如NHibernate、ActiveRecord等,框架是为了解决特定问题而存在的,其它诸如模板框架、缓存框架,框架不能直接使用,需要二次开发。
其实就是某种应用的半成品,就是一组组件,供你选用完成你自己的系统。通俗点说就是使用别人搭好的舞台,你来做表演。而且,框架一般是成熟的,不断升级的软件。
框架都是为了解决特定的问题而存在的,部件能够重用,而且某一框架一般都只能解决某一 领域的问题。比如strtus是web框架的实现,如果做b/s项目,用他来实现web层真的不错。但是在c/s项目里,他就一点儿用处都没有了。
2,框架与架构的关系
首先可以肯定:框架!=架构
架构确定了系统整体结构、层次划分,不同部分之间的协作等设计考虑。框架比架构更具体,更偏重于技术涉嫌。对于同一架构(比如Web开发中的MVC),可以通过多种框架来实现。
3,框架与模式
模式(特指设计模式)和框架在软件设计中是两个不同的研究领域。设计模式研究的是一个设计问题的解决方法,一个模式可应用于不同的框架和被不同的语言所实现;而框架则是一个应用的体系结构,是一种或多种设计模式和代码的混合体虽然它们有所不同,但却共同致力于使人们的设计可以被重用,在思想上存在着统一性的特点,因而设计模式的思想可以在框架设计中进行应用。
框架和设计模式存在着显著的区别,主要表现在二者提供的内容和致力应用的领域。
1)、从应用领域上分,框架给出的是整个应用的体系结构;而设计模式则给出了单一设计问题的解决方案,并且这个方案可在不同的应用程序或者框架中进行应用。
2)、从内容上分,设计模式仅是一个单纯的设计,这个设计可被不同语言以不用方式来实现;而框架则是设计和代码的一个混合体,编程者可以用各种方式对框架进行扩展,进而形成完整的不同的应用。
3)、以第二条为基础,可以得出设计模式比框架更容易移植:框架一旦设计成形,虽然还没有构成完整的一个应用,但是以其为基础进行应用的开发显然要受制于框架的实现环境;而设计模式是与语言无关的,所以可以在更广泛的异构环境中进行应用。
总之,框架是软件,而设计模式是软件的知识体。
4,为什么要用框架?
大家都知道,软件系统发展到今天已经很复杂了,特别是服务器端软件,涉及到的知识,内容,问题太多。在某些方面使用别人成熟的框架,就相当于让别人帮你完成一些基础工作,你只需要集中精力完成系统的业务逻辑设计。而且框架一般是成熟,稳健的,他可以处理系统很多细节问题,比如,事物处理,安全性,数据流控制等问题。还有框架一般都经过很多人使用,所以结构很好,所以扩展性也很好,而且它是不断升级的,你可以直接享受别人升级代码带来的好处。
框架一般处在低层应用平台(如J2EE)和高层业务逻辑之间的中间层。