谈到前后端分离式开发,处于早就知道,也一直在尝试使用,但是实践效果并不好的状态,今天师父给了一份,关于淘宝前后端分离的实践讲解,才觉得之前开发过程中从意义上讲并不算前后端,反而由于混乱的分离,造成了很多的问题。
讲解中提到了,在服务器与浏览器中间架设一个中间层,这个中间层(NodeJS),我是第一次看到,其实是前端比较了解的一个js,适用于驱动事件,非阻塞I/O,主要优点就是可以实现前后端复用,其他的分离方式最大的弊端就是,前后端分工混乱,很难甚至不能够复用。
该实践讲解中给出了,具体的分工模式图,如下:
后端 | 前端 |
---|
服务器 | 浏览器 |
---|
JAVA | NodeJS | JS + HTML + CSS |
---|
|
- 跑在服務器上的JS
- 转发数据,串接服务
- 路由设计,控制逻辑
- 渲染页面,体验优化
- 更多的可能
|
- 跑在浏览器上的JS
- CSS、JS加載與運行
- DOM操作
- 任何的前端框架與工具
- 共用模版、路由
|
后端和前端实现了完全的分离,后端只需要提供数据接口就可以了,其余的都交给前端来处理,这样的分离方式,至于大数据流量的需求解决的方案,与我目前的开发需求而言,有些大材小用了,先不细致学习了。下面为淘宝前后端分离实践原地址,每个人的理解可能有些小不同,大家可以自己鉴阅!http://2014.jsconf.cn/slides/herman-taobaoweb/index.html#