正确的。再说一遍,我不是微处理器专家。我确信,如果,如果,如果一位非常熟悉这一点的工程师可能会纠正我的一些细节,但总的想法是,是的,随着环境压力的增加,直到压力减轻。
德鲁:所以我们正在为最新 Apple M1 Max(新处理器)的所有设备类型编写 JavaScript,不是吗?从笔记本电脑一直到几乎没有足够工作内存来渲染网页的设备。但网络并不是这样开始的,年轻的听众可能有兴趣知道我们过去根本不需要任何 JavaScript 就可以构建交互式网络体验。我们又大又重的框架将会毁掉我们。
杰里米:我想说,框架有它的时间和地点,那些读过本 Whatsapp 号码列表 书摘录的人可能会觉得我是反框架的。我绝对对几个框架持批评态度,但它们确实有其用途,并且可以以保留良好用户体验或产生良好用户体验的方式使用它们。但我认为我们做得还不够,就是批判性地评估这些框架如何损害……运行时性能,对吧?所以我所说的这种类型的东西,如果你点击一个按钮,设备需要一秒甚至两秒的时间来响应该输入,因为后台发生了很多事情。你有第三方 JavaScript 的东西,比如收集分析,然后你还有在线程上运行的其他东西。
杰里米:而且,如果您不严格评估框架的运行时性能,您可能会留下一些更好地为用户服务的机会。一个很好的例子,我总是喜欢使用react 与pre-act。我已经敲这鼓有一段时间了。不久前,我为 CSS-Tricks 写了一篇文章,介绍了移动导航菜单等基本点击交互。这听起来微不足道,但您会发现,在所有设备上,React 都能提供更好的运行时性能,但它具有基本相同的 API。存在差异,有一些细微的差异,可以用表演前的兼容性来掩盖,但就这么简单……我不应该说一个简单的选择,但那个选择,那个基本的选择可能是体验之间的差异这对所有用户或至少对大多数用户来说都非常有效,或者只对某些用户有效。希望这是有道理的。]
德鲁:我的意思是,通过所有的框架和构建工具,他们似乎一直在做一些事情,比如树摇晃和优化他们提供的捆绑包以及如何将它们交付给浏览器。当使用大型框架时,您认为是否存在一个临界点,您正在编写如此大的应用程序,您自己的代码如此之多,以至于框架使您能够因为其所有抽象而交付更少的代码?

杰里米:这是一个很难回答的问题。一方面是框架本身代表了大量您永远无法优化掉的代码。因此,拥有一个薄弱的框架,例如预演或任何数量的类似……或者例如咒语,这会很有帮助。但我看到的问题是,我认为来自 HTTP 存档的数据支持了这一点,似乎只要我们在微处理器和网络方面取得更快的进步,我们就会倾向于消耗这种收益,对吗?
杰里米:我们往往就像在跑步机上一样,永远不会真正进步。我不知道,就像我对……的历史没有洞察力一样,或者抱歉,框架的未来是什么样子。我确信可以提高一些效率。但我们在该领域看到的原始 JavaScript 的情况是这样的……只是使用了原始的 JavaScript 量。并没有告诉我这是一个我们可以通过自动化方式解决的问题。我认为我们必须……我们必须成为人类并进行干预并做出符合用户最大利益的决策。否则,我不认为我们会摆脱这种跑步机,也许在我的职业生涯中不会,但我不知道。