前端技术已经卷到自己写 CSS 解析器了。

2021-12-22 09:44:32 +08:00
 3dwelcome
字节大佬的分享视频,完全是按照游戏的方式,去自渲染 HTML 和自定义的 CSS 子集。

也就是说,他们用的 Flutter 渲染底层,并没有支持传统的 HTML+CSS+JS 的开发方式,但是他们自己硬塞了一个解析模块和 JS 运行时进去。

可能大家不知道,Flutter 自带的 Flex ,和 DIV 的 Flex 不一样,很多布局都不支持,他们自己按照 W3C ,写 CSS 解析,进行 CSS 覆盖测试,基本能到 95%通过率。

大佬最后说,不能再做下去了,要不然就真的变成开发浏览器了。



https://www.bilibili.com/video/BV1xa411k77h
8431 次点击
所在节点    前端开发
56 条回复
salmon5
2021-12-22 18:50:19 +08:00
@maplelin #37 ,都是华而不实吹牛逼的东西,反正也没人 care 品质;这种现象太多了
secondwtq
2021-12-22 18:58:22 +08:00
这个主题最大的问题不在“开发浏览器”那块,是在于标题 ... 这个不仅仅是个解析器的问题 ... 解析器只是第一步,最 tricky 的应该是布局引擎那块。JS 引擎应该是现成的。
horizon
2021-12-22 19:37:03 +08:00
@maplelin 国内做的最多的还是对技术的包装,而不是创新。
Geo200
2021-12-22 19:53:41 +08:00
怕不是 KPI 产物吧,等过一两年看项目还能不能活着再说
musi
2021-12-22 20:08:47 +08:00
css 95%的通过率,牛逼吗?
至少比我牛逼
但是 css 100%的通过率就能做出来一个浏览器吗?
melvin
2021-12-22 20:13:42 +08:00
不就做了一层包装,封装了一个皮,有什么可值得炫耀的,让他写个 js 引擎试试
wktrf
2021-12-22 21:07:19 +08:00
第一时间想起微信小程序
mmmfj
2021-12-23 01:29:46 +08:00
天天吹牛逼,也不见技术比国外强多少,踏实做事吧,已经是网红圈子了
WenhaoWu
2021-12-23 04:35:07 +08:00
还好吧,跟我公司用 dart 写一套 dsl 有异曲同工之妙
undefine2020
2021-12-23 09:00:42 +08:00
为什么国内大厂吹起技术跟老母猪带奶罩一样,一套接一套, 但是, 就是没有几个享誉全球的?
murmur
2021-12-23 09:23:12 +08:00
@maplelin 就是起步晚了,开源社区实在太成熟了,成熟到你挑不出一点毛病,就 cordova 这种你们说死透的东西还有维护,而且还后继有人
2i2Re2PLMaDnghL
2021-12-23 09:34:13 +08:00
@maplelin 就『内卷』这个词的词源,印度尼西亚的单亩农产量难道赶超了欧美?
内卷就是赶超无望后发生的事情。
Biwood
2021-12-23 15:58:02 +08:00
@maplelin
你应该说“正因为卷,所以没法超赶别人”,“内卷”英文词语是 involution ,也就是 evolution (进化) 的反义词:退化
gearkey
2021-12-28 09:25:13 +08:00
啊这。。还是赶紧工人自治吧:github/gearkey/bluebook
qe9999
2022-01-14 20:39:21 +08:00
解析 CSS 成 AST (有很多现成工具做,比如著名的 PostCSS ) -> 遍历 AST ,生成 Dart 的对应样式 widget 代码。

仔细看看你也行,并没有涉及底层图形实现,不要太惊慌。但我非常好奇的是这种纯浪漫的项目为什么在字节也能够被支持,有啥落地场景吗?
mostkia
2022-02-25 23:24:13 +08:00
自产自销还在使用 jquery 和原生 js 一把梭的表示不能理解,开发速度不依旧是老样子吗?前端造了那么多年的轮子,几年一换的技术,实际生产力也没见提高多少,以前一天几张页面,现在依旧没快多少,真心想不通为什么要卷成这样,而且我看现在的大部分的站点原代码也依旧停留在 jquery 阶段,不知道现在会 vue 全家桶、less 、nodejs 之类的那么多程序员都是给谁在写代码。。

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

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

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

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

© 2021 V2EX