Jamstack 是什么?
Jamstack 是一套用于构建现代 Web前端 站点的技术栈,拥有高性能、安全性、易扩展的特性。
Jamstack 技术栈 & 生态
Jamstack 聚合了现代前端开发所需要的脚手架,框架,工作流等,从而最大化的提高工程师的生产力。
▐ 工作流
在这里,Jamstack 的核心理念是预渲染、使用 JavaScript 实现动态功能、使用 HTTP Api 连接第三方服务。
▐ 举个例子
当你要开发一个博客,在这之前你可能会使用 Wordpress 去搭建你的博客站点,但与此同时,你也需要负责维护 Wordpress 的服务与数据库等。
而如果你使用 Jamstack,你可以使用诸如 strapi 的 headless cms 服务(意为只提供 API 而不提供页面渲染),用来存放你的文章数据,你在前端可以使用类似 Next.js 的框架去构造站点,通过请求 headless cms 的 Api 来渲染页面。
而在发布时,你将在构建时生成静态页面,并发布至 CDN。因为是静态页面,所以性能好,而托管至 CDN 意味着该页面是只读的,安全性高,且 CDN 是全球部署的话,那么页面也能实现全球部署,拓展性非常好。
误区
Jamstack 在国内落地时,总是会有同学认为这是新瓶装旧酒,或者是前端炒出来的新概念,但实际上忽略了 Jamstack 自身架构的特性与优势。
▐ Jamstack 是不是新瓶装旧酒
Q:Jamstack 和之前的手动发布页面到 CDN 有什么区别,是不是新瓶装旧酒?
A:这里我可以很明确的给一个答案:不是。
首先在我看来,Jamstack 虽然表现的都是页面和资源托管至 CDN,是实际上背后的工作流与过往是截然不同的。相较于以往手动开发和发布的模式,Jamstack 是聚合了现代前端框架、工作流、发布平台的,这一点非常的重要。
对于工程师而言,效率就是生产力,之前的页面不一定是基于现代工程的,每次生成静态页面也依赖于自己写的脚本,每次页面更新还需要手动发布,效率偏低。而使用 Jamstack,你可以利用你最熟悉的框架,通过框架去批量生成静态页面,并且聚合 Git 等服务,实现推送即发布的全自动工作流。效率会高很多。
举个相似的例子:使用 React/Vue/Angular 和使用 jQuery 写页面,最终都是操作 DOM,所以 React/Vue/Angular 和 jQuery 是一样的,新瓶装旧酒?
先进的工具带来先进的生产力,即使最终的表现是前端页面和十年前一样,部署至 CDN。但实际上生产效率与质量还有可生产的页面已经发生了很大的进步。
不论是什么前端页面,能打开的更快终究是更好的,因此如果只关注到部署的结果,而没有注意到生产流程与生产效率的变革,便会落入“Jamstack 是新瓶装旧酒”这个论点的坑中。顺带一提,近几年的前端工具基本上也是朝着“性能更好”、“更易用”等方向去前进的。
以上就是“web前端框架技术栈——Jamstack”的详细内容,想要了解更多web前端开发内容欢迎前往编程学习网
扫码二维码 获取免费视频学习资料
- 本文固定链接: http://phpxs.com/post/8490/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料