最近看到前端趋势2013大会上的一篇文章,题目是《各位快看,不用后端》,觉得有点意思,恰好近期的一次讨论及半年前的一次开发实践也涉及到这种模式,简单谈谈我的想法。

不得不说,文章的题目确实很吸引眼球,开发应用可以不用后端了?前端同学完全自己搞定?那服务器、数据库、服务接口神马的怎么办?

说到这,大家可能会想到开放平台,开放平台不就是这种的架构模式吗?服务器、底层数据、OpenAPI大公司都给你提供了,前端同学完全可以通过JS来操作各种数据,把注意力集中在显示层上,独自完成一个应用的开发。

纵观国内的开放平台可以分为两大类:

一种是业务接口开放平台,比如1688开放平台,目的是为了让开发者围绕其业务生态圈创建自己的应用,它只提供业务型OpenAPI,开发者还是需要搭建自己的服务器,甚至是数据库等,算不上noBackend。

另一种是玩“云”概念的开放平台,比如GAE、BAE、阿里云等,他们提供的是服务器和存储(数据库),OpenAPI也有,但通常是比较底层的和业务无关的通用型接口,如存储,消息通信等,真正的业务接口还是需要用后台语言开发,也算不上是文章所谓的noBackEnd。

而国外目前有另外一种类型的开放平台,可以说是为移动应用而生的 (PC站点也能支持),它真正的做到了noBackEnd。 我之前曾折腾过一个移动小应用,偶然接触了Titanium Cloud Services,真是感觉相见恨晚,佩服至极。。。服务器、数据库就不必说了,对开发者完全透明。而他的亮点在于OpenAPI,不像国内的那种纯底层接口,而是暴露给应用一些更偏向业务层面的通用API,比如用户注册API、好友关系API、json格式的KV存储API、文件处理API等等。这些通用接口组合起来,解决80%应用的后端逻辑是不成问题的。

有了这样的开放平台,应用开发时就可以完全通过js来完成各类业务逻辑,而无需进行任何的后台开发和配置工作,对开发应用的前端同学而言,这听起来貌似不错。类似这样的平台国外还有几个,比如 Firebase, ParseBackendless。而国内的我尚未发现,但我觉得这种开放平台应该会很有市场,谁用过谁知道。。。 对一些大公司而言这是不是一个机会呢?

noBackEnd的开发模式其实对前端同学提出了更高的开发能力要求,当后端的模板层完全撤去,只剩下纯净的数据接口时,意味着js将负责更多的业务逻辑处理,代码的组织架构需要有更好的设计。责任大了,压力也自然不会小,据闻腾讯盛行这种开发模式,而其配有500+的前端开发队伍,也就完全可以理解了。

不管你信不信,我是相信noBackEnd的趋势的,应用致胜的关键是idea及用户体验,后台的服务功能是趋同并可抽象的,也因此有了新型开放平台的存在,让我们不必再重复开发后台逻辑;而显示层的设计是无法趋同的,对体验的追求不会有极致,更多的精力和开发将会投入其中。

转自 http://www.cg3.net/post/2013-06-26/40051693447

