前言:
以前的工作大部分都是,前端做页面 稍微写几个js效果就算是 有复杂的效果 也没有涉及到 需要去调用后端数据的层面。总体来说,以前的页面逻辑会相对简单后端会做更多的事。
而现在,这些任务都抛给前端来做了。。
前端的业务逻辑变得很复杂 有的时候甚至 比后端的更复杂。(当然这个也跟写接口的人水平有关。。。)
在这样的背景下面,如果还是以前那套 页面里面写js 或者哪里有效果写哪里的话。无论是实现,还是后面的维护都是一个很大的问题。。
所以,我觉得富客户端web应用,很有必要组建一个自己的前端架构。来保证 项目的 低耦合,高内聚。
构思:
到处都听人家说架构。。那么,架构到底是什么呢。
我这里把架构分成2个部分。。。
1.这里的设计思路,就是指为了可重用代码、让代码更容易被他人理解、保证代码可靠性。一套模式化的 代码编写 规则。比如:大家比较熟悉的 mvc 模式。
他其实就是一个设计思路。。
2.这里的必要组件,就是指包括 UI组件例如:日历插件。 也包括基础代码;比如:用与操作 数据的 一套基础方法 等等。
构建一个简单的架构:
第一步:我首先 把所有的模块抽象成 3个层面 。
1.数据层 页面内部通过 xxxData={} 这个全局对象包装。这里包含了整个模块 必要的 数据。。
2.模板层 这里包含了所有 模块的显示规则 这里就是比较普通的模板组件 可以通过抽离 文件的形式模块化。。
3.交互层 这里包含了 所有交互逻辑 这个层面主要包括了 数据交互层 和 视觉交互层2个部分。
第二步:我会把必要的组件进行集成 。
1. 我会寻找合适的 模板 引擎 ,ui 组件 等 通过我自己的方式进行按模块集成到 我的核心库里面。
2. 通过各种方式,生成一套适合这个项目的核心 库 。
最后一步:在项目中完善整体的架构,丰富整个架构体系。并进行总结。以便后续改进。。
总结:
架构初期难免不够完善,以后陆续出文章完善吧。。谢谢观看。。
原文:http://www.cnblogs.com/tomblog/p/4733198.html