前端单页应用SPA时代结束,Hotwire时机已到 - DHH

21-12-14 banq

Ruby on Rails的作者DHH认为单页应用时代已经结束,无需使用太多JavaScript即可传递HTML的技术HTML-over-the-wire将迎来时机:
多年来,我对单页应用程序SPA抱有相当的怀疑,这并不是什么大秘密。不是因为对 JavaScript 与生俱来的敌意,至少不是因为我们首先以 CoffeeScript 的形式尝到的现代变种,然后转译为 ES Next。但是这种编写和更新 HTML方式从来都不是我的兴趣,也不是我编写的应用程序的合适解决方案。
在过去的几年里,我这种对 JavaScripting Everything 扩散的抵制变成了少数立场。似乎有一段时间每个人都同时沉迷于 React、GraphQL 以及主题的无尽变化。这就是新事物,繁荣的浪潮冲刷了所有的反对意见。
这听起来可能很苦涩,但我笑着说,不完全是:
在我们确定适应度的边界之前,必须过度使用新方法。
在 2000 年代中后期Ruby on Rails 重演这一幕时,我也是坐在前排的。
 
我现在又微笑了,因为对单页应用程序的迷恋结束了:我们早就看到了高峰。这并不意味着下降以任何方式结束。我相信我们会在不久的将来看到更多的应用在这个模式上完成。但是 Web 开发社区中注意力的垄断已经结束,并且已经有一段时间了。
更好的是,这种由对单页应用程序的关注减少创造了新的思维空间和开放性,就像 2004 年 Rails 的能量来自沮丧的 Java 和好奇的 PHP 程序员,他们与意大利面条式的XML纠缠不清。
对过去的不满播下了兴趣的种子。
 
对单页应用技术霸权的反击在 2015 年无法引起共鸣。但现在,五年多后,有足够多的人认真对待这种方法并得出结论“这不适合我” . 
这种变化就是Hotwire。HTML Over The Wire:

Hotwire 是一种无需使用太多 JavaScript 即可通过网络发送 HTML 而不是 JSON 来构建现代 Web 应用程序的替代方法。这可以实现快速的首次加载页面,在服务器上保持模板渲染,并允许在任何编程语言中获得更简单、更高效的开发体验,而不会牺牲与传统单页应用程序相关的任何速度或响应能力。
 
我最近与大大小小的组织进行了大量对话,他们似乎同时都意识到单页应用程序方法不能很好地为他们服务,现在他们要么已经或计划用 Hotwire 替换它。
就像 2000 年代中期的 Rails 一样,或者就像 2010 年代中期的 SPA 一样,一个想法的蝴蝶在几年前扇动了它的翅膀,现在突然出现了一场兴趣的飓风。
正是在这场飓风中,我很高兴我们将 Hotwire 作为默认的前端答案插入在本月到期的 Rails 7 中。所有这些复合因素汇集在一起​​,加速了这个新方向的发展。


 

2