首页  >  文章  >  后端开发  >  php不使用模版,怎么实现前端和后端人员的协作开发?

php不使用模版,怎么实现前端和后端人员的协作开发?

WBOY
WBOY原创
2016-06-06 20:41:571069浏览

如题:
模版的初衷是:代码与页面的分离。但实际开发过程中, 模版文件页面元素要嵌入大量的变量,以及同时处理if/else、for each等处理逻辑,比如smarty模版。
对于这种模版文件,模版语言和html语言混合在一起,结构混乱、逻辑与布局混杂,既不利于编辑制作,也不利于调试排错。同时还要增加前端人员的学习压力(例如要学习smarty)。

理想的模式下,前端只负责展示和交互(html/css/js),后端只负责提供数据(php)。

怎么实现这种理想模式?

回复内容:

如题:
模版的初衷是:代码与页面的分离。但实际开发过程中, 模版文件页面元素要嵌入大量的变量,以及同时处理if/else、for each等处理逻辑,比如smarty模版。
对于这种模版文件,模版语言和html语言混合在一起,结构混乱、逻辑与布局混杂,既不利于编辑制作,也不利于调试排错。同时还要增加前端人员的学习压力(例如要学习smarty)。

理想的模式下,前端只负责展示和交互(html/css/js),后端只负责提供数据(php)。

怎么实现这种理想模式?

今天刚看到一个地方说,可以使用JQuery,前端所有数据通过JQuery的Ajax进行获取数据,以及进行前后端数据的交互。

后端输出json,前端处理数据

用这个模式写过一些东西,希望有帮助

博客 http://i.mouto.org/
博客 http://mouto.org/

讨论版 http://za2.org/

电台 http://itorr.sinaapp.com/fm/
电台 http://moe.re/fm

个人吐槽记录 http://x.mouto.org/

照片社区 http://dev.vscam.co/


2015-2-20: ......这么多从这里来路的访问为什么不慷慨下鼠标给个赞!!!!!!! T_T

楼上正解,后台使用json传送数据 前端使用ajax接收。

  • 使用JSON
  • noBackend

我先谈谈我的观点。

PHP最开始最初的嵌入HTML中, 后来模板盛行(如Smarty), 再到后来的又抛弃模板(使用用输出)或轻量级模板(如Laravel的Blade模板引擎)。但前后台代码始终没有做到完全分离。作为Web开发的神级架构MVC, 有的时候让人搞不清楚业务代码究竟应该写在哪, 所谓的视图就是套着php锁链的HTML, 而Model大多数是一个继承于ORM的子类。这样的模式, 后端开发人员仍要处理HTML代码。就算是一个人在写前后端, 也要不断的切换思维,徘徊于业务逻辑和View之间, 实在是很痛苦。

单纯的后端只输出JSON, 前端处理JSON并显示, 确实可以做到前后端的分离。但是没有条条框框束缚的开发模式,工程很容易随着工程量的增加或代码的不规范而陷入泥沼。

我现在十分推崇纯粹REST后端 AngularJS(REST)前端的架构。纯粹REST后端, 完全抛弃的View,并且可以凭借单一后端支持主流的应用场景: App, 浏览器, Web API,最主要的是有那么一套规范或标准实现去约束你,后端人员只需考虑如何更rest,更好的写易于使用的API就好了。而AngularJS从REST后端手中接过大棒,可以轻易的实现一个很优雅的前端架构。

再辅以node.js,单元测试,coffee, sass之流 .... 想不爽都难

模板的实质是 placeholder。你连 placeholder 都不写,计算机怎么知道什么是可变的什么不可变?结果至多是把模板逻辑挪到代码里,然后代码高度依赖 html 结构。 。 。回到石器时代。 。 。模板从有 if-else 开始就跑偏了,越来越想媲美一个通用语言,越来越复杂。

或者把模板啥的一股脑推给前端,后端只做 API,但这样只是责任转移了,前端依旧不能专心负责展示和交互。

其实后端应该分两类,一类负责核心应用,一类负责模板
HTML CSS 依旧叫前端负责

前后端的分法本来就有些欠缺,缺少一个中间层。

只有这样,才有可能做到:

前端只负责展示和交互(html/css/js),后端只负责提供数据(php)。

因为前后端衔接的任务交给中间层了~

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn