从组件测试到真实浏览器:Playwright 与测试分层
理解 Playwright 的 Locator、自动等待和端到端测试,并为单元、组件与 E2E 测试划清职责边界。
Archive
按时间查看完整的开发记录。
理解 Playwright 的 Locator、自动等待和端到端测试,并为单元、组件与 E2E 测试划清职责边界。
从测试用例设计出发,理解 Vitest、React Testing Library、jsdom、异步查询与 Mock 的职责边界。
从 RAII、智能指针和移动语义出发,系统理解 Lambda、optional、variant、constexpr、Concepts、Ranges、并发与协程背后的现代 C++ 设计思想。
果说 C++11 是“现代 C++”的起点,C++20 是 concepts、ranges、modules、coroutines 的一次大规模升级,那么 C++26 更像是一次“补齐基础设施”的版本。它不只是增加一些语法糖,而是在几个长期痛点上给出标准化答案:编译期元编程如何更直接、接口约束如何语言化、异步执行如何组合、性能型容器和并发工具如何进入标准库。
React 核心机制:State、Props、Effect 与组件身份
TypeScript 和 Zod 都与“类型安全”有关,但它们工作的时间和对象完全不同。
一句话概括:
TypeScript 在编译阶段检查代码,Zod 在运行阶段检查真实数据。
学习 JavaScript 时,最容易混淆的是语言、运行环境和开发工具。JavaScript 规定变量、函数、 […]
我把一个前端项目的渲染层从手写 DOM 换成了 React,业务逻辑一行没改。这篇讲的不是 React 怎么用(那是上一篇),而是「换掉一层」这件事本身该怎么做才算做对——以及验收标准为什么不是「新代码能跑」。中途还撞到一个有意思的坑:验证工具自己把被测对象弄脏了。
这篇讲 React 最核心的那个转变——你不再动手改页面,而是描述页面该长什么样。从声明式渲染讲到 JSX、组件、Props、State、事件和列表 key。零基础可以顺着读;写过原生 DOM 的同学建议重点看第一节和第五节。
如果你写过一点 JavaScript,被 undefined 的报错折磨过、被拼错的属性名坑过,那么这篇是给你的。我们不背语法表,而是把 TypeScript 想成一件事——给代码里的每样东西,提前贴一张写清楚「它是什么」的标签。