写点什么

技术发展与技术政治

  • 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:361000

评论

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

软件测试 | App控件定位

测吧(北京)科技有限公司

测试

应用交付可视化助力金融科技企业应用服务质量及效率提升

智维数据

数据可视化 智能运维 应用交付 流量分析系统

3dmax的常用功能和使用方法

Finovy Cloud

3D渲染 3DMAX

中国人寿业务稳定性保障:“1+1+N” 落地生产全链路压测

TakinTalks稳定性社区

软件测试 | 元素定位方式与隐式等待

测吧(北京)科技有限公司

测试

Tapdata Connector 实用指南:数据入仓场景之数据实时同步到 BigQuery

tapdata

ChatGPT 最好的替代品

图灵教育

机器学习 BERT ChatGPT

软件测试 | 高级定位技巧

测吧(北京)科技有限公司

测试

软件测试 | 控制特殊Toast识别

测吧(北京)科技有限公司

测试

ChatGPT 最好的替代品

图灵社区

机器学习 Transformer BERT ChatGPT

软件测试 | App常见Bug解析

测吧(北京)科技有限公司

测试

4道数学题,求解极狐GitLab CI 流水线|第2&3题:父子流水线 + 多项目流水线

极狐GitLab

ci DevOps pipeline 极狐GitLab 流水线

袋鼠云产品功能更新报告04期丨2023年首次,产品升级“狂飙”

袋鼠云数栈

实现“无感知”的网络运维,新华社融媒体流量分析平台的创新之路

智维数据

大数据 防火墙 数据可视化 智能运维 运维安全

软件测试 | App控件交互

测吧(北京)科技有限公司

测试

软件测试 | 触屏操作测试自动化

测吧(北京)科技有限公司

测试

软件测试 | 显示等待机制

测吧(北京)科技有限公司

测试

软件测试 | adb命令的组成

测吧(北京)科技有限公司

测试

UI 自动化中的分层设计

霍格沃兹测试开发学社

避坑指南|监控宝网站监控的常见问题及解决方法

云智慧AIOps社区

监控 告警 监控宝 监控告警 监控指标

软件测试 | Capability使用进阶

测吧(北京)科技有限公司

测试

软件测试 | 参数化测试用例的使用

测吧(北京)科技有限公司

测试

分享7个刺激的老司机网站,别轻易点开

引迈信息

程序员 面试 前端 摸鱼

软件测试 | 属性获取与断言

测吧(北京)科技有限公司

测试

实力见“证”:Tapdata 技术创新与发展潜力广受认可

tapdata

一卡通|多云流量监控支撑To C+To B,双向高效运维

智维数据

大数据 数据可视化 智能运维 运维安全

行业分析| 智能无人自助设备

anyRTC开发者

人工智能 音视频 智能无人自助设备 自动售货机 无人超市

怎么编写接口测试用例?

Liam

测试用例 如何编写测试 测试用例设计

软件测试 | 录制Appium测试用例

测吧(北京)科技有限公司

测试

应用交付可视化助力互联网行业提升办公网效率与满意度

智维数据

数据可视化 智能运维 应用交付 运维安全 流量分析系统

软件测试 | Appium架构介绍与环境配置

测吧(北京)科技有限公司

测试

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