教你如何先后端彻底分离(非api、ajax)

个人先后分离,不是api,不是ajax,我这里只讨论html与后端结合php

前话

曾经风靡一时的dedecms相信作网站的十有8、九都知道,还有那么一些不是技术出生的人,经过看一下文档,也能访问出网站出来,有的人说dedecms太垃圾了,不知道是从哪些方面来讲的,但不得不认可它的优点,又有哪一个框架免费给你用,还这么方便的呢html

话说回来,dedecms的一大好处就是会模板标签,差很少就会慢慢的作套网页了,真的就是这么简单前端

phper技术到底如何

以前我面试过一些人,固然我不会拿网上一些现成的试题,或感受对工做没有实际意义的题去考面试者的面试

自称一到两年工做经验,固然也有3年左右的人(具体无法核实),问他们一些简单的问题他们都不能回答上来,真是不变码农(我这里指只知道码大量代码,而无论代码效率)也难呀ajax

话说个人面试问题很简单(固然我只针对网页),用户了这么多的框架(yii、tp、larval、ecshop、dedecms、wp),无论哪种,若是直接在网页上拉取数据库的数据?数据库

已经没有几我的把原生php研究好再进行框架开发的,他们殊不知道“直接在页面链接数据库,查询显示”,而是说我历来没有这么作过呀,历来都是从控制器读取数据赋值后,在模块里面取后端

真的就只能这样么,这里不得不说MVC真的很根深蒂固呀,有人说能实现功能就能够了,管它什么的呢,这样说你也对api

引出问题

模板赋值,渲染,显示,这样的方式真的好么?app

哪天我模板改了,删除了一些数据,那控制器你要动么,不动是否是有垃圾数据了?框架

如今模板的数据是否是彻底受制于控制器,耦合度过高,谁都离不开谁?

.....

太多的疑问了,固然你不曾想过,咱们作码农,不要只是你的工做年限比别人高,而技术没长进,固然你说我只为混口饭吃,那也罢。

怎么去实现(我的观点)

用过dedecms的人都知道,直接在html用模板标签去取数据不就得了,没错,但在tp、yii、larval这些框架里面大家又会怎么作呢?标签?

第一想到的就是标签,是的,这是最直接的办法,也是dedecms所采用的方法,第是一种方式,这种你要么会设计大量的标签,要么设计比较复杂灵活的标签

我这里确定不是说就用上面那个方法,否则我也不用写这么多了,下面问题的引出

如今不少项目基本都要求有app、mobile、pc一块儿开发,你若是pc用标签却是能够,那app呢,单独再弄一个接口去实现???? 写着写着你会发现,不少数据重复的在写,垃圾代码愈来愈多

那这里面最主要的东西是什么呢? 对,逻辑,每一个端都会写大量的逻辑代码,若是几个端能达到逻辑共用,又能实现上面的模板直接摘取数据多好呀

固然能够呀,就是从模板(html)直接去逻辑(model)拉去数据就能够搞定了,tpframe就是这么作的,它灵活的实现了这个功能,以下方便均可以

一、正常赋值

二、标签去取

三、直接去逻辑摘取

最后

若是一个项目在开发的过程当中,每一个端主要的东西都共用,而不用去每一个端写一套,这不就能够给大家项目节约不少的时间各成本 了么

之后若是要改动,维护,若是是每一个端一套,那你每一个端都要去改,若是共用逻辑,只需要改逻辑部分就能够

之后项目升级的时候,你也只需要写少许的代码,每一个端的功能也便实现了

同时后端只需要把文档写好,前端就能够搞定数据拉取,两边都不耽误,这即是我说的先后端分离

 

欢迎你们留言讨论,小的读过两年书,望高手赐教~

相关文章
相关标签/搜索