No.39 和 Svelte 核心贡献者立豪聊 Svelte、开源感受和对技术的热爱！

收听方式

小宇宙

苹果播客

IPFS

介绍

新一期播客来啦！这一次我们邀请到了来自马来西亚的 Svelte 核心贡献者：Li Hau！同事还邀请到了飞行嘉宾 Svelte 组件库作者白雾三语、Svelte 资深用户 Smart，以及主播小白菜一起加入了讨论。我们围绕 Svelte 技术本身、嘉宾参与开源的经历进行了开心有趣的吹水！这也是他首次参与中文播客的技术闲聊，欢迎收听和互动！

时间轴

00:00 讨论了 Svelte 的一些技术概念、适用场景以及工程化问题，并分享了踩坑经验。后半程，他们还展望了 Svelte 下一个版本的一些东西。与 Li Hau 聊天后，他们也聊到了他的生活感受和未来规划。

07:24 开源项目中的机缘巧合和参与动力。

对话中提到了在开源项目中提代码贡献的机缘巧合和参与动力。参与开源社区的过程中，个人可以根据自己的兴趣和需求参与，并且得到他人的帮助和反馈。对于大项目，提代码贡献可能会得到及时的反馈，而小项目可能需要更多的耐心等待。参与开源项目的积极反馈对于吸引更多人参与和使用开源项目至关重要。

12:16 开源项目 Svelte 及其应用场景

本文介绍了开源项目 Svelte 的特点和应用场景。Svelte 是一个前端框架，可以帮助开发者以编译器编译代码并生成高性能的脚本，方便地写出组件代码。与其他框架相比，Svelte 没有虚拟 DOM，性能更高。它的语法接近于 HTML 和 CSS，适合从 Vue 转过来的开发者入门。

20:26 Svelte 编程的优势和特点

Svelte 编程对新手友好，通过抽象概念和语法分析帮助新手省去学习框架的额外知识量。另外，Svelte 编程在打包时间和体积上相对于 Vue 略有增加，但源代码较少，产出也相对较少。

25:55 工程化方案介绍

本文介绍了对于 Svelte 的工程化实现方案，包括 CSS 处理、路由状态处理以及工具选择等。其中，推荐使用 SvelteKit 作为默认选项，它提供了全站的框架，包括路由、服务端渲染等功能。此外，还介绍了 SvelteKit 和 SvelteKit 的特点和适用场景，推荐使用 SvelteKit 作为新手的友好选项。最后，还提到了一些与生态相关的问题和发展。

31:07 Svelte 技术的使用和问题探索

本对话片段涉及了对 Svelte 技术本身特点的讨论，以及 Svelte 工程化在不同使用场景下的实践探索。讨论中还提到了 Svelte 技术在代码分析、变量绑定和依赖追踪方面的局限性，以及如何在单元测试中传递插槽的问题。这些问题和讨论引发了对 Svelte 技术未来发展的关注和思考。

38:51 Svelte 框架的使用体验

在使用 Svelte 框架的过程中，遇到的最大问题是前期资料不足导致走了一些弯路。但通过后续的使用规避了很多问题。Svelte 框架的全局状态管理非常方便，满足了 80% 的需求。此外，文档和教程的质量也有所提高，国内使用的人越来越多。与其他框架不同，Svelte 框架的教程是以文档和官方教程的形式呈现的，具有交互式的特点。而且 Svelte 还提供了引导方案和实战演练，让新手能够更加方便地学习和理解概念和 API 的使用方式。与其他框架相比，Svelte 在引导方面的设计非常出色。

43:47 开源工具库在 Svelte 项目中的应用

本对话片段讨论了使用者在使用 Svelte 时推荐的一些工具库和组件库，并提到了在使用过程中遇到的一些问题。同时，讨论了在 web 开发中使用原生 JS 和原生 TS 的优势，以及 web components 的使用。最后，还提到了 web conformance 和框架无关的开发思想。

51:36 技术选型和竞争演进

在对话中，讨论了技术选型和传统三大框架的竞争演进。其中，发言人认为不需要追求超越其他框架，而是应该根据自身需求选择适合的框架。同时，新的框架也在不断涌现，各自有自己的特点和理念。社区运营能力在开源框架中也变得越来越重要，社区志愿者的贡献和参与对框架的发展起到了关键作用。

59:00 开源社区蓬勃发展演进的过程和 V5 版本的新概念

对话片段中提到了开源社区的发展演进过程以及即将发布的 V5 版本的新概念。其中，V5 版本将解决现有模块中变量依赖分析的问题，通过编译时的转译，实现变量的可见性和使用。此外，对于全局状态管理和局部定义变量的跟踪，Svelte 提供了相应的概念和 API。然而，在组件内和函数中使用 $ 的方式存在一定差异，仍需要进一步完善。对于这些展望和新特性，建议阅读官网的相关文档进一步了解。

67:34 使用 Svelte 的优势和推荐

本对话片段主要讨论了使用 Svelte 编程框架的优势和推荐。讨论内容包括使用 Svelte 简化代码、提高性能、方便上手等。对于公司内部推行 Svelte 的问题，个人认为只有当遇到硬性需求时才需要更换框架，而在不硬性需求时可以进行尝试和推广。最后，发言人还介绍了自己的一个迷你 Svelte 项目，以及如何通过学习源码进行学习。

78:54 工作经验和开源参与的经验分享

这段对话主要是关于对工作经验和开源参与的经验分享。对话中提到了工作时间、爱好、技术选择和开源项目的经历。同时，也强调了保持好奇心、了解源码、思考问题的重要性。通过这些经验，年轻的程序员可以更好地了解开源项目，并逐渐培养出对技术的理解和思考能力。

88:28 如何保持技术热爱并平衡工作与兴趣

对话围绕工作中如何保持技术热爱、如何平衡工作与个人兴趣展开。讨论了新加坡的工作文化、个人低潮期的影响以及如何寻找自己热爱的事情。还介绍了 Svelte 框架的优势和发展前景，以及前端开发的未来。

93:35 前端未来的发展方向和就业前景

本对话片段主要讨论了前端未来的发展方向和就业前景。其中涉及到了无虚拟 DOM 的 Vue Vapor 概念的意义，重编译轻运行时的趋势，前端开发在未来的需求和 AI 在前端开发中的应用。同时，还讨论了编程的基础逻辑原理在不同领域的适用性，以及个人对于前端未来的看法和规划。最后，提到了观看视频的推介和在 B 站上的发布。

时间轴部分由 AI 总结生成。