阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

技术发展与技术政治

  • 2013-07-09
  • 本文字数:1291 字

    阅读完需:约 4 分钟

最近,InfoQ 中文站就前端趋势大会上被人提及的 noBackend 概念进行了跟踪。这种概念提倡让前端就可以完成一个完整应用的开发,将后端完全转化成接口给隐蔽起来。

根据阿里 UED 团队王涛同学的解释:

“noBackend 并非是一种新技术或是一种新架构,而是一种新的 web 开发模式。我们经历过前后端分离的开发阶段,就是后端同学提供数据接口,让前端同学调用来实现页面逻辑,其实在这个阶段,就已经奠定了 noBackend 的架构基础……业务开发的重担会落在前端层面,而多条产品线,甚至整个公司的产品都可以共用一套后台接口服务平台。”

很多前端听说这一概念之后都感到很兴奋:如果只依靠前端就可以独立完成产品的研发,那么前端在团队中的价值无疑会大幅提升。同时,noBackend 模式对前端开发提出了更高的要求,这意味着做前端成了一个更有技术含量的工作。

在以前,前端要么附属于设计,要么附属于产品。在很多网站,前端只是把 PSD 变成 HTML 的一道工种。写 CSS 的工作,在很多后端看来,根本不是开发。

Ajax 技术到来之后,网站能做的事情更多了。随着 JavaScript 能做的事情越来越多,前端对产品的影响力也逐渐上升。可以说,JavaScript 技术的成熟度决定了前端在团队中的话语权。

虽然如此,我们还是发现,并不是所有的前端都喜欢 noBackend 这个概念。

豆瓣前端团队负责人张克军,他所站的角度不是前端的角度,而是工程的角度。

“我对所谓“noBackend“持反对意见,这种叫法很哗众取宠,个人不喜欢。

所谓“noBackend“不过想说,前端有个完整的“MVC 框架“(或类似概念框架)负责产品全部的展现逻辑和数据交换。后端只提供纯粹的数据服务。

对于规模足够大的产品来说,这种模式问题很多:

  1. 为了给搜索提供入囗,前后端最好是共用模板。这样很多 server 端成熟的模板系统就不能用了
  2. 浏览器(包括手机浏览器)的兼容问题,坑太多
  3. 把大量计算放到进浏览器里实现影响体验。手机浏览器明显不适合这样做
  4. Javascript 不安全
  5. 这不是未来。未来应该是 web components 这种基于组件的开发思路
  6. 这也不是重点。当前重点应该是利用前端技术更好解决产品使用体验跨设备、跨平台布署的问题

前端架构上应该保持简单,合理利用后端的计算能力。不会刻意追求全 JS 技术堆栈的方案。”

是站在前端的角度,还是站在项目的角度?是站在团队的角度,还是站在工程的角度?

用 @gaosboy 的话总结来说就是:从前端角度谈 noBackend 就是谈政治。站在整个网站的角度,看看开发成本最低,最合理的方式吧。

本文作者简介

杨赛(@lazycai),InfoQ 中文站编辑。到处串门的互联网信徒,相信规则的力量。

InfoQ 微信周二专栏作者招募中!邮件 editors@cn.infoq.com 了解详情!

***********************************

本文来自 InfoQ 微信公众账号:infoqchina

1、回复“今日新闻”,查看今天更新的新闻;

2、回复“今日英文”,查看今天英文站的更新;

3、回复“文章 + 关键词”,搜索关键词相关内容;

4、回复“QCon”,了解 QCon 大会相关信息;

5、回复“活动”,了解最近 InfoQ 组织的线下沙龙;

6、回复“架构师”,获取《架构师》下载地址;

7、回复“投稿”,了解投稿和加入编辑团队的流程。

***********************************

2013-07-09 02:36747

评论

发布
暂无评论
发现更多内容

读书笔记 -《数据密集型应用系统设计》-索引

KayTin

Ubuntu Server 20.04 搭建安装Kubernetes

玏佾

Kubernetes k8s文档 k8s资源 #k8s

我的学生管理系统

白开水又一杯

#架构实战营

美团年货-2020年(记录)

春秋易简

吃透这份Github点赞120k的Spring全家桶笔记Offer拿到手软

Java~~~

Java spring 架构 面试 Spring Cloud

Cron调度任务入门

devpoint

crontab 8月日更

让 KAS 给 GitOps 插上腾飞的翅膀

极狐GitLab

Kubernetes 极狐GitLabs

你最想了解的红队实战攻防技术,来了

网络安全学海

黑客 网络安全 信息安全 WEB安全 安全漏洞

微信业务架构&毕设学生管理架构选择

Sky

架构实战营

关于开发视图

编程三昧

8月日更 开发视图

Vue进阶(七十):了解 webpack 的 hash、chunkhash、contenthash

No Silver Bullet

Vue 8月日更

学习-1

4anonymous

架构实战营模块一作业-初识架构

娜酱

#架构实战营

游戏开发者的通关之旅,华为AGC for Games带来了什么?

脑极体

02. 到底什么是人工智能

数据与智能

人工智能

阿里P8整理的《百亿级并发系统设计》实战教程,实在是太香了

Java~~~

Java 架构 面试 多线程 高并发

四面字节跳动Java研发岗,最终拿下Offer,只有努力,方能成功

Java~~~

Java 架构 面试 微服务 架构师

微信业务架构图&学生管理系统设计思路

刘琦Logan

网络攻防学习笔记 Day117

穿过生命散发芬芳

网络安全 8月日更

Go- 字符串、切片和数组的使用

HelloBug

数组 字符串 Go 语言 切片

太厉害了,终于有人把TCP-IP协议整合成864页学习笔记了

Java~~~

Java 架构 面试 TCP 网络

大专的我狂刷29天“阿里内部面试笔记”最终直接斩获十七个Offer

Java~~~

Java 架构 面试 JVM 多线程

架构实战之微信业务架构|学生管理系统

Nico

架构实战营

Vue进阶(七十一):webpack 插件实现自动抽取 css 主题色样式一键切换

No Silver Bullet

Vue 8月日更 主题色

Go语言,深入了解 select 实现原理

微客鸟窝

Go 语言 8月日更

微信业务架构和学生管理系统架构设计

王家辉

架构实战打怪升级day01

yphust

学生管理系统架构设计

晓波

架构实战营

【架构实战营作业】模块一:微信业务架构图&学生管理系统

聆息

微信业务架构图&毕业设计之学生管理系统(model1)

消失的子弹

微信 架构图

我的微信业务架构图

白开水又一杯

#架构实战营

技术发展与技术政治_语言 & 开发_sai_InfoQ精选文章