如果你在写服务端 (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. VeloView源码编译错误记录——VS manifest

    编译环境 Win7 Visual Studio 2008 Win32 VeloView依赖关系 1)底层 Python Qt pcap boost eigen 2)中层 liblas: boost P ...

  2. 关于apidoc文档生成不了的一个原因

    前几天在写完API后,写注释文档,然后很习惯的去用apidoc取生成注释文档,但是奇怪的事发生了,没有注释的内容,也没有报错:注释代码如下: /* * @api {get} /applet/:id 根 ...

  3. spring boot 错误,求大神帮解决

    Exception in thread "main" java.lang.IllegalStateException: Failed to read Class-Path attr ...

  4. CentOS下redis集群安装

    环境: 一台CentOS虚拟机上部署六个节点,创建3个master,3个slave节点 1.下载并解压 cd /root wget http://download.redis.io/releases/ ...

  5. Android 异步消息处理机制终结篇 :深入理解 Looper、Handler、Message、MessageQueue四者关系

    版权声明:本文出自汪磊的博客,转载请务必注明出处. 一.概述 我们知道更新UI操作我们需要在UI线程中操作,如果在子线程中更新UI会发生异常可能导致崩溃,但是在UI线程中进行耗时操作又会导致ANR,这 ...

  6. P1040 加分二叉树

    转自:(http://www.cnblogs.com/geek-007/p/7197439.html) 经典例题:加分二叉树(Luogu 1040) 设一个 n 个节点的二叉树 tree 的中序遍历为 ...

  7. O(N^2)最长上升子序列

    //最长上升子序列o(N^2)可以不连续的子序列, //状态为maxlen[i]表示以a[i]为终点最大上升子序列长度 #include<iostream> #include<cst ...

  8. sublime text 3 ctrl+b浏览器启动html

    sublime text 2 和3 都可以快速设置浏览器启动,本人在这里介绍如何不下插件启动浏览器.第一步:打开Tool-->build system  ---> new build sy ...

  9. git以及github的初级入门(一)

    本身学习git的操作是没什么兴趣的,毕竟原本是win平台学的java开发,git下那么多复制的命令行操作确实比较让人头疼,直到昨天我打开计算机的时候,我放置项目的E盘,以及F盘,G盘盘符都不见了!!我 ...

  10. archsummit2017见闻和思考

    前几天参加了archsummit的北京站.2天的日程安排的十分紧凑,大多数时间同时有多场专题分享,选择想要听的专题就成了首要的事情,按照感兴趣的,可能用到的,启发思考的原则选择了几场适合自己的专题,这 ...