前端想要进化,就必须要摆脱浏览器这个枷锁。

237 天前
 tool2dx

前端大部分主流框架的设计理念,一开始就和浏览器这个运行环境牢牢绑定。可惜好时代已经过去了。现在并不是一个炫酷网页或者几个 APP 页面,就能吃饱穿暖的年代。

面对客户繁琐定制化需求,代码高度复杂化,已经远超前端的承受能力。

隔壁传统语言,在对应巨大代码库的时候,都会有严格的单元测试,比如 google test ,有细粒度的筛选,能一定程度保证代码量膨胀同时,质量没那么糟糕。

但是前端一部分逻辑在后端,另外一部分逻辑在界面的动态交互上。写自动化测试难度就上去了,要背上浏览器这个沉重的壳。

理想状态下,前端代码要完美做到功能随写随测随改,还是有一定门槛难度的。

可能传统前端的诞生初衷,就不是为了承接那么多的需求。

14404 次点击
所在节点    前端开发
117 条回复
tool2dx
237 天前
@Chrisssss "你能说出几个因为浏览器承载力不足导致要转平台的例子吗?"

浏览器是个平台,承载力不单指技术上,由于前端产品过剩,早晚和 APP 一样,会有一大批劣质前端产品被市场淘汰。

能留下来的产品,只能把功能卷到极致。不断叠加新需求后,就很容易触及技术上限。
cmlx1014
237 天前
@hazardous 浏览器就是客户端啊
oliveira
237 天前
我不是很理解为什么你的认知还停留在前端=浏览器端?

现阶段基于夸端技术和 Nodejs 的逐步完善,JS 代码运行在包括但不限于浏览器端、IOS/Android 端( React Native/Flutter )、Windows/MacOS 端( Electron/Tarui )和服务器端( Nodejs )等等,不仅如此还衍生出小程序和 Hybrid 这种夸端架构。

理论上前端包含所有跟人进行交互的界面和程序。
pinecone1
237 天前
浏览器是前端的亲爹,就是因为浏览器在几乎所有端设备上的广泛覆盖,才让前端产品易于触达和分发。
脱离浏览器就是没了命,不可能的。
确实浏览器里很多内容都是黑盒的,不暴露给 JS Context ,但是你只能受着。你可以选择加入 Chrome 团队,定 w3c 标准规范,要求浏览器标准化更多能力并对 JS 开放。
QlanQ
237 天前
@tool2dx #20 代码复不复杂 和浏览器有什么关系呀,浏览器只是很多系统权限没有,你吐槽的方向好奇怪
@clue #29 所以 vscode 算 OP 说的前端项目吗?
ZGame
237 天前
我觉得反而是浏览器相关的前端成就客户端。正因为浏览器里的 html+css+js 这些是公开的,各大厂商互相牵制,定制标准,才成就前端世界的百花齐放,复杂度这种东西是客观存在的,只能是分解或者转变思路。像前端 mvc,mvp,mvvm ui=fn(state) 思路的变化和组合。
我觉得真的劣化的反而是被单一大厂生态所控制的。flutter,swift,这些。。。。
tool2dx
237 天前
@QlanQ "所以 vscode 算 OP 说的前端项目吗?"

vscode 只是大厂在推,代码也没想象中那么美好。每个模块都有 browse 目录,里面代码也是随手就写 div 。div 离开浏览器环境后,完全无法复用代码。

ts 可以复用,div 不行。
wolfan
237 天前
OP 同志,当你看到一个个的网站变成一个一个的应用程序的时候,你会发现你 TMD 的怀念浏览器的存在。
crysislinux
237 天前
扯什么犊子呢,前端你要想处处都单测也完全可以,之所以测试少是因为界面变的快。

跑集成测试加个浏览器有啥沉重的,后端还得初始化数据呢
tool2dx
237 天前
@wolfan 浏览器只是对用户友好。

当开发者想把前端应用,做到和本地应用完全相同的复杂级别,可能需要付出双倍努力。

你看 adobe 推出的在线 photoshop ,都是残缺版本。和本地应用比还是有很大差距的。
aikilan
237 天前
当一个产品的需求越来越复杂,需要依赖的第三方库越来越多,你最后不过是重新发明了浏览器。客户还会质疑你这为什么还不如谁谁谁家的网页版好用,你试图用技术说服他,他觉得你话真多,我只是想要一个好用的产品,你跟我谈技术实现有什么用?
aikilan
237 天前
还是那句话,技术是手段,而不是目的。
wolfan
237 天前
@tool2dx 你一个铁匠居然不是想着把锄头卖给农民而是卖牧民,你觉得你这打铁铺是不是很神奇。
x86
237 天前
前端圈整活手段还挺多,线上都满足不了他们了
dayeye2006199
237 天前
那是因为你不会写 wasm ,webGL 之类的东西。人家也是做前端的
clue
237 天前
Java 想要进化, 就必须要摆脱 jdk 这个枷锁

浏览器(web 标准) 之于 前端, 就像 jdk 之于 java

我感觉这个话题没什么讨论的意义了
LandCruiser
237 天前
说白了,你想要银弹,但是不管是职业生涯,还是技术方案,都没有银弹。此贴终结~
43n5Z6GyW39943pj
237 天前
你所谓的大项目,载体是什么?
Guidoo
237 天前
op 15 天内注册
Rever4433
237 天前
我倒是觉得前端只有浏览器还是太小,应该扩大浏览器的能力,可以集成个虚幻引擎什么的,在浏览器就能玩 3A 。其次手机浏览器也应该进化一下,把所有的 App 全部杀死,只用浏览器解决全部问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1033484

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX