<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Web on Commentary of Takao</title><link>https://takao.blog/zh/categories/web/</link><description>Recent content in Web on Commentary of Takao</description><generator>Hugo -- gohugo.io</generator><language>zh</language><copyright>Commentary of Takao</copyright><lastBuildDate>Wed, 15 Jul 2026 22:01:08 +0900</lastBuildDate><atom:link href="https://takao.blog/zh/categories/web/index.xml" rel="self" type="application/rss+xml"/><item><title>React 19 新功能：开发人员需要了解的内容</title><link>https://takao.blog/zh/web/react-19-new-features/</link><pubDate>Wed, 08 Jul 2026 10:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/react-19-new-features/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/react-19-new-features-zh.png" alt="Featured image of post React 19 新功能：开发人员需要了解的内容" /&gt;&lt;h2 id="react-19-发生了什么变化"&gt;React 19 发生了什么变化
&lt;/h2&gt;&lt;p&gt;React 19 不是一个小更新，而是一个范式转变。稳定的服务器组件、新的钩子和 React 编译器从根本上改变了开发人员编写应用程序的方式。&lt;/p&gt;
&lt;h2 id="稳定的服务器组件"&gt;稳定的服务器组件
&lt;/h2&gt;&lt;p&gt;React 服务器组件 (RSC) 现已投入生产。通过在服务器上渲染并将 HTML 发送到客户端，它们可以显着减小包的大小。&lt;/p&gt;</description></item><item><title>2026 静态站点生成器：Astro、Hugo 和 11ty</title><link>https://takao.blog/zh/web/static-site-generators-2026-comparison/</link><pubDate>Tue, 05 May 2026 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/static-site-generators-2026-comparison/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/static-site-generators-2026-comparison-zh.png" alt="Featured image of post 2026 静态站点生成器：Astro、Hugo 和 11ty" /&gt;&lt;h2 id="2026-静态站点生成器astrohugo-和-11ty"&gt;2026 静态站点生成器：Astro、Hugo 和 11ty
&lt;/h2&gt;&lt;p&gt;2026 年的静态站点生成器格局比以往任何时候都更加多样化。开发人员可以在基于 Go 的速度极快的 &lt;strong&gt;Hugo&lt;/strong&gt;、岛屿架构先驱 &lt;strong&gt;Astro&lt;/strong&gt; 和极简、灵活的 &lt;strong&gt;11ty&lt;/strong&gt; (Eleventy) 之间进行选择。每个工具都在不同的场景中表现出色——了解它们的权衡对于为您的项目选择正确的工具至关重要。&lt;/p&gt;</description></item><item><title>从 WebGL 过渡到 WebGPU 以获得更快的图形速度</title><link>https://takao.blog/zh/web/webgpu-native-browser-graphics-generation/</link><pubDate>Sun, 05 Apr 2026 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/webgpu-native-browser-graphics-generation/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/webgpu-native-browser-graphics-generation-zh.png" alt="Featured image of post 从 WebGL 过渡到 WebGPU 以获得更快的图形速度" /&gt;&lt;h2 id="从-webgl-过渡到-webgpu-以获得更快的图形速度"&gt;从 WebGL 过渡到 WebGPU 以获得更快的图形速度
&lt;/h2&gt;&lt;p&gt;十多年来，&lt;strong&gt;WebGL&lt;/strong&gt; 一直是浏览器中硬件加速 3D 图形的唯一标准。它基于 OpenGL ES 构建，公开了一个在其时代运行良好的状态机 API，但会带来大量 CPU 开销，并且缺乏对现代 GPU 功能的直接访问。输入 &lt;strong&gt;WebGPU&lt;/strong&gt; — 专为现代 GPU 架构全新设计的下一代图形和计算 API。&lt;/p&gt;</description></item><item><title>Cloudflare Workers与Wasm边缘计算发展</title><link>https://takao.blog/zh/web/cloudflare-workers-wasm-edge-developments/</link><pubDate>Mon, 05 Jan 2026 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/cloudflare-workers-wasm-edge-developments/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/cloudflare-workers-wasm-edge-developments-zh.png" alt="Featured image of post Cloudflare Workers与Wasm边缘计算发展" /&gt;&lt;h2 id="introduction"&gt;Introduction
&lt;/h2&gt;&lt;p&gt;Cloudflare Workers revolutionized serverless computing by bringing code execution to the network edge — over 330 locations worldwide. By integrating &lt;strong&gt;WebAssembly (Wasm)&lt;/strong&gt; modules into Workers, you can run computationally intensive tasks (image processing, cryptography, video encoding, scientific calculations) at near-native speeds while maintaining the low-latency benefits of edge distribution. This article explores how to compile languages like Rust and AssemblyScript to Wasm, deploy them on Workers, and the performance trade-offs involved.&lt;/p&gt;</description></item><item><title>Cloudflare隐私沙盒与第三方Cookie淘汰</title><link>https://takao.blog/zh/web/cloudflare-privacy-sandbox-thirdparty-cookie-deprecation/</link><pubDate>Fri, 05 Dec 2025 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/cloudflare-privacy-sandbox-thirdparty-cookie-deprecation/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/cloudflare-privacy-sandbox-thirdparty-cookie-deprecation-zh.png" alt="Featured image of post Cloudflare隐私沙盒与第三方Cookie淘汰" /&gt;&lt;h2 id="the-end-of-third-party-cookies"&gt;The End of Third-Party Cookies
&lt;/h2&gt;&lt;p&gt;The third-party cookie era is ending. After years of delays and industry pushback, Chrome has begun phasing out cross-site tracking cookies. This fundamentally changes how web analytics, advertising, and personalization function. Understanding the deprecation timeline and replacement APIs is essential for every web developer.&lt;/p&gt;
&lt;h2 id="chrome-phase-out-timeline"&gt;Chrome Phase-Out Timeline
&lt;/h2&gt;&lt;p&gt;Google&amp;rsquo;s Privacy Sandbox initiative has followed this trajectory:&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;Date&lt;/th&gt;
					&lt;th&gt;Milestone&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;2024 Q1&lt;/td&gt;
					&lt;td&gt;1% Chrome users have 3PC restricted&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;2025 Q2&lt;/td&gt;
					&lt;td&gt;Testing phase with expanded cohorts&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;2025 Q3-Q4&lt;/td&gt;
					&lt;td&gt;Graduated rollout begins&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;2026&lt;/td&gt;
					&lt;td&gt;Full deprecation for all Chrome users&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="privacy-sandbox-apis"&gt;Privacy Sandbox APIs
&lt;/h2&gt;&lt;p&gt;The Privacy Sandbox replaces third-party cookies with several purpose-built APIs:&lt;/p&gt;</description></item><item><title>Node.js 对需要 ESM 模块的稳定支持</title><link>https://takao.blog/zh/web/node-esm-require-support-stable/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/node-esm-require-support-stable/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/node-esm-require-support-stable-zh.png" alt="Featured image of post Node.js 对需要 ESM 模块的稳定支持" /&gt;&lt;h2 id="nodejs-对需要-esm-模块的稳定支持"&gt;Node.js 对需要 ESM 模块的稳定支持
&lt;/h2&gt;&lt;p&gt;多年来，Node.js 开发人员面临着痛苦的分歧：&lt;strong&gt;CommonJS&lt;/strong&gt; (CJS) 和 &lt;strong&gt;ES 模块&lt;/strong&gt; (ESM) 共存，但互操作性有限。 CJS 代码可以异步加载 &lt;code&gt;import()&lt;/code&gt; ESM 模块，但 &lt;code&gt;require()&lt;/code&gt;（CJS 核心的同步加载机制）根本无法加载 ESM。这迫使代码库迁移成为要么全有要么全无的事情。&lt;/p&gt;</description></item><item><title>辅助功能要点：何时以及如何编写 WAI-ARIA</title><link>https://takao.blog/zh/web/web-accessibility-aria-basics/</link><pubDate>Mon, 15 Sep 2025 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/web-accessibility-aria-basics/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/web-accessibility-aria-basics-zh.png" alt="Featured image of post 辅助功能要点：何时以及如何编写 WAI-ARIA" /&gt;&lt;p&gt;在现代 Web 开发中，数字可访问性（通常缩写为 A11y）不再是奢侈品或事后的想法，而是核心质量标准。创建每个人都可以导航的界面，无论身体或认知能力如何，都从语义 HTML 开始。&lt;/p&gt;</description></item><item><title>当前趋势：Vite 6 和基于 Rust 的 Bundler Rspack</title><link>https://takao.blog/zh/web/vite-6-rspack-bundler-speeds/</link><pubDate>Tue, 05 Aug 2025 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/vite-6-rspack-bundler-speeds/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/vite-6-rspack-bundler-speeds-zh.png" alt="Featured image of post 当前趋势：Vite 6 和基于 Rust 的 Bundler Rspack" /&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;在前端开发中，开发服务器启动的速度和生产编译周期直接影响开发人员体验（DX）。&lt;/p&gt;
&lt;p&gt;近年来，社区已经从标准 Webpack 配置迁移到本机、基于 Go (ESBuild) 和基于 Rust (SWC) 的构建帮助程序。&lt;/p&gt;</description></item><item><title>Node.js 中的 ESM 与 CommonJS 互操作挑战</title><link>https://takao.blog/zh/web/node-esm-cjs-interoperability/</link><pubDate>Fri, 25 Jul 2025 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/node-esm-cjs-interoperability/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/node-esm-cjs-interoperability-zh.png" alt="Featured image of post Node.js 中的 ESM 与 CommonJS 互操作挑战" /&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;Node.js 自 v12 起就支持 ECMAScript 模块 (ESM)，但生态系统仍然深深植根于 CommonJS (CJS)。将两个模块系统混合在一个项目中——或者从 ESM 代码中使用 CJS 包——会引入围绕导出、默认导入和全局的微妙陷阱。本文绘制了互操作边界并提供了平滑迁移的具体策略。&lt;/p&gt;</description></item><item><title>WWDC 2025 Safari更新</title><link>https://takao.blog/zh/web/apple-wwdc-2025-safari-updates/</link><pubDate>Thu, 05 Jun 2025 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/apple-wwdc-2025-safari-updates/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/apple-wwdc-2025-safari-updates-zh.png" alt="Featured image of post WWDC 2025 Safari更新" /&gt;&lt;h2 id="introduction"&gt;Introduction
&lt;/h2&gt;&lt;p&gt;At Apple&amp;rsquo;s annual developer conference &lt;strong&gt;WWDC 2025&lt;/strong&gt;, major updates were announced for iOS 19 and macOS, along with the release of &lt;strong&gt;Safari 19&lt;/strong&gt; powered by the WebKit rendering engine.&lt;/p&gt;
&lt;p&gt;In recent years, the WebKit team has accelerated its adoption of web standards to improve layout compatibility across browser engines (Blink and Gecko).&lt;/p&gt;
&lt;p&gt;This article highlights key Safari 19 announcements from WWDC 2025, focusing on WebGPU integration, browser fingerprinting shields, and newly supported CSS properties.&lt;/p&gt;</description></item><item><title>比较包管理器：npm、pnpm 和yarn</title><link>https://takao.blog/zh/web/npm-pnpm-yarn-package-managers/</link><pubDate>Tue, 15 Apr 2025 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/npm-pnpm-yarn-package-managers/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/npm-pnpm-yarn-package-managers-zh.png" alt="Featured image of post 比较包管理器：npm、pnpm 和yarn" /&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;在 JavaScript 和 Node.js 开发中，包管理器是必不可少的日常工具。&lt;/p&gt;
&lt;p&gt;虽然&lt;strong&gt;npm&lt;/strong&gt;仍然是默认的行业标准，但&lt;strong&gt;pnpm&lt;/strong&gt;（以节省磁盘空间和速度而闻名）和&lt;strong&gt;yarn&lt;/strong&gt;（具有零安装和即插即用模式）等现代替代品提供了独特的架构。&lt;/p&gt;</description></item><item><title>适合初学者的任务管理工具：选择正确的工具</title><link>https://takao.blog/zh/web/task-managenemt/</link><pubDate>Tue, 14 Jan 2025 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/task-managenemt/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/task-management-zh.png" alt="Featured image of post 适合初学者的任务管理工具：选择正确的工具" /&gt;&lt;p&gt;你好！今天，我将向您介绍“如何选择任务管理工具”，以更有效地管理您的日常任务。在日常生活中安排“要做的事情”非常重要，无论是工作、学业还是家务。但找到适合您的工具可能有点困难。因此，这里为初学者提供一些提示，帮助您毫不犹豫地选择合适的！&lt;/p&gt;</description></item><item><title>文件系统访问API：强大的本地文件操作</title><link>https://takao.blog/zh/web/file-system-access-api/</link><pubDate>Sat, 28 Dec 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/file-system-access-api/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/file-system-access-api-zh.png" alt="Featured image of post 文件系统访问API：强大的本地文件操作" /&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;几十年来，Web 应用程序仅限于通过笨重的 &lt;code&gt;&amp;lt;input type=&amp;quot;file&amp;quot;&amp;gt;&lt;/code&gt; 元素读取文件，并且没有可靠的方法将更改保存回原始文件。文件系统访问 API 完全改变了这一点。它使 Web 应用程序能够直接在用户的本地文件系统上读取、写入和管理文件和目录——当然，需要用户许可。这为构建原生的文本编辑器、图像编辑器、IDE 和生产力工具打开了大门。&lt;/p&gt;</description></item><item><title>用于自动化的 Git Hooks：超越代码质量</title><link>https://takao.blog/zh/web/git-hooks-automation/</link><pubDate>Tue, 24 Dec 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/git-hooks-automation/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/git-hooks-automation-zh.png" alt="Featured image of post 用于自动化的 Git Hooks：超越代码质量" /&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;Git 挂钩是在 Git 生命周期中的特定点自动运行的可执行脚本。虽然许多开发人员仅将它们与代码格式化和 linting 联系起来，但它们的潜力远远超出了工作流程自动化、项目管理和团队协作。本文探讨了如何利用 Git hook 来实现全面的自动化策略。&lt;/p&gt;</description></item><item><title>Node.js 性能监控：重要的指标</title><link>https://takao.blog/zh/web/nodejs-performance/</link><pubDate>Wed, 18 Dec 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/nodejs-performance/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/nodejs-performance-zh.png" alt="Featured image of post Node.js 性能监控：重要的指标" /&gt;&lt;p&gt;Node.js 性能监控需要采用与传统服务器环境不同的方法。单线程事件循环、垃圾收集内存模型和异步 I/O 创建了通用 CPU 和内存指标无法单独捕获的独特故障模式。本文介绍了保持 Node.js 应用程序在生产环境中平稳运行所需的基本指标和工具。&lt;/p&gt;</description></item><item><title>用于浏览器应用程序的 WebAssembly：超越炒作</title><link>https://takao.blog/zh/web/wasm-browser-apps/</link><pubDate>Sat, 30 Nov 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/wasm-browser-apps/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/wasm-browser-apps-zh.png" alt="Featured image of post 用于浏览器应用程序的 WebAssembly：超越炒作" /&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;WebAssembly 已经从一个小众的好奇心发展成为一个用于基于浏览器的应用程序的生产就绪工具。虽然早期的演示侧重于游戏引擎和科学模拟，但如今 Wasm 用于图像编辑器、视频转码器、压缩库和加密实用程序 - 所有这些都以接近本机的速度在浏览器中运行。&lt;/p&gt;</description></item><item><title>Git LFS：管理存储库中的大文件</title><link>https://takao.blog/zh/web/git-lfs/</link><pubDate>Tue, 26 Nov 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/git-lfs/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/git-lfs-zh.png" alt="Featured image of post Git LFS：管理存储库中的大文件" /&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;Git 是为文本文件而不是大型二进制文件设计的。当大文件进入 Git 存储库时，克隆时间会增加，存储库大小会膨胀，并且 &lt;code&gt;git log&lt;/code&gt; 等操作会变慢。 Git LFS（大文件存储）通过用存储库中的文本指针文件替换大文件，同时将实际内容存储在远程服务器上来解决这个问题。&lt;/p&gt;</description></item><item><title>Monorepo 管理与 Turborepo：扩展开发</title><link>https://takao.blog/zh/web/monorepo-turborepo/</link><pubDate>Tue, 24 Sep 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/monorepo-turborepo/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/monorepo-turborepo-zh.png" alt="Featured image of post Monorepo 管理与 Turborepo：扩展开发" /&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;随着 JavaScript monorepos 的增长，构建时间螺旋式上升，CI 管道饱和，开发人员生产力下降。由 Vercel 创建的 Turborepo 通过智能缓存和并行任务执行来解决这些挑战。与 Lerna 或 Nx 不同，Turborepo 专注于成为任务运行程序而不是构建工具，将编译委托给 esbuild、webpack 和 tsc 等工具。&lt;/p&gt;</description></item><item><title>无服务器架构模式：超越 Lambda 函数</title><link>https://takao.blog/zh/web/serverless-patterns/</link><pubDate>Tue, 17 Sep 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/serverless-patterns/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/serverless-patterns-zh.png" alt="Featured image of post 无服务器架构模式：超越 Lambda 函数" /&gt;&lt;p&gt;无服务器计算的发展已经远远超出了用 API Gateway 背后的 Lambda 函数取代简单的 REST API 的范围。现代无服务器架构是完全事件驱动的、异步的，并将单体分解为协调的功能工作流程。主要企业现在在 AWS Lambda、Azure Functions 和 Cloudflare Workers 上运行生产工作负载。本文探讨了超越基础知识的模式。&lt;/p&gt;</description></item><item><title>Node.js 日志记录最佳实践：结构化且可扩展</title><link>https://takao.blog/zh/web/nodejs-logging/</link><pubDate>Tue, 06 Aug 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/nodejs-logging/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/nodejs-logging-zh.png" alt="Featured image of post Node.js 日志记录最佳实践：结构化且可扩展" /&gt;&lt;p&gt;生产级日志记录是 Node.js 应用程序开发中最容易被忽视的方面之一。虽然 &lt;code&gt;console.log&lt;/code&gt; 适用于本地调试，但它在日志必须可搜索、结构化和可操作的分布式环境中会崩溃。本文介绍了构建可扩展的日志记录策略的基本模式。&lt;/p&gt;</description></item><item><title>Web 蓝牙 API：从浏览器连接硬件</title><link>https://takao.blog/zh/web/web-bluetooth-api/</link><pubDate>Tue, 23 Jul 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/web-bluetooth-api/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/web-bluetooth-api-zh.png" alt="Featured image of post Web 蓝牙 API：从浏览器连接硬件" /&gt;&lt;p&gt;Web 蓝牙 API 将硬件交互引入浏览器，使 Web 应用程序能够与蓝牙低功耗 (BLE) 设备进行通信。这开辟了物联网用例，例如直接从网页连接心率监视器、温度传感器和智能灯。&lt;/p&gt;</description></item><item><title>JavaScript 模块联盟：微前端实践</title><link>https://takao.blog/zh/web/module-federation/</link><pubDate>Tue, 09 Jul 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/module-federation/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/module-federation-zh.png" alt="Featured image of post JavaScript 模块联盟：微前端实践" /&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;Webpack 5 中引入的模块联合提供了用于构建微前端架构的运行时集成机制。与构建时集成方法不同，它使独立部署的应用程序能够在运行时共享代码，从而促进团队自治和增量迁移，而无需协调发布。&lt;/p&gt;</description></item><item><title>Git Squash Merge：团队的清理历史策略</title><link>https://takao.blog/zh/web/git-squash-merge/</link><pubDate>Tue, 21 May 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/git-squash-merge/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/git-squash-merge-zh.png" alt="Featured image of post Git Squash Merge：团队的清理历史策略" /&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;Git 历史记录是您的团队和未来的您的沟通工具。干净、可读的历史记录使调试、代码审查和发布管理变得更加容易。挤压合并是维护干净历史的主要策略之一，但了解何时以及如何使用它以及何时选择替代方案需要了解所涉及的权衡。本文提供了团队压缩合并策略的综合指南。&lt;/p&gt;</description></item><item><title>用于实时应用程序的 WebSocket：完整指南</title><link>https://takao.blog/zh/web/websocket-applications/</link><pubDate>Tue, 14 May 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/websocket-applications/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/websocket-applications-zh.png" alt="Featured image of post 用于实时应用程序的 WebSocket：完整指南" /&gt;&lt;p&gt;实时功能已成为现代 Web 应用程序的基本期望。 WebSocket 通过单个 TCP 连接提供全双工通信通道，从而实现客户端和服务器之间的低延迟数据交换。本指南涵盖了 WebSocket 协议、实现模式、扩展策略以及构建生产级实时应用程序的实际注意事项。&lt;/p&gt;</description></item><item><title>Node.js 工作线程：并行处理实践</title><link>https://takao.blog/zh/web/nodejs-worker-threads/</link><pubDate>Tue, 23 Apr 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/nodejs-worker-threads/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/nodejs-worker-threads-zh.png" alt="Featured image of post Node.js 工作线程：并行处理实践" /&gt;&lt;p&gt;Node.js 传统上是单线程的，依赖异步 I/O 来实现并发。虽然此模型擅长处理 I/O 密集型工作负载，但 CPU 密集型操作会阻止事件循环并降低应用程序响应能力。在 Node.js 12 中稳定的工作线程通过在单独的 V8 隔离中运行 JavaScript 来在单个进程中提供真正的并行执行。本文介绍了在生产中使用工作线程的实用模式。&lt;/p&gt;</description></item><item><title>GitHub Actions Advanced：超越 CI/CD 基础知识的工作流程</title><link>https://takao.blog/zh/web/github-actions-advanced/</link><pubDate>Tue, 16 Apr 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/github-actions-advanced/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/github-actions-advanced-zh.png" alt="Featured image of post GitHub Actions Advanced：超越 CI/CD 基础知识的工作流程" /&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;GitHub Actions 已经从一个简单的 CI/CD 工具发展成为一个全面的自动化平台。虽然基本工作流程有详细记录，但该平台的高级功能（可重用工作流程、复合操作、矩阵策略和部署模式）支持复杂的自动化管道。本文探讨了构建复杂 CI/CD 系统的团队的这些高级功能。&lt;/p&gt;</description></item><item><title>ESLint Flat Config：旧版 .eslintrc 的迁移指南</title><link>https://takao.blog/zh/web/eslint-flat-config/</link><pubDate>Mon, 26 Feb 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/eslint-flat-config/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/eslint-flat-config-zh.png" alt="Featured image of post ESLint Flat Config：旧版 .eslintrc 的迁移指南" /&gt;&lt;p&gt;ESLint v9.0 于 2024 年发布，将平面配置系统 (&lt;code&gt;eslint.config.js&lt;/code&gt;) 设为默认值，取代了已使用十多年的旧版 &lt;code&gt;.eslintrc&lt;/code&gt; 格式。本迁移指南涵盖了完整的迁移过程、新概念和实际示例。&lt;/p&gt;
&lt;h2 id="为什么采用扁平化配置"&gt;为什么采用扁平化配置？
&lt;/h2&gt;&lt;p&gt;遗留的 &lt;code&gt;.eslintrc&lt;/code&gt; 系统存在几个问题：配置级联使行为变得不可预测，基于目录的解析很复杂，JSON/YAML 缺乏对函数和注释的支持，以及难以编写可共享的配置。扁平配置通过单个配置文件、通过 JavaScript 数组的显式组合、简化的插件解析和完整的 JavaScript 原生语法来解决这些问题。&lt;/p&gt;</description></item><item><title>Service Workers：Web 应用程序的高级离线策略</title><link>https://takao.blog/zh/web/service-workers-offline/</link><pubDate>Mon, 12 Feb 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/service-workers-offline/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/service-workers-offline-zh.png" alt="Featured image of post Service Workers：Web 应用程序的高级离线策略" /&gt;&lt;p&gt;Service Worker 是支持离线的渐进式 Web 应用程序的基础。随着 Chrome、Firefox、Safari 和 Edge 浏览器的普遍支持，构建弹性离线体验是一项生产要求，而不是逐步增强。本指南涵盖了缓存、同步和离线优先架构的高级策略。&lt;/p&gt;</description></item><item><title>Vite插件开发：从零到量产</title><link>https://takao.blog/zh/web/vite-plugin-dev/</link><pubDate>Mon, 05 Feb 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/vite-plugin-dev/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/vite-plugin-dev-zh.png" alt="Featured image of post Vite插件开发：从零到量产" /&gt;&lt;p&gt;Vite 的插件系统是其最强大的功能之一，允许开发人员扩展和自定义构建管道。无论您需要转换文件类型、注入构建时常量还是与其他工具集成，Vite 插件 API 都可以让您完全控制。&lt;/p&gt;</description></item><item><title>Git 子模块：有效管理嵌套存储库</title><link>https://takao.blog/zh/web/git-submodules/</link><pubDate>Mon, 22 Jan 2024 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/git-submodules/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/git-submodules-zh.png" alt="Featured image of post Git 子模块：有效管理嵌套存储库" /&gt;&lt;p&gt;Git 子模块允许您将一个 Git 存储库嵌套在另一个 Git 存储库中，同时为每个存储库维护独立的版本控制。它们对于管理共享库、第三方依赖项或需要精确提交级别控制的配置集合非常有用。然而，子模块具有复杂性，需要了解其底层机制。&lt;/p&gt;</description></item><item><title>Node.js Streams：数据处理实用指南</title><link>https://takao.blog/zh/web/nodejs-streams/</link><pubDate>Wed, 20 Dec 2023 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/nodejs-streams/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/nodejs-streams-zh.png" alt="Featured image of post Node.js Streams：数据处理实用指南" /&gt;&lt;p&gt;Node.js 流是该平台最强大但未得到充分利用的功能之一。它们可以在数据到达时逐段处理数据，而不是将整个数据集加载到内存中。这使得它们对于处理大文件、网络通信和实时数据转换至关重要。本指南涵盖了构建强大数据管道的流基础知识和实用模式。&lt;/p&gt;</description></item><item><title>Cloudflare Pages：静态站点托管指南</title><link>https://takao.blog/zh/web/cloudflare-pages/</link><pubDate>Tue, 28 Nov 2023 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/cloudflare-pages/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/how-to-cloudflare-pages-zh.png" alt="Featured image of post Cloudflare Pages：静态站点托管指南" /&gt;&lt;h1 id="cloudflare-pages现代网站的静态站点托管"&gt;Cloudflare Pages：现代网站的静态站点托管
&lt;/h1&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;Cloudflare Pages 是一个构建在 Cloudflare 全球网络基础设施之上的静态站点托管平台。它将世界级 CDN 的速度与直观的部署管道结合在一起，使其成为想要专注于构建而不是配置服务器的开发人员的绝佳选择。从投资组合网站到功能齐全的 Web 应用程序，Cloudflare Pages 可以处理内容交付、SSL 终止和扩展的繁重工作 - 所有这些都提供慷慨的免费套餐。本指南逐步介绍在 Cloudflare Pages 上设置和优化站点的每一步。&lt;/p&gt;</description></item><item><title>Cloudflare 设置指南：安全性和性能</title><link>https://takao.blog/zh/web/cloudflare/</link><pubDate>Tue, 28 Nov 2023 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/cloudflare/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/how-to-cloudflare-zh.png" alt="Featured image of post Cloudflare 设置指南：安全性和性能" /&gt;&lt;h1 id="cloudflare-设置提高网站安全性和性能"&gt;Cloudflare 设置：提高网站安全性和性能
&lt;/h1&gt;&lt;h2 id="介绍"&gt;介绍
&lt;/h2&gt;&lt;p&gt;对于任何网站所有者来说，安全性和速度是同一枚硬币的两个方面。缓慢的网站会让访问者感到沮丧并损害转化率；不安全的网站会使数据和声誉面临风险。 Cloudflare 通过位于访问者和源服务器之间的集成平台解决了这两个问题，该平台同时充当反向代理、内容交付网络和安全网关。本指南逐步介绍如何配置 Cloudflare 的核心功能（从基本 DNS 设置到高级安全规则），以便您可以放心地保护和加速您的网站。&lt;/p&gt;</description></item><item><title>Google Analytics：实施和分析指南</title><link>https://takao.blog/zh/web/google-analytics/</link><pubDate>Fri, 20 Oct 2023 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/google-analytics/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/how-to-google-analytics-zh.png" alt="Featured image of post Google Analytics：实施和分析指南" /&gt;&lt;h1 id="google-analytics实施和分析指南"&gt;Google Analytics：实施和分析指南
&lt;/h1&gt;&lt;p&gt;了解访问者如何与您的网站互动对于发展至关重要。 Google Analytics (GA) 是网络分析的行业标准，可提供对流量来源、用户行为和转化性能的深入洞察。本指南介绍了从帐户创建到高级优化的完整实施过程，以便您可以自信地开始做出数据驱动的决策。&lt;/p&gt;</description></item><item><title>OWASP ZAP：Web 应用程序安全测试指南</title><link>https://takao.blog/zh/web/owasp-zap/</link><pubDate>Fri, 20 Oct 2023 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/owasp-zap/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/how-to-owasp-zap-zh.png" alt="Featured image of post OWASP ZAP：Web 应用程序安全测试指南" /&gt;&lt;h1 id="owasp-zapweb-应用程序安全测试指南"&gt;OWASP ZAP：Web 应用程序安全测试指南
&lt;/h1&gt;&lt;p&gt;Web 应用程序安全性不再是可选的 — 它是保护用户数据和维护信任的基本要求。 OWASP ZAP（Zed Attack Proxy）是最流行的开源安全测试工具之一。它通过自动扫描和手动测试功能帮助开发人员和安全专业人员识别 Web 应用程序中的漏洞。本指南涵盖了从安装到修复的完整工作流程。&lt;/p&gt;</description></item><item><title>时光机：探索互联网档案馆</title><link>https://takao.blog/zh/web/waybackmachine/</link><pubDate>Mon, 11 Sep 2023 00:00:00 +0900</pubDate><guid>https://takao.blog/zh/web/waybackmachine/</guid><description>&lt;img src="https://takao.blog/img/thumbnail/wayback-machine-zh.png" alt="Featured image of post 时光机：探索互联网档案馆" /&gt;&lt;h1 id="时光机探索互联网档案馆"&gt;时光机：探索互联网档案馆
&lt;/h1&gt;&lt;p&gt;Wayback Machine 是万维网的数字时间胶囊。它由成立于 1996 年的非营利组织互联网档案馆 (Internet Archive) 运营，保存了数十年的网页快照，让任何人都能回到过去，看看网站几年前的样子。无论您是在进行研究、恢复丢失的内容，还是只是对互联网的历史感到好奇，Wayback Machine 都是一个不可或缺的工具。&lt;/p&gt;</description></item></channel></rss>