00:00:00显然,
00:00:00现在一切都围绕着AI展开,
00:00:03对我来说也不例外。我一直在使用AI,
00:00:06用AI编写大量代码,
00:00:08使用cursor等工具,
00:00:10但在这一集中,
00:00:11重点不在AI上。
00:00:13相反,
00:00:13我经常被问到2026年应该学习哪些技术,
00:00:17或者你在2026年会使用哪些技术,
00:00:20这就是我想在这里分享的内容。我想分享一些我在2026年感到兴奋的技术、
00:00:26库和框架。这个列表不一定全面或完整,
00:00:29只是我个人今年会使用并且非常感兴趣的技术清单。我之前也谈到过,
00:00:35如果我们讨论的是Web开发——确实如此——有一个默认技术栈主导着一切,
00:00:41尤其是在AI的影响下或由于AI的推动。那就是TypeScript、
00:00:47React、
00:00:48Next.js和Tailwind。这是AI的最爱,
00:00:53你可以从React等的下载量图表中看到这一点,
00:00:57Tailwind和其他技术也是如此。显然,
00:01:01这是你绝对应该学习或使用的,
00:01:03特别是如果你想找工作的话。当然这不是唯一的选择,
00:01:07我并不是说Angular、
00:01:10Vue或其他所有东西都不好,
00:01:12深入研究Vue也可以是一个很好的细分领域。但这是AI的最爱,
00:01:18是AI最喜欢的技术栈。所以自然地,
00:01:21我也在使用其中一些技术,
00:01:23也因为我在AI出现之前就这样做了。我在所有项目中都使用TypeScript,
00:01:29因为TypeScript太棒了。是的,
00:01:33定义更复杂的类型有时会很烦人,
00:01:36但首先,
00:01:36老实说,
00:01:37你不需要经常这样做。其次,
00:01:39AI可以帮助解决这个问题。AI在编写TypeScript代码方面相当出色,
00:01:46而在AI出现之前使用TypeScript的优势就在于它可以帮助你捕获某些错误,
00:01:53最终能产生更高质量的代码。但特别是在AI时代,
00:01:57使用TypeScript的优势在于它是一个重要的构建块,
00:02:02可以为AI提供有用的反馈,
00:02:04告诉它所编写的代码是否有效,
00:02:07例如结合单元测试,
00:02:08或者通过Playwright MCP或cursor中的内置浏览器为AI提供浏览器访问权限等等。所以TypeScript是我一直使用的,
00:02:20我在AI出现很久之前就很喜欢它,
00:02:23但现在有了AI,
00:02:25它变得更加有用了。所以它也是我技术栈的一部分。React也是如此。我也很喜欢Angular,
00:02:33我喜欢Vue,
00:02:34我有这两者的课程。如果你关注我,
00:02:37你就知道我喜欢所有这些框架。我不是那种只有一个最爱框架的人,
00:02:42但在过去几年里,
00:02:44我所有项目主要使用的是React,
00:02:47特别是在AI时代,
00:02:48AI对React了解很多,
00:02:51尽管我得说它也可能产生相当糟糕的React代码,
00:02:55里面充斥着一堆use effects之类的。但尽管如此,
00:03:00React仍然是我技术栈的一部分。
00:03:03Next.js长期以来一直是我主要的React元框架,
00:03:09它仍然很棒。我想在这里说清楚,
00:03:12它仍然很棒,
00:03:13但这可能是第一个新事物,
00:03:16我真的很喜欢TanStack Start。
00:03:20我用它构建了一些项目,
00:03:22比如去年我作为副业项目构建并发布的Build My Graphic项目。这是一个简化使用AI生成信息图表过程的项目,
00:03:32就像这里展示的这个,
00:03:33它显示了我最喜欢的技术栈的完整概览。我用TanStack Start来做这个。我也在其他正在开发的项目中使用TanStack Start,
00:03:45有些很快会发布。例如,
00:03:47我也在这个你现在看到的画布绘图应用中使用它。
00:03:51它太棒了,
00:03:51我真的很喜欢它。我喜欢它在开发过程中比Next.js更快,
00:03:56它以不同的方式处理某些事情。我喜欢它的语法,
00:04:00我喜欢它相比Next.js某些内容的简洁性。没有use server、
00:04:06use client等指令,
00:04:09因此TanStack Start绝对是我去年开始使用的新事物之一,
00:04:14今年我会继续使用它。
00:04:16现在我通常使用 Bun 作为后端代码的技术栈起点,总体而言我用 Bun 来安装包、
00:04:23运行代码以及开发服务器,因为它就是一个更快的 Node.js。我的意思是,仅仅是用 bun install 安装包就比 npm 快得多,我真的很喜欢 Bun。它当然在很大程度上与 Node.js 兼容,而且内置了一些超级实用的额外功能,比如内置的 S3 客户端,它允许你与 S3 对象存储以及像 Cloudflare 的 R2 这样的兼容存储进行交互,用来存储对象、
00:04:52图片之类的东西,而且这是内置的,你不需要额外的包,速度超快,比官方的 AWS SDK 还要快,基于所有这些原因我真的很喜欢 Bun,因此 Bun 几乎成了我所有项目中的默认工具。当然它不是什么新东西,对我来说也不新鲜,我去年就在用它,甚至更早之前就用过,但它现在是我的默认选择,所以这绝对也是我大量使用的东西。不过我想指出的是,Node.js 也已经进步了很多,很容易把 Node.js 看作是那种缓慢、
00:05:25陈旧的东西,而把 Bun 看作好得多的选择,我确实认为 Bun 在很多方面更优秀,但我写了一整篇文章——如果你想读的话可以在下面找到链接——讲述了所有现代特性,比如 TypeScript 支持、
00:05:41原生 TypeScript 支持,这些都内置在 Node.js 中,你可以在最新版本的 Node.js 中使用,不需要额外的包或 Bun,因为 Node 能做的比我们很多人想象的要多。我还在使用 Bun 吗?因为我喜欢它的速度等等,是的我还在用,但如果你在一个需要使用 Node 的项目中,或者你就是更喜欢它,值得注意的是,现在你可以用 Node 做的事情比几年前多得多,所以现代 Node.js 绝对也是我今年会考虑重新审视的东西,如果你已经有一段时间没关注的话。说到现代化的东西,我对现在可用的许多现代浏览器 API 和 CSS 特性也超级兴奋,因为在过去大概 18 个月左右那里发生了很多变化,有很多浏览器 API 和 CSS 特性,比如 popover API 以及许多其他的,已经获得了广泛的主流浏览器支持,所以你今天可以在所有这些主流浏览器中使用它们,可以在你的应用程序中使用它们,通过使用这些特性,你可以节省大量原本需要编写的 JavaScript 代码或需要安装的额外包。
00:06:53我在我的另一个频道——学院频道上制作了一些视频,
00:06:57深入讲解了其中一些内容,
00:06:59比如容器查询、
00:07:00弹出框 API,
00:07:02我强烈推荐大家观看这些视频并了解这些特性。浏览器已经发展了很长一段路,
00:07:08很多问题完全不需要用你自己的代码或额外的包来解决,
00:07:13只需利用这些新特性就能搞定。值得注意的是,
00:07:16AI 默认情况下可能不会建议或使用这些特性,
00:07:20因为它是用包含大量旧代码的数据训练出来的,
00:07:24但你可以教它,
00:07:25可以把文档复制粘贴到提示词中,
00:07:28或者根据你使用的工具分享链接,
00:07:31这样就能让 AI 也编写现代化的代码。我绝对建议你这样做,
00:07:36教 AI 所有这些现代化的东西,
00:07:39你真的应该这么做,
00:07:41因为现在能做的事情太多了。说到 AI,
00:07:44在这个视频中当然不能完全跳过它。我在其他视频中说过,
00:07:49我大量使用 AI,
00:07:50我所有的代码都是借助 AI 编写的,
00:07:53AI 也为我写了很多代码。这里我不是在谈论氛围编程,
00:07:58我要说清楚,
00:07:59我知道有些人还是会理解错——我说的是控制 AI、
00:08:04引导它、
00:08:04提供正确的提示词和上下文,
00:08:07在需要时亲自深入代码,
00:08:09真正进行所谓的智能体工程。因此我当然会使用 Cursor 这样的工具,
00:08:15而今年让我非常兴奋的一个工具是 Open Code。最近它引起了很多关注,
00:08:22我是从去年12月开始使用的,
00:08:24所以在它火起来之前我就很酷了。这本质上是 Claude Code 的替代品,
00:08:31是一个命令行工具、
00:08:33基于终端的编码工具,
00:08:34你可以用它来进行智能体工程,
00:08:37它非常好用,
00:08:38尽管是在终端中运行但有很好的界面,
00:08:41功能丰富,
00:08:42支持智能体和智能体技能等所有功能,
00:08:45你真的可以用 Open Code 进行出色的智能体工程。因此,
00:08:51Cursor 和 Open Code 是我今年使用的其他技术,
00:08:56尤其是 Open Code 是我非常期待的。大多数应用程序需要两样东西,
00:09:03你可能正在构建的应用也是如此,
00:09:05那就是身份验证和数据库。对于数据库,
00:09:09我最喜欢的是 PostgreSQL 或 SQLite,
00:09:14两者都很出色,
00:09:15当然也都不是新技术,
00:09:17我完全知道这一点。我知道还有更受关注的替代品,
00:09:21比如 Convex 等等,
00:09:23我可能也会研究那些,
00:09:25但说实话我还没有真正使用过它们。我喜欢这些老派数据库是出于非常不同的原因。PostgreSQL 当然非常流行,
00:09:35性能超强,
00:09:36例如在使用 AWS 时,
00:09:38你可以使用 RDS 或 Aurora 这样的托管服务来简化托管,
00:09:44如果你愿意的话。但你也可以用 Docker 自行托管,
00:09:49只需确保备份数据等等。PostgreSQL 的优势,
00:09:53尤其是在当前这个现代时代,
00:09:56当然在于它支持各种不同的扩展,
00:09:58比如如果你想要构建 RAG 系统的向量数据库,
00:10:02可以使用 pg_vector。扩展功能一直都有,
00:10:07这不是新鲜事,
00:10:08但现在在 AI 时代,
00:10:10我们有了像向量数据库这样的新东西,
00:10:13你可以直接用 PostgreSQL 来实现,
00:10:17而不需要使用额外的工具或支付额外的服务费用。这是我真正喜欢 PostgreSQL 并在许多项目中使用它的原因之一。但对于一些我想保持简单、
00:10:29可能不需要那些扩展的项目,
00:10:32我真的很喜欢 SQLite。如果你不知道的话,
00:10:36SQLite 实际上就是项目中的一个文件,
00:10:40数据库嵌入在你的代码中——我是说它的代码——所以不需要启动额外的数据库服务器,
00:10:47而只是安装一个额外的包。如果你使用 Bun,
00:10:51你甚至不需要这样做,
00:10:52它内置了 SQLite 支持,
00:10:55所以你可以直接使用 Bun 而不用安装任何东西,
00:10:59就可以开始写入数据库,
00:11:01而数据库同样只是项目中的一个文件。你可以通过把那个文件复制到其他地方来备份数据库,
00:11:09这使得入门变得超级简单。这听起来可能像是不太适合大型项目的东西,
00:11:15但你错了。SQLite 可以扩展到数万甚至数十万用户和数千个并发请求,
00:11:21所以它具有超强的可扩展性和强大功能。当然在某个时候你可能需要更多,
00:11:27但那个时候还很遥远,
00:11:29而且大多数应用程序永远不会达到那个程度。说实话,
00:11:33这种简单性真的很有价值。人们很容易把它当作玩具数据库,
00:11:38但它内置了很多功能,
00:11:40是一个了不起的数据库。我在许多生产项目中都使用它,
00:11:44比如 Build My Graphic 就使用 SQLite。因此,
00:11:50这是我过去几年一直在使用并将继续使用的另一项技术,
00:11:55我当然对它仍然非常兴奋,
00:11:57我只是想在这里为它做些宣传,
00:12:00因为很多人认为它只是开发用的数据库或类似的东西,
00:12:04但绝对不是。对于身份验证,
00:12:06Better Auth 显然对我来说更好。有很多方法可以为项目添加身份验证,
00:12:13当然,
00:12:14如果你注意到了,
00:12:15我在这里谈论的是 JavaScript 生态系统。但 Better Auth 是一个相对较新的库——我是说它已经超过一年了,
00:12:26但还不算很老——它维护得非常好,
00:12:29功能极其强大。它允许你构建自己的身份验证而无需编写任何相关代码,
00:12:35你只需使用这个包以及它支持的所有功能和所有认证提供商,
00:12:40它让身份验证变得轻而易举。它是我所有项目的默认选择,
00:12:44我在所有项目中都使用 Better Auth,
00:12:49它太棒了。我会继续使用它,
00:12:51我对它仍然超级兴奋,
00:12:53所以如果你还没有了解过 Better Auth,
00:12:57我建议你看一看。让我快速创建一下我给你看的那个信息图,
00:13:02在它生成的时候,
00:13:03让我说清楚,
00:13:04当然还有更多有趣的东西正在发生,
00:13:07还有更多值得探索的包,
00:13:09我会使用它们。例如,
00:13:11如果我在构建移动应用,
00:13:13我会使用 React Native。这只是我最兴奋的库或技术的一个选集,
00:13:20是我现在想到并考虑过的。我绝对有可能忘记了什么,
00:13:24或者在今年的过程中当然会出现一些东西,
00:13:27也许已经存在但我到目前为止还没有真正使用过。当然,
00:13:32我很想听听你的想法,
00:13:34听听你对什么感到兴奋,
00:13:36也许是在 AI 之外的东西。显然 AI 主导着一切,
00:13:40会对一切产生影响,
00:13:42但值得记住的是,
00:13:43作为开发者,
00:13:44我们可以也应该对我们使用的技术做出选择,
00:13:48对让 AI 使用的技术做出选择。是的,
00:13:51这就是我最兴奋的东西的一个选集。