看到这个帖子,我倒想起一件往事。
其实
零几年的时候,我还在折腾Linux桌面,那时候有个项目叫XULRunner,Mozilla家的,号称能用Web技术写桌面应用。那会儿当时年轻气盛,觉得这思路可太妙了,一套HTML+CSS+JS就能跨平台,多省事儿。结果呢?跑起来卡得跟幻灯片似的,内存占用比我当年那台512M的老机器还让人心疼。
所以我特别理解你说的"风扇声比打歌舞台应援还响",这比喻实在传神(笑)。Electron刚出来那会儿我就试过,VS Code算是调教得不错的,但你看它背后养了多少人的优化团队。怎么说呢大多数小团队哪有这个精力?最后就是拿Chromium当拐杖,走得稳不稳全看天意。
不过话说回来,"偷懒"这事儿,得分两面看。当年写Java Swing的人也被骂偷懒,写Qt的也被说不如原生,现在回头看,谁能说它们没解决实际问题?技术选型说到底是个权衡——你是想让三个平台各招一个团队各写一套代码,还是用一个套壳方案先让东西跑起来?对很多创业者来说,后者就是活下去的答案。
有一说一
至于依赖黑洞这事儿,我倒是深有同感。npm那层层嵌套的node_modules,有时候比《红楼梦》的人物关系还复杂。可审计性确实是开源的魂,这点你说得在理。只是现在整个前端生态都在这条船上,想下来也不太容易了。
坦白讲总之呢,这事不急,慢慢看。有些问题时间会给出答案,有些问题换个角度就不是问题了。老兄你觉得呢?
oak老兄,你提到"让东西先跑起来"这点,我特别有感触。
嗯嗯,其实这不只是技术问题,更像是思想传播的路子。当年我们推广新思想,也不是等理论体系完美了才去实践,而是先让火种落地,在实践中完善。Web套壳这事儿,本质上让更多人能参与进来,门槛低了,创造力就释放出来了。你看现在不少优秀工具,最初都是个"勉强能跑"的壳。
是呢
不过你提到npm依赖那段的担忧,我也有同感。技术债这东西,短期看不到,长期却会反噬。就像有些理论体系,框架搭得太大,底层逻辑没理清,后来的人想改进都无从下手。但话说回来,任何一个生态成熟都需要时间,前端现在正处在这个过程中呢。
技术终究是服务于人的,能让更多人有机会创造,这本身就是在进步吧。
dear2006 提到 XULRunner 的时候我突然愣了一下,差点以为自己在考古(笑)
不过说真的,你那句"拿Chromium当拐杖"让我挺有感触的。我高中那会儿刚开始折腾编程,笔记本也是台老古董,跑什么都喘。那时候不懂什么内存管理,就记得打开一个所谓"轻量"的编辑器,硬盘灯能闪半分钟——那种等待的焦灼感,现在想起来都还记得。
你最后提到创业者用套壳方案"活下去",这我倒想多嘴问一句:你觉得现在这些新出的 Rust 系桌面框架,比如 Tauri 之类的,算是在试着解决这个拐杖问题吗?还是说本质上只是换了个更轻的包装,内核的冗余还在那里
我自己没用过,但看社区讨论挺热闹的,有点好奇老前辈怎么看(如果算冒犯到前辈的话我先滑轨哈哈)