如果你在写服务端 (PHP) ,会因为项目须求(做app、pc、mobiel、微信) 而写几套代码的,你不觉得很累吗? 现在的很多开源框架商用版本在做程序方面都是这么一套一套的,维护起来,二开起来特别的蛋疼呀,所以本人就有了一想法,如果各端能写一套,或某些代码一套就会少写很多代码了

好久没有上cnblogs了,也是因为自己最近的时间忙于其它事情,也在为上面说的问题大费心思,最后决定弄一个开发方快速、维护方便、扩展灵活、可组件式开发、代码复用高、耦合低的这么一个系统tpframe,这是一个用thinkphp 5.o基础上开发的管理系统,刚开始选择框架,在yii、laravel、thinkphp之间不好说哪个好与不好,但最后选择thinkphp的原因是他用起最简单,上手很快,别说它好与不好,能快速入手的,肯定是大家认可的,加上它的用户量,所以最后就选择它了,tpframe已应用于一些项目,项目结构基本完善,百分百开源,希望你能喜欢(我又不是人民币~)... 下面我就大体说一下是怎么减少我们很代码工作量的,具体它有什么好处,谁用谁知道,点击去tpframe官网看年

APP端

对于app端我们写的更多的就是后台数据管理,然后就是api接口,估计也没再多其它的了

H5:

如果你们做的是前、后端分享的形式,那跟app端差不多,写后台跟接口,又或者你直接套代码的形式

微信:

这个跟h5一样,多的就是一些微信二开的东西,比如微信登录,微信分享,微信推送等等之类的

PC:

现在pc端也有很多做前后端分享的,当然这样服务器又得写api,个人觉得直接套代码也很快(OK)了,这个项目负责人或客户怎么想了

结论:

不管你写哪一端,感觉只写api就可以了,哈哈~~,说起是这样的,PHPer写一api,全套都用上了,so easy!再也不用写那么多代码了。哈哈。。。。。。。 我笑了,理想是完美的,现实是苦B的。为了以后扩展,维护,老实分开写才是上上策

有人想,分开写不就写几套了吗,是的,这里的分开仅仅是数据处理分开写,数据库的一些操作我们就可以共用了呀,更确切的说,数据库的增、删、改、查,以及数据处理逻辑这些可以共用,但这也是我们写得比较多的,那其它的数据处理为什么要分开呢? 因为不同的端可能返回的数据格式不一样,APP端我们返回的通常就是json格式,而Pc我们不仅要赋值模板,还要渲染视图操作。

系统数据分层:

logic :数据处理层,也可以说是数据库的粒子操作

service:引用logic层的操作,进行数据后期处理,判断之类的,像一个操作可以会跨多个logic操作的时候,写在service就显得很有必须

controller:数据转发与响应操作

validate:数据验证层

model:模型层

view:视图层

然后:我们可以把逻辑放在公共(Common)模块里面,然后每个模块都可以共用这个模块的逻辑,分别调用数据后进行相应的处理。

最后:不建议把后台逻辑放公共模块里面,后台应该是独立出来的一块。

再啰嗦:项目有待大家考验,一直完善中,觉得不错的,多帮忙推荐给其它程序员,动动鼠标不算强奸,哈哈~~~

发现问题,欢迎大胆吐槽,沙发位等你...

推荐:让你快速搞定各服务端(api,pc,mobile,wechat)代码的更多相关文章

  1. 服务端API 工作经验(没有工作的是体会不到的)

    1.慢慢了解以下内容 [{xx:xxx,xx:xxx},{xx:xxx,xx:xxx},{xx:xxx,xx:xxx},]-- 数据 data 服务端API 状态代码(01代表成功) message ...

  2. 为什么说要搞定微服务架构,先搞定RPC框架?

    今天开始聊一些微服务的实践,第一块,RPC框架的原理及实践,为什么说要搞定微服务架构,先搞定RPC框架呢? 一.需求缘起 服务化的一个好处就是,不限定服务的提供方使用什么技术选型,能够实现大公司跨团队 ...

  3. 手把手教你制作微信小程序,开源、免费、快速搞定

    最近做了个"罗孚传车"的小程序 一时兴起,做了一个小程序,将个人收集的同汽车相关的行业资讯和学习资料,分享到小程序中,既作为历史资料保存,又提供给更多的人学习和了解,还能装一下:) ...

  4. 【58沈剑架构系列】为什么说要搞定微服务架构,先搞定RPC框架?

    第一章聊了[“为什么要进行服务化,服务化究竟解决什么问题”] 第二章聊了[“微服务的服务粒度选型”] 今天开始聊一些微服务的实践,第一块,RPC框架的原理及实践,为什么说要搞定微服务架构,先搞定RPC ...

  5. 为什么说要搞定微服务架构,先搞定RPC框架

    今天开始聊一些微服务的实践,第一块,RPC框架的原理及实践,为什么说要搞定微服务架构,先搞定RPC框架呢? 一.需求缘起 服务化的一个好处就是,不限定服务的提供方使用什么技术选型,能够实现大公司跨团队 ...

  6. 快速理解高性能HTTP服务端的负载均衡技术原理(转)

    1.前言 在一个典型的高并发.大用户量的Web互联网系统的架构设计中,对HTTP集群的负载均衡设计是作为高性能系统优化环节中必不可少的方案.HTTP负载均衡的本质上是将Web用户流量进行均衡减压,因此 ...

  7. C#开发BIMFACE系列4 服务端API之源上传文件

    在注册成为BIMFACE的应用开发者后,要能在浏览器里浏览你的模型或者获取你模型内的BIM数据, 首先需要把你的模型文件上传到BIMFACE.根据不同场景,BIMFACE提供了丰富的文件相关的接口. ...

  8. C#开发BIMFACE系列43 服务端API之图纸拆分

    BIMFACE二次开发系列目录     [已更新最新开发文章,点击查看详细] 在上一篇博客<C#开发BIMFACE系列42 服务端API之图纸对比>的最后留了一个问题,在常规业务场景下,一 ...

  9. C#开发BIMFACE系列46 服务端API之离线数据包下载及结构详解

    BIMFACE二次开发系列目录     [已更新最新开发文章,点击查看详细] 在前一篇博客<C#开发BIMFACE系列45 服务端API之创建离线数据包>中通过调用接口成功的创建一个离线数 ...

随机推荐

  1. Python 学习之路2

    这是我在大学上机实验的作业 实验一 将一个正整数分解质因数.例如:输入90,打印出90=2*3*3*5. 首先,先谈下我的设计思路: 设计思路: 1.    先需判断输入的number是不是一个数字( ...

  2. lua luaconf解读

    定义了一些跟平台相关的宏,明确指出一些不推荐使用的函数,如lua_cpcall.lua_strlen

  3. OC面向对象的三大特性

    一.面向对象的三大特性:封装(成员变量).继承和多态 1. set方法和get方法 1. set方法和get方法的使用场合 @public的成员可以被随意赋值,应该使用set方法和get方法来管理成员 ...

  4. 2017计算机学科夏令营上机考试-A判决素数个数

    A:判决素数个数 总时间限制:  1000ms 内存限制:  65536kB 描述 输入两个整数X和Y,输出两者之间的素数个数(包括X和Y). 输入 两个整数X和Y(1 <= X,Y <= ...

  5. 将百度的ECharts整合到阿里的Weex中。

    由于公司的业务,之前PC版产品中,大量的使用了百度的ECharts库.所以现在要做移动端,在大概熟悉了Weex基本语法和搭建环境后,就着手研究如何将这两个好东西糅合起来. 首先,按照Weex官方教程, ...

  6. js学习笔记<拷贝传值,引用传址和匿名函数>

    拷贝传值:把一个变量的值拷贝一份,传给了另外一个变量拷贝传值中,两个变量之间没有任何联系,修改其中一个一个变量的值,原来的变量不变. 例: var arr1 = ["张三",24, ...

  7. Process Doppelgänging

    Process Doppelgänging -- 新的代码注入技术,通杀windows系统的所有版本,并且能绕过绝大多数的安全软件. 介绍 今天(2017-12-07),在伦敦举行的2017年黑帽欧洲 ...

  8. codeforces 630C - Lucky Numbers 递推思路

    630C - Lucky Numbers 题目大意: 给定数字位数,且这个数字只能由7和8组成,问有多少种组合的可能性 思路: 假设为1位,只有7和8:两位的时候,除了77,78,87,88之外还哇哦 ...

  9. php面向对象(OOP)编程完全教程(转载笔记,有兴趣可以看看))

    http://www.cnblogs.com/xiaochaohuashengmi/archive/2010/09/10/1823042.html

  10. 雅虎WEB前端网站优化 -- 34条军规

    雅虎给出了优化网站加载速度的34条法则(包括Yslow规则22条) 详细说明,下载转发 ponytail 的译文(来自帕兰映像). 1.Minimize HTTP Requests 减少HTTP请求 ...