我的前后分离,不是api,不是ajax,我这里只讨论html与后端结合

前话

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

话说回来,dedecms的一大好处就是会模板标签,差不多就会慢慢的做套网页了,真的就是这么简单

phper技术到底如何

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

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

话说我的面试问题很简单(当然我只针对网页),用户了这么多的框架(yii、tp、larval、ecshop、dedecms、wp),不管哪一种,如果直接在网页上拉取数据库的数据?

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

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

引出问题

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

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

现在模板的数据是不是完全受制于控制器,耦合度太高,谁都离不开谁?

.....

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

怎么去实现(个人观点)

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

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

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

现在很多项目基本都要求有app、mobile、pc一起开发,你如果pc用标签倒是可以,那app呢,单独再弄一个接口去实现???? 写着写着你会发现,很多数据重复的在写,垃圾代码越来越多

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

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

1、正常赋值

2、标签去取

3、直接去逻辑摘取

最后

如果一个项目在开发的过程中,每个端主要的东西都共用,而不用去每个端写一套,这不就可以给你们项目节约很多的时间各成本 了么

以后如果要改动,维护,如果是每个端一套,那你每个端都要去改,如果共用逻辑,只须要改逻辑部分就可以

以后项目升级的时候,你也只须要写少量的代码,每个端的功能也便实现了

同时后端只须要把文档写好,前端就可以搞定数据拉取,两边都不耽误,这便是我说的前后端分离

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

教你如何前后端完全分离(非api、ajax)的更多相关文章

  1. 基于Spring Boot架构的前后端完全分离项目API路径问题

    最近的一个项目采用前后端完全分离的架构,前端组件:vue + vue-router + vuex + element-ui + axios,后端组件:Spring Boot + MyBatis.之所以 ...

  2. dotnet core webapi +vue 搭建前后端完全分离web架构

    架构 服务端采用 dotnet core  webapi 前端采用: Vue + router +elementUI+axios 问题 使用前后端完全分离的架构,首先遇到的问题肯定是跨域访问.前后端可 ...

  3. dotnet core webapi +vue 搭建前后端完全分离web架构(一)

    架构 服务端采用 dotnet core  webapi 前端采用: Vue + router +elementUI+axios 问题 使用前后端完全分离的架构,首先遇到的问题肯定是跨域访问.前后端可 ...

  4. 前后端完全分离开发模式Tomcat跨域问题处理

    公司新项目实现方案采用前后端完全分离架构,后端采用spring boot框架,前端纯HTML5开发部署会采用同一台服务器,但是在实现过程中分工开发出现ajax请求跨域问题故为解决开发问题发现如下解决方 ...

  5. 前后端分离后台api接口框架探索

    前言 很久没写文章了,今天有时间,把自己一直以来想说的,写出来,算是一种总结吧!  这篇文章主要说前后端分离模式下(也包括app开发),自己对后台框架和与前端交互的一些理解和看法.     前后端分离 ...

  6. 前后端分离后API交互如何保证数据安全性

    前后端分离后API交互如何保证数据安全性? 一.前言 前后端分离的开发方式,我们以接口为标准来进行推动,定义好接口,各自开发自己的功能,最后进行联调整合.无论是开发原生的APP还是webapp还是PC ...

  7. 如何处理好前后端分离的 API 问题(转载自知乎)

    9 个月前 API 都搞不好,还怎么当程序员?如果 API 设计只是后台的活,为什么还需要前端工程师. 作为一个程序员,我讨厌那些没有文档的库.我们就好像在操纵一个黑盒一样,预期不了它的正常行为是什么 ...

  8. 前后端分离&接口API设计学习报告

    接口API设计学习报告 15331023 陈康怡 什么是API? API即Application Programming Interface.API是一种通道,负责一个程序与另一个程序的沟通.而对于w ...

  9. 前后端分离后API交互如何保证数据安全性?

    一.前言 前后端分离的开发方式,我们以接口为标准来进行推动,定义好接口,各自开发自己的功能,最后进行联调整合.无论是开发原生的APP还是webapp还是PC端的软件,只要是前后端分离的模式,就避免不了 ...

随机推荐

  1. 洛谷P3381 - 【模板】最小费用最大流

    原题链接 题意简述 模板题啦~ 题解 每次都以费用作为边权求一下最短路,然后沿着最短路增广. Code //[模板]最小费用最大流 #include <cstdio> #include & ...

  2. 2015最新iOS学习线路图

    iOS是由苹果公司开发的移动操作系统,以xcode为主要开发工具,具有简单易用的界面.令人惊叹的功能,以及超强的稳定性,已经成为iPhone.iPad 和iPod touch 的强大基础:iOS 内置 ...

  3. Web渗透测试(sql注入 access,mssql,mysql,oracle,)

    Access数据库注入: access数据库由微软发布的关系型数据库(小型的),安全性差. access数据库后缀名位*.mdb, asp中连接字符串应用-- "Driver={micros ...

  4. sizeof计算空间大小的总结

    sizeof,看起来还真不简单,总结起来还是一大堆的东西,不过这是笔试面试中出现比较频繁的,我也是考过才觉得很重要,有些规则如果不注意,还真是拿到一道题目摸不着头脑,所有总结一下,方面忘记的时候瞄一瞄 ...

  5. 关于Maven的web项目的创建

    网上关于Maven的web项目创建多种多样,先本人在研究Maven之余,创建一套自己试过并有效的创建步骤. 1.点击右键>选择Maven Project,如下图所示: 2.点击创建,如下图所示: ...

  6. 【html5】html学习笔记1

    html5语法规则 1.标签要小写 2.省略标签 如 <tr> <td> <tr><td> 3.属性不加” 如 <div  id=div1> ...

  7. 芝麻软件: Python爬虫进阶之爬虫框架概述

    综述 爬虫入门之后,我们有两条路可以走. 一个是继续深入学习,以及关于设计模式的一些知识,强化Python相关知识,自己动手造轮子,继续为自己的爬虫增加分布式,多线程等功能扩展.另一条路便是学习一些优 ...

  8. Django学习-10-命名空间

    不使用命名空间,且两个APP某条url使用相同的name属性   app01_urls.py urlpatterns = [ url(r'aaa/$', views.app01_aaa, name=& ...

  9. 深度优先搜索DFS和广度优先搜索BFS简单解析(新手向)

    深度优先搜索DFS和广度优先搜索BFS简单解析 与树的遍历类似,图的遍历要求从某一点出发,每个点仅被访问一次,这个过程就是图的遍历.图的遍历常用的有深度优先搜索和广度优先搜索,这两者对于有向图和无向图 ...

  10. PortableApps使用入门

    PortableApps使用入门 Software 介绍 添加软件 绿软下载站推荐 介绍 官网:http://portableapps.com/ PortableApps作为一款卓越的绿软管理软件,它 ...