Frontend & giao diện
Frontend chuyên sâu
Mô hình tư duy đúng cho React Server Components, server state với TanStack Query, TypeScript ở tầng type, widget ARIA chuẩn, Web Worker, quan sát người dùng thật và micro-frontend — những phần khó nằm dưới bề mặt framework.
7 phần144 phút đọcCập nhật 20 thg 9, 2026
Các phần
Phần 1
Mô hình tư duy đúng cho React Server Components: hai module graph, một ranh giới"use client" không đánh dấu loại component mà đánh dấu điểm bắt đầu của client graph. Bài này dựng lại mô hình tư duy cho RSC trong Next.js 16: thứ gì đi qua ranh giới, data fetching đặt ở đâu, waterfall, streaming và những lỗi khiến bundle phình hoặc lộ dữ liệu.
19 phút
Phần 2
Server state là cache, không phải state: TanStack Query v5 chuyên sâuDữ liệu từ server không thuộc về bạn — bạn chỉ giữ một bản sao có hạn dùng. Bài này đi sâu TanStack Query v5 theo góc nhìn cache: thiết kế query key, staleTime và gcTime, invalidation, optimistic update có rollback, Suspense, hydration với Next.js App Router, infinite query và khi nào không nên dùng nó.
19 phút
Phần 3
TypeScript ở tầng type cho API contract không thể dùng saiConditional type và infer, key remapping, template literal type biến "/users/:id/posts/:postId" thành params có type, một fetch client suy ra từ route map, lỗi có type, branded ID, satisfies và const type parameter, cầu nối Zod để type không nói dối — và khi nào nên dừng.
18 phút
Phần 4
Widget tuỳ biến dễ tiếp cận trong React: những pattern ARIA thực sự chạy đượcKhi phần tử native không còn đủ, ARIA là một bản hợp đồng bạn phải giữ. Accessibility tree và cách tính accessible name, roving tabindex hay aria-activedescendant, dựng combobox và tabs từng bước, live region thực sự lên tiếng, focus khi đổi route và cách kiểm thử tất cả.
23 phút
Phần 5
Đưa việc nặng ra khỏi main thread: Web Worker, transferable, SharedArrayBuffer và worker poolWeb Worker không phải phép màu cho mọi trang chậm. Bài này đi qua khi nào đáng chuyển việc sang worker, cái giá của structured clone, transferable, SharedArrayBuffer và COOP/COEP, tự viết RPC kiểu Comlink, cấu hình bundler, worker pool, huỷ việc bằng AbortSignal, ví dụ thật và các lựa chọn thay thế như scheduler.yield.
19 phút
Phần 6
Frontend observability thực chiến: RUM với web-vitals, source map riêng tư và trace từ trình duyệt tới backendCài Sentry mới là bước đầu. Bài này đi qua cách mình dựng frontend observability thật sự: lab và field data, thu RUM bằng web-vitals attribution, gửi beacon không mất, sampling, source map riêng tư, nhóm lỗi nhiễu, nối trace với backend qua traceparent, lọc PII, dashboard p75 và deploy marker.
24 phút
Phần 7
Micro-frontends nói thật: khi nào đáng làm, Module Federation 2.0 chạy ra sao và cái giá phải trảMicro-frontends giải quyết bài toán tổ chức — nhiều team deploy độc lập — chứ không phải bài toán kỹ thuật. Bài này so sánh năm cách ghép frontend, đi sâu vào Module Federation 2.0 (shared singleton, version skew, manifest, type, fallback) và chỉ ra khi nào một monorepo Turborepo là câu trả lời tốt hơn.
22 phút
Ôn tập cả chuỗi
Đã trả lời 0/14 · đúng 0
14 câu rút từ các phần của chuỗi. Trả lời ở đây cũng được tính cho quiz của từng bài.
Chuỗi khác
Chuỗi bài- AI engineering cho web developer4 phần · 93 phút đọcĐã đọc 0/4
- NestJS trong production3 phần · 72 phút đọcĐã đọc 0/3
- Hiệu năng web từ gốc8 phần · 85 phút đọcĐã đọc 0/8
- CSS và nền tảng web hiện đại5 phần · 52 phút đọcĐã đọc 0/5
- Kiến trúc frontend bền vững5 phần · 35 phút đọcĐã đọc 0/5
- Nghề kỹ sư4 phần · 27 phút đọcĐã đọc 0/4
- Business analysis cho đội sản phẩm6 phần · 173 phút đọcĐã đọc 0/6
- Bảo mật ứng dụng web9 phần · 190 phút đọcĐã đọc 0/9