- 主题:Re: 关于前后端分离!
看你是深入到哪个层面的理解,能真正用自己的语言理解事物的本质才是真的理解。
【 在 hjc404 的大作中提到: 】
: vue是MVVM模式。
: 估计这里没几个人能把这些搞清楚哦,反正我是学了好长时间,也只懂了一半,只知道要oop哦!
--
FROM 123.123.120.*
PHP代码,是服务器端语言,需要靠服务器端程序来执行。
HTML,是客户端语言,靠浏览器执行。
1、混写
PHP初期,要想把PHP程序的执行情况展示在页面上,是把html代码肢解后混在PHP程序里的。浏览器请求一个php文件,服务器端执行后得到结果。当时的ASP/JSP也是一样的。
2、Smarty
随着PHP这类脚本语言的流行,大家发现这样混着写太麻烦了,就在想能否把程序逻辑和页面展现进行分离?随着PHP对OOP的支持,Smarty横空出世了。PHP程序写完逻辑得到结果后,加载Smarty类,Smarty让该PHP程序实现了2点:需要向模板输出些什么变量?需要向哪个模板输出变量?
3、模板
终于,在Smarty的加持下,负责面相浏览者的html部分,可以单独写在一个文件内。如果要展现php的变量数据呢,只需要约定的标签即可。比如输出标题{$title},循环<volist>{$vo.name}</volist>等。
终于,负责逻辑的PHP程序与负责面向用户的html,分开了,虽然它们之间还有点点牵连。。
例子参见著名的Discuz以及织梦CMS等。
4、MVC
MVC都是在以上基础之上的进一步演化与发展,它是将数据层又独立出去,要说更科学,也没毛病。
但MVC全套始终还是在服务器端完成的,并非严格意义上的前后端分离。
【 在 huaxinjuedui 的大作中提到: 】
: 这块内容很明显他还是个小白,很难理解这类概括性的描述。。
: 要跟他说清楚,估计得把MVC发展史以及VUE这类框架发展史说一遍才行。。
:
--
FROM 125.84.28.*
楼主50多岁,还折腾这个,就冲这份勇气,大家还是耐心一点吧。
MVC之类的只是架构分离,拿php来说,从原来的数据层和展示层混写,到二者分开,再
到后来,增加一个模型控制层,专门用于前两者之间的连接。但是这些都还只是在一台
服务器的同一个服务应用程序内部,要展示出的页面仍然只是在同一个服务框架内生成
的。早期asp到asp.net也走了这个路线。
前后端分离则更进一步,页面展示跟数据提供完全分开,甚至都可以不在一个服务框架
或者一个服务器内。典型的就是Vue,所有的界面交互(也包括一部分数据处理)全部在
前端完成,需要新的数据则通过api从后端接口得到,这两者之间如果不需要数据,则完
全是两个程序。现在很多套壳的手机App和小程序也基本是这种形式,app相当于前端,
通过api接口从服务器获取数据,二者完全分离。
不知道这样说楼主能不能理解?
【 在 huaxinjuedui 的大作中提到: 】
: 这块内容很明显他还是个小白,很难理解这类概括性的描述。。
: 要跟他说清楚,估计得把MVC发展史以及VUE这类框架发展史说一遍才行。。
--
FROM 119.97.241.*
50多又咋了?
纯入门水平,自我感觉老NB了,不屑这个不屑那个的。
【 在 sloanwall 的大作中提到: 】
: 楼主50多岁,还折腾这个,就冲这份勇气,大家还是耐心一点吧。
: MVC之类的只是架构分离,拿php来说,从原来的数据层和展示层混写,到二者分开,再
: 到后来,增加一个模型控制层,专门用于前两者之间的连接。但是这些都还只是在一台
: ...................
--
FROM 111.201.26.*