“无后端”的web应用开发模式的更多相关文章

  1. [前端开发] 未来趋势“无后端”的web应用开发模式

    最近看到前端趋势2013大会上的一篇文章,题目是<各位快看,不用后端>,觉得有点意思,恰好近期的一次讨论及半年前的一次开发实践也涉及到这种模式,简单谈谈我的想法. 不得不说,文章的题目确实 ...

  2. ASP.NET Web Froms开发模式中实现程序集的延迟加载

    延迟加载是一个很大的诱惑,可以达到一些比较好的效果,比如: 1.在实体框架中,由于关联数据的数量和使用时机是不确定的,通过延迟加载,仅在使用的时候去执行关联数据的查询操作,减少无谓的数据查询操作,可以 ...

  3. Java web MVC开发模式入门感悟

    当我进行第一个完整的java web项目的开发时,对以前所学的Java web知识体系有了一个清晰的进阶认识.我觉得非常有必要对此进行必要的总结. MVC,意指model(数据持久层)+viewer( ...

  4. asp.net简述Web Forms开发模式

    详情请查阅:http://www.runoob.com/aspnet/aspnet-intro.html 1.Web Forms 是三种创建 ASP.NET 网站和 Web 应用程序的编程模式中的一种 ...

  5. Java开发web的几种开发模式

    Java Web开发方案有多种可供选择,这里列举一些经典的开发模式进行横向比较,为Java Web的开发模式选择提供参考.除此之外还有好多方案(如Tapestry和Wicket等等)并不了解,这里就不 ...

  6. java web几种开发模式(转)

    Java Web开发方案有多种可供选择,这里列举一些经典的开发模式进行横向比较,为Java Web的开发模式选择提供参考.除此之外还有好多方案(如Tapestry和Wicket)并不了解,这里就不列举 ...

  7. Web前端开发工程师养成计划【转载】

    Web前端开发工程师养成计划(入门篇) 最原始的忠告:这个世界上有想法的人很多,但是有想法又能实现它的人太少! 首先要感谢伟大的Web2.0概念.产品概念.用户体验概念.jQuery插件,是它们在中国 ...

  8. web前端开发浅析

    原文地址:http://www.cnblogs.com/babyzone2004/articles/1807381.html 摘 要:前端开发作为一项新的领域,经历的时间随然较短,却显示了强大的生命里 ...

  9. java经典开发模式

    Java Web开发方案有多种可供选择,这里列举一些经典的开发模式进行横向比较,为Java Web的开发模式选择提供参考.除此之外还有好多方案(如Tapestry和Wicket等等)并不了解,这里就不 ...

随机推荐

  1. numpy linspace arange函数

    linspace(start, end, num_of_points), 区间 [start, end],产生一个等差数列,差为:(end-start)/(num_of_point-1). arang ...

  2. 删除临时表空间ora-25152错误

    删除临时表空间,或者收缩临时表空间经常会出现表空间占用等情况. 下面我们就对这种情况进行处理, 首先查找被锁的sid: SELECT a.INST_ID,b.TABLESPACE , b.segfil ...

  3. 参数错误导致bug

    1.网站参数与数据库参数名字不一致(大小写). 2.参数漏掉一个字母(characterno写成了charaterno).

  4. War(最短路+最大流)

    War http://acm.hdu.edu.cn/showproblem.php?pid=3599 Time Limit: 2000/1000 MS (Java/Others)    Memory ...

  5. 【校招面试 之 C/C++】第8题 C++中的静态绑定与动态绑定

    转自:https://blog.csdn.net/chgaowei/article/details/6427731   做了部分修改 为了支持c++的多态性,才用了动态绑定和静态绑定.理解他们的区别有 ...

  6. mysql经典案例分析

    问题: create table A ( id varchar(64) primary key, ver int, ...)在id,ver上有联合索引,10000条数据为什么select id fro ...

  7. 转 git push 提示 Everything up-to-date

    git 还没有分支,需要指定一个($ git remote -v),就可以push了 第一步:$ git remote -v 第二步:$ git branch 转载链接: http://blog.cs ...

  8. vs不同

    写了很多却错误关闭,无语,直接上内容,因为在公司年限长和德国.波兰.英国公司都有合作,而且他们的开发工具各不相同,因此我电脑上有Visual Studio 2008,Visual Studio 201 ...

  9. Debian 利用 iso 镜像完全离线更新 apt-cdrom

    1 目的 在日常的 linux 服务器管理中,出于某些考虑,服务器要求与 Internet 完全隔离. 这使得我们对系统的更新和软件包的升级感到无比头疼. 下面介绍的这种方法,采用 ISO 文件,进行 ...

  10. Git 初始状操作指引

    You have an empty repository To get started you will need to run these commands in your terminal. Ne ...