Chinh phục hoàn toàn Next.js 16+ với TypeScript: Từ cơ bản đến kiến trúc mới nhất

Đây là khóa học tất cả trong một (all-in-one) giúp bạn hoàn thiện Next.js 16+ dựa trên TypeScript, từ con số 0 cho đến cấp độ dự án thực tế. Bạn sẽ được học thông qua việc trực tiếp triển khai các khái niệm cốt lõi và mô hình thực tiễn của Next.js mới nhất, bao gồm App Router, Server Components, Server Actions, Caching, Cache Components, xác thực, tối ưu hóa hiệu suất và triển khai (deployment).

(5.0) 4 đánh giá

70 học viên

Độ khó Nhập môn

Thời gian Không giới hạn

JavaScript
JavaScript
React
React
TypeScript
TypeScript
Next.js
Next.js
JWT
JWT
JavaScript
JavaScript
React
React
TypeScript
TypeScript
Next.js
Next.js
JWT
JWT

Đánh giá từ những học viên đầu tiên

5.0

5.0

ㅅㅂ

100% đã tham gia

Khóa học này đỉnh vãi. Đúng kiểu ngon bổ rẻ luôn. Mình là lập trình viên backend nhưng vì công việc yêu cầu cả React nên đã làm React hơn 1 năm rồi, giờ chuyển sang Next.js nên mình đã chốt đơn khóa này. Nó giúp mình hiểu được nguyên lý hoạt động của hầu hết các tính năng cần thiết trong thực tế.

5.0

button_

30% đã tham gia

Các nhiệm vụ đã được thiết kế hoàn thiện nên cảm giác thực hiện nhiệm vụ rất thú vị! Hơn nữa, mỗi nhiệm vụ đều có gợi ý và được tổng hợp sẵn những phần nào cần suy ngẫm cũng như những phần nào có thể học hỏi được, nên rất tốt cho việc học tập.

5.0

귀한 불도새

21% đã tham gia

Vì đã theo dõi các bài giảng của anh Sukoding từ trước nên tôi cũng rất mong đợi khóa học Next lần này, và quả nhiên ngay từ phần mục lục đã cảm nhận được sự tỉ mỉ rồi. Tôi nghĩ các bài giảng của anh Sukoding không chỉ có nền tảng vững chắc mà còn giúp người học có thể tự thực hành thông qua các nhiệm vụ (mission), là một khóa học rất tốt để rèn luyện khả năng tự lập. Ngay cả trong thời đại AI, dù chúng ta có thể không còn phải tự tay viết code nữa thì những kiến thức cơ bản vẫn luôn quan trọng. Tôi đang sử dụng Next trong công việc thực tế nên đã đăng ký học để hiểu rõ và vận dụng tốt hơn, và khóa học thực sự đã giúp ích cho tôi rất nhiều. Xin cảm ơn anh.

Bạn sẽ nhận được điều này sau khi học.

  • Bạn có thể học mọi thứ về Next.js tính đến năm 2026.

  • Nội dung này được xây dựng dựa trên phiên bản mới nhất (16) ngay từ đầu. Tất cả mọi thứ đều là mới nhất.

  • Có thể thiết kế và triển khai dự án Next.js 16+ App Router dựa trên TypeScript từ đầu.

  • Khả năng phân biệt và sử dụng đúng cách giữa Server Components và Client Components

  • Bạn có thể triển khai logic xử lý dữ liệu mà không cần API bằng cách sử dụng Server Actions.

  • Bạn có thể lựa chọn chiến lược fetch dữ liệu, lưu bộ nhớ đệm (caching) và render của Next.js sao cho phù hợp với từng tình huống.

  • Tìm hiểu cách sử dụng Unstable_Cache và Cache Components.

  • Học cách kết hợp và sử dụng Next.js với Tanstack Query.

  • Có thể phát triển ứng dụng Next.js có tính đến SEO và hiệu suất.

  • Hiểu về cấu trúc dự án và các mô hình phát triển Next.js có thể áp dụng trực tiếp vào thực tế.

  • Bạn có thể xây dựng và hoàn tất việc triển khai ứng dụng Next.js.

Next.js dễ hiểu ngay cả với người không chuyên
🛩 Bước 7 trong lộ trình học Front-end của Sucoding! 🛩

Tác giả sách bán chạy nhất trong lĩnh vực nhập môn Front-end

Khóa học được tạo bởi tác giả của cuốn sách bán chạy nhất trong lĩnh vực nhập môn Front-end!

Xuất bản 『Tự học lập trình HTML+CSS+JavaScript』 năm 2022! 🎉
Xuất bản 『Lập trình Front-end: Hiểu sâu biết rộng』 năm 2023! 🎉
Xuất bản 『Tự học lập trình Vue.JS』 năm 2024! 🎉
Xuất bản 『Tự học lập trình React』 năm 2025! 🎉

Sucoding là một tác giả đương nhiệm đã viết về nhiều lĩnh vực khác nhau của front-end.
Tất cả các cuốn sách đã xuất bản đều là sách bán chạy nhất. 😎
Đây là một bài giảng đặc biệt được tạo ra bởi Sucoding, người đang dẫn đầu trong các bài giảng về front-end!

Tôi thắc mắc

Học những gì vậy?

Next.js 16 là một framework full-stack dựa trên React, cung cấp mọi tính năng để tạo ra các dịch vụ web hiện đại, từ
Server Components (RSC), App Router, chiến lược bộ nhớ đệm dữ liệu và render, cho đến tối ưu hóa SEO và hiệu suất.

Tuy nhiên, Next.js đang phát triển các phiên bản rất nhanh chóng,
và nếu chỉ dựa vào tài liệu chính thức thì thật không dễ dàng để phán đoán “vậy rốt cuộc trong thực tế nên dùng cái gì”,
hay “cái này khi nào nên dùng ở server, khi nào nên dùng ở client”.

Trong khóa học này,
👉 chúng ta sẽ học tập trung vào những khái niệm cốt lõi nhất nhất định phải biết trong Next.js 16.
Thay vì tập trung vào lý thuyết, chúng ta sẽ tập trung vào các tiêu chuẩn và mô hình được sử dụng ngay trong các dự án thực tế.

Loại bỏ bớt những thiết lập và tùy chọn phức tạp hoặc có tính ứng dụng thực tiễn thấp,

  • Hiểu cấu trúc định tuyến (routing) dựa trên App Router

  • Phân chia vai trò rõ ràng giữa Server Component và Client Component

  • Chiến lược tìm nạp dữ liệu và bộ nhớ đệm (cache, revalidate, no-store)

  • Học tập hoàn hảo về "Cache Component", một trong những hệ thống caching mới nhất

  • Thiết lập tiêu chuẩn cho Render tĩnh (SSG) và Render động (SSR)

  • Ý nghĩa chính xác của ranh giới Loading / Error / Not Found

  • Nguyên lý hoạt động của Link, Prefetch, Router Cache

  • Server Actions và các mô hình sử dụng thực tế

  • Cách thiết kế SEO và Metadata

Nội dung được xây dựng xoay quanh những chủ đề cốt lõi thường gặp nhất trong thực tế với Next.js 16.

Thông qua đó,
ngay cả người mới bắt đầu cũng có thể hiểu rõ luồng render và luồng dữ liệu của Next.js,
và phát triển thành một lập trình viên có thể giải thích được
“tại sao đoạn mã này lại hoạt động trên server”, hay “tại sao trang này lại được lưu vào bộ nhớ đệm (cache)”.

Không chỉ đơn thuần là “đã từng dùng thử Next.js”, mà là bài giảng giúp bạn xây dựng
tiêu chuẩn để hiểu và có thể lựa chọn Next.js. 🚀

Hoàn toàn phù hợp ngay cả với người mới bắt đầu,

Tôi sẽ hướng dẫn cho bạn mọi thứ từng bước một từ những điều cơ bản nhất.

Next.js 16 dựa trên nền tảng React, nhưng
khi mới tiếp cận,
bạn có thể cảm thấy khó khăn vì những khái niệm xa lạ như Server Component, cấu trúc routing, phương thức rendering, khái niệm caching.

“Tại sao đoạn mã này lại chạy trên server?”
“Khi nào thì nên dùng Client Component?”
Nếu là lần đầu tiên, việc cảm thấy bối rối là điều đương nhiên.
Đừng lo lắng nhé!

Trong khóa học này,
để ngay cả những người lần đầu tiếp cận Next.js cũng có thể hiểu được,
tôi sẽ giải thích từng bước một từ những điều cơ bản nhất theo dòng chảy của nội dung.

  • Trang web được render như thế nào

  • Vai trò giữa server và client được phân chia như thế nào

  • Dữ liệu được lấy khi nào và ở đâu

giúp bạn giải thích để có thể hình dung rõ ràng trong đầu như một bức tranh.

Điểm đặc biệt chỉ có ở
bài giảng của Sucoding

Chương trình giảng dạy tập trung vào các nội dung cốt lõi có thể áp dụng ngay vào thực tế

  • Chúng ta sẽ học bằng cách chọn lọc chỉ những khái niệm cốt lõi thực sự được sử dụng thường xuyên trong thực tế trong số các tính năng phong phú của Next.js 16..

  • Tập trung vào cấu trúc và tiêu chuẩn có thể áp dụng ngay vào dự án thực tế như App Router, Server Component, data fetching/caching, chiến lược rendering.

Bài giảng tập trung vào thực hành và các ví dụ trực quan, dễ hiểu

  • Để ngay cả những người lần đầu tiếp cận Next.js cũng có thể hiểu được, chúng tôi cung cấp giải thích từng bước theo thứ tự
    Khái niệm → Luồng dữ liệu → Mã nguồn.

  • Không chỉ là những ví dụ sao chép lại một cách đơn thuần, khóa học được thiết kế với trọng tâm là thực hành, nơi bạn tự tay xây dựng và chỉnh sửa cấu trúc, giúp bạn có thể áp dụng ngay vào công việc thực tế.

Hiểu rõ sự khác biệt giữa Server Component và Client Component

  • Giải thích rõ ràng dựa trên luồng render các câu hỏi như "Tại sao mã này lại thực thi trên server?" hay "Khi nào cần đến Client Component?".

  • Bạn có thể hiểu một cách tự nhiên về sự khác biệt trong tư duy khi chỉ sử dụng React so với khi sử dụng Next.js.

Áp dụng hoàn hảo cả các tính năng của phiên bản TypeScript mới nhất

  • Bài giảng được xây dựng theo cú pháp và phương pháp thiết kế mới nhất, phản ánh cấu trúc mới nhất và các mô hình được đề xuất của Next.js 16.

  • Để không bị lung lay trước những thay đổi của phiên bản, khóa học tập trung giải thích các khái niệm chính thức và nguyên lý hoạt động, hướng tới mục tiêu giúp bạn trở thành nhà phát triển có thể ứng phó linh hoạt với các bản cập nhật trong tương lai.

Công khai không giới hạn các mẹo thực tế và bí quyết của nhà phát triển

  • Tôi sẽ chỉ ra những điểm thường gây nhầm lẫn và các ví dụ về sai lầm trong thực tế mà tài liệu chính thức ít khi đề cập đến.

  • Không chỉ dừng lại ở việc giải thích các tính năng đơn thuần,
    khóa học còn truyền tải cả quan điểm thiết kế và các tiêu chuẩn để phát triển thành một nhà phát triển Front-end..

Phản hồi tùy chỉnh theo học viên và hỗ trợ Q&A tỉ mỉ

  • Cung cấp phản hồi nhanh chóng và thân thiện cho các câu hỏi của học viên.

  • Chỉ ra những lỗi thường gặp hoặc những phần dễ gây nhầm lẫn, giúp tối đa hóa hiệu quả học tập của mỗi cá nhân., we maximize the learning effectiveness for each individual.

Tối ưu hóa
cho trình độ của người mới bắt đầu
Chương trình giảng dạy cốt lõi

Phần 01 - Chuẩn bị

Trong phần này, chúng ta sẽ tiến hành các bước chuẩn bị cơ bản để tham gia bài giảng trước khi bắt đầu thực hành chính thức.
Chúng tôi sẽ hướng dẫn từ cách tải mã ví dụ sẽ sử dụng xuyên suốt bài giảng, hướng dẫn môi trường phát triển để tăng hiệu quả thực hành, cho đến cách đăng ký custom snippet để giảm thiểu các thao tác lặp đi lặp lại.

Phần 02 - Bắt đầu

Trong phần này, chúng ta sẽ tìm hiểu khái niệm về Next.js từng bước một từ đầu, và thực hiện quá trình bắt đầu dự án thực tế.
Sau khi hiểu Next.js là loại framework nào, chúng ta sẽ so sánh sự khác biệt giữa phương pháp cài đặt trực tiếp và phương pháp cài đặt dựa trên CRA để tổng hợp các đặc điểm của từng loại. Sau đó, chúng ta sẽ xem xét cấu trúc thư mục cơ bản và vai trò của các tệp trong dự án đã tạo, đồng thời sắp xếp lại cấu trúc một lần nữa trước khi tiến hành thực hành.

Thư viện vs Khung làm việc (Framework)

Khái niệm Thư viện và Framework

Phần 03 - Server Component và Client Component

Trong phần này, chúng ta sẽ đi sâu vào tìm hiểu về Server Component và Client Component, những khái niệm cốt lõi của Next.js.
Chúng ta sẽ tìm hiểu vai trò của từng loại component, đồng thời xem xét từng bước cách chúng được tạo ra và được sắp xếp dựa trên tiêu chí nào.

Ngoài ra, chúng tôi cũng giải thích cách gọi Server Component từ Client Component và cách thức hoạt động của children trong cấu trúc layout.

Cuối cùng, chúng ta sẽ làm rõ những hiểu lầm về Client Component và lỗi Hydration mà nhiều nhà phát triển thường gặp phải,
đồng thời trực tiếp trải nghiệm cách phân chia và thiết kế Server/Client Component trong dự án thực tế thông qua bài thực hành ứng dụng quản lý công việc (To-do list).

Server Component

Chiến lược cốt lõi của cây thành phần

Phần 04 - App Router

Trong phần này, chúng ta sẽ hệ thống lại một cách bài bản về nguyên lý hoạt động và cấu trúc routing của Next.js App Router.
Sau khi tìm hiểu cấu trúc URL được ánh xạ với các thư mục như thế nào, chúng ta sẽ lần lượt xem xét các phương thức routing cốt lõi như route cơ bản, route lồng nhau và route động.

Ngoài ra, bạn sẽ học cách xử lý query string, cách thiết kế cấu trúc thư mục bằng cách sử dụng thư mục riêng tư (private folders) và nhóm route (route groups),
đồng thời làm rõ sự khác biệt và tiêu chuẩn sử dụng giữa các phương thức chuyển đổi route bằng LinkuseRouter..

Cuối cùng, thông qua nhiệm vụ, bạn sẽ tự mình thiết kế và triển khai các route, hoàn thành việc thực hành toàn bộ luồng hoạt động của App Router.

Cấu trúc URL

Luồng hoạt động của App Router

Phần 05 - Các tệp định tuyến đặc biệt

Trong phần này, chúng ta sẽ tổng hợp vai trò và cách thức hoạt động của các tệp định tuyến đặc biệt chính
được sử dụng trong Next.js App Router.

Chúng ta sẽ tìm hiểu cách xử lý các tình huống lỗi thông qua not-foundglobal-not-found,
so sánh sự khác biệt giữa layout.tsxtemplate.tsx để hiểu về tiêu chuẩn tái sử dụng và khởi tạo layout.template.tsx.

Ngoài ra, thông qua loading.tsx, error.tsx, và global-error.tsx, chúng ta sẽ tổng hợp lại cách thiết kế trạng thái tải và ranh giới lỗi, đồng thời rèn luyện cảm giác sử dụng các tệp định tuyến đặc biệt trong dự án thực tế bằng cách phân tách và áp dụng bố cục thông qua các nhiệm vụ.

Layout

(Nhiệm vụ) Tách layout

Phần 06 - Thiết lập Metadata

Trong phần này, chúng ta sẽ tìm hiểu từng bước cách thiết lập meta data trong Next.js App Router.
Trước tiên, chúng ta sẽ học cách thiết lập meta data cơ bản bằng cách sử dụng đối tượng metadata, và thông qua các tùy chọn title, absolute, default để hiểu cách meta data được hợp nhất và kế thừa giữa các trang như thế nào.

Sau đó, chúng ta sẽ tìm hiểu cách tạo siêu dữ liệu (metadata) động theo dữ liệu bằng cách sử dụng hàm generateMetadata,
đồng thời tổng hợp luồng xử lý siêu dữ liệu và những thay đổi mới nhất trong môi trường React 19.

Thông qua đó, bạn sẽ có được tiêu chuẩn thiết kế siêu dữ liệu thực tế cân nhắc đến cả SEO và trải nghiệm người dùng.

Nơi sử dụng siêu dữ liệu (metadata)

Tiêu đề tab trình duyệt

Phần 07 - Fetch dữ liệu

Trong phần này, chúng ta sẽ tập trung tìm hiểu về cách fetch dữ liệu trong môi trường Next.js App Router.
Trước tiên, chúng ta sẽ tìm hiểu cách hoạt động của API fetch được sử dụng trong Server Component, sau đó tổng hợp cách xử lý loading và xử lý lỗi dựa trên Server Component.

Sau đó, chúng ta sẽ so sánh phương thức fetch dữ liệu sử dụng hook use với cách lấy dữ liệu từ Client Component, đồng thời xem xét vai trò và hạn chế của từng phương thức.

Ngoài ra, chúng ta sẽ cùng nhau suy nghĩ về chiến lược tìm nạp dữ liệu (data fetching) để biết nên chọn tìm nạp phía server hay phía client dựa trên tiêu chí nào trong các dự án thực tế.

Cuối cùng, thông qua nhiệm vụ, bạn sẽ trực tiếp triển khai logic fetch dữ liệu và tổng kết lại bằng thực hành quy trình fetching hoàn chỉnh, bao gồm cả xử lý trạng thái loading và lỗi.

Fetch API

Nhiệm vụ! Tìm nạp dữ liệu!

Phần 08 - Chiến lược Rendering

Trong phần này, chúng ta sẽ hệ thống lại các chiến lược hiển thị (rendering) tiêu biểu của ứng dụng web như CSR, SSR, SSG và ISR dưới góc nhìn của Next.js App Router.

Sau khi hiểu rõ từng phương thức rendering được thực thi khi nào và tạo ra kết quả gì,
chúng ta sẽ tìm hiểu từng bước cách Server Component (RSC) kết hợp với các chiến lược rendering sẵn có như thế nào.

Ngoài ra, chúng ta sẽ thực hành cách kiểm tra trực tiếp xem một trang trong dự án thực tế được render tĩnh hay render động, đồng thời tổng hợp tiêu chuẩn để đánh giá chính xác chiến lược rendering thông qua các tình huống dễ nhầm lẫn với CSR và những sai lầm thường gặp.

Cuối cùng, chúng ta sẽ trực tiếp kiểm tra ISR rendering và cùng suy nghĩ về cách cân bằng giữa hiệu suất và tính cập nhật của dữ liệu.

Rendering ISR

Render RSC

Phần 09 - Bộ nhớ đệm (Cache)

Trong phần này, chúng ta sẽ hệ thống lại các chiến lược bộ nhớ đệm (caching) của Next.js.

Đầu tiên, chúng ta sẽ tìm hiểu về mặt khái niệm 4 lớp bộ nhớ đệm (caching layers) mà Next.js cung cấp, đồng thời xem xét thời điểm việc lưu bộ nhớ đệm xảy ra và khi nào nó bị vô hiệu hóa, tập trung trọng tâm vào Data Cache.

Sau đó, bạn sẽ trực tiếp triển khai phương thức vô hiệu hóa theo yêu cầu (on-demand revalidation) bằng cách sử dụng revalidatePathrevalidateTag cùng với Server Actions. Không chỉ dừng lại ở mức độ sử dụng API đơn thuần, chúng ta sẽ cùng tổng hợp các tiêu chí đánh giá để quyết định nên chọn chiến lược vô hiệu hóa nào trong từng tình huống cụ thể.

Ngoài ra, chúng ta sẽ so sánh sự khác biệt giữa Request Memoization, Full Route Cache, và Router Cache để hiểu rõ vị trí và phạm vi hoạt động của từng loại bộ nhớ đệm.

Cuối cùng, thông qua các nhiệm vụ, bạn sẽ áp dụng chiến lược caching vào danh sách bài viết và ứng dụng To-do list, từ đó lĩnh hội cách thức hoạt động thực tế của cache thông qua thực hành.

Caching

Tài liệu trực quan về bộ nhớ đệm (caching)

Phần 10 - Route Handler

Trong phần này, chúng ta sẽ tìm hiểu về cách triển khai logic phía server trong môi trường App Router.

Sau khi hiểu cấu trúc cơ bản của Route Handler, chúng ta sẽ lần lượt tìm hiểu cách xử lý Query String, Dynamic Segment và dữ liệu trong Body. Tiếp theo, chúng ta sẽ thực hành cách đọc và thiết lập Header và Cookie, đồng thời kiểm tra cách xử lý xác thực hoặc nhận dạng người dùng ở cấp độ máy chủ.

Ngoài ra, chúng tôi cũng sẽ đề cập đến các chiến lược lưu trữ bộ nhớ đệm (caching) trong Route Handler, giúp bạn học cách thiết kế quy trình xử lý phía máy chủ thực tế thay vì chỉ dừng lại ở việc triển khai API đơn thuần.

Cuối cùng, thông qua nhiệm vụ UI mời nhóm và tải xuống tệp Excel, chúng ta sẽ hoàn thiện luồng cộng tác giữa máy chủ và máy khách.

Sử dụng Postman

Tìm hiểu về Route Handler

Phần 11 – Hình ảnh và Phông chữ

Trong phần này, chúng ta sẽ tìm hiểu về chiến lược tối ưu hóa của Next.js.

Trước tiên, chúng ta sẽ tìm hiểu nguyên lý hoạt động bên trong của thành phần next/image, đồng thời xem xét cách tỷ lệ 1x/2x và srcset được tạo ra như thế nào. Sau đó, chúng ta sẽ thực hành cách cung cấp hình ảnh hiệu quả trong môi trường responsive bằng cách sử dụng thuộc tính sizes.

Ngoài ra, chúng tôi sẽ áp dụng phông chữ web và phông chữ địa phương bằng cách sử dụng next/font, đồng thời tổng hợp mối quan hệ giữa chiến lược tải phông chữ và sự thay đổi bố cục (layout shift). Cuối cùng, chúng tôi sẽ hoàn thiện bằng cách tích hợp với Tailwind để áp dụng các chiến lược tối ưu hóa vào dự án thực tế.

Nhiệm vụ mời nhóm

Tải xuống file Excel quản lý công việc

Phần 12 – Quản lý trạng thái client toàn cục và thay đổi chủ đề

Trong phần này, chúng ta sẽ phân tích so sánh các chiến lược quản lý trạng thái toàn cục.

Trước hết, chúng ta sẽ tìm hiểu về những hạn chế của mô hình props drilling và tổng hợp cách quản lý trạng thái toàn cục cơ bản bằng Context API. Tiếp theo, chúng ta sẽ so sánh mô hình Redux Toolkit và Zustand để tổng hợp ưu nhược điểm cũng như thời điểm sử dụng của từng loại.

Ngoài ra, chúng tôi cũng sẽ đề cập đến phương pháp triển khai chế độ sáng/tối dựa trên Tailwind và chiến lược chủ đề sử dụng next-themes. Cuối cùng, thông qua nhiệm vụ làm máy tính, chúng ta sẽ thực hành triển khai logic quản lý trạng thái và thay đổi chủ đề, từ đó nắm vững luồng thiết kế trạng thái toàn cục.

Áp dụng chế độ tối (Dark mode)

Tại sao hiện tượng nhấp nháy (flicker) lại xảy ra?

Phần 13 – Làm trang web phim

Trong phần này, chúng ta sẽ áp dụng tích hợp những nội dung đã học cho đến nay thông qua dự án thực tế.

Sử dụng TMDB API để triển khai trang chủ, trang chi tiết và chức năng tìm kiếm, từ đó trải nghiệm cấu trúc dịch vụ thực tế. Trong quá trình này, chúng ta sẽ áp dụng chiến lược tối ưu hóa hình ảnh và bộ nhớ đệm (cache) truy xuất dữ liệu, đồng thời cùng nhau xem xét các phương thức xử lý bảo mật.

Ngoài ra, chúng tôi sẽ áp dụng TanStack Query để phân tích so sánh các chiến lược tìm nạp dữ liệu phía máy khách (client fetching) và hiểu rõ sự khác biệt so với tìm nạp dữ liệu phía máy chủ (server fetching). Cuối cùng, chúng tôi sẽ tiến hành triển khai và kiểm tra xem các chiến lược kết xuất (rendering) thay đổi như thế nào sau khi triển khai.

Trang web phim

Trang tìm kiếm phim

Phần 14 – Các mẫu định tuyến nâng cao

Trong phần này, chúng ta sẽ tìm hiểu về các kỹ thuật định tuyến nâng cao của Next.js.

Hiểu khái niệm về Parallel Routes và Intercepting Routes, sau đó áp dụng vào dự án thực tế để triển khai cấu trúc dựa trên modal.

Không chỉ dừng lại ở việc triển khai chức năng đơn thuần, chúng ta sẽ tiếp cận dưới góc độ thiết kế để xem cấu trúc route kết nối với trải nghiệm người dùng như thế nào.

Ngoài ra, chúng tôi cũng sẽ tổng hợp cách bộ nhớ đệm của bộ định tuyến (router cache) hoạt động trong cấu trúc này, đồng thời tìm hiểu mối quan hệ giữa định tuyến nâng cao và chiến lược bộ nhớ đệm.

Cuối cùng, chúng ta sẽ hoàn thiện việc áp dụng vào thực tế bằng cách mở rộng trang web xem phim.

Điều hướng nâng cao

Mở rộng định tuyến nâng cao

Phần 15 – Cache Components

Trong phần này, chúng ta sẽ tập trung vào Cache Components, một tính năng cốt lõi của Next.js 16.

Hiểu nguyên lý bộ nhớ đệm dựa trên use cache và phân tích phạm vi ảnh hưởng của các thành phần bộ nhớ đệm (cache components).-based caching and analyze the scope of influence of cache components.

Ngoài ra, chúng ta cũng sẽ cùng xem xét các trường hợp không thể lưu bộ nhớ đệm (caching) và ảnh hưởng của các phép toán không xác định (non-deterministic operations) đối với bộ nhớ đệm.

Tiếp theo, chúng ta sẽ thực hành cách kiểm soát thời gian tồn tại của bộ nhớ đệm bằng cách sử dụng cacheLife, đồng thời thiết kế chiến lược kết hợp giữa nội dung tĩnh và nội dung động.

Thông qua phần này, chúng tôi sẽ tổng hợp các tiêu chuẩn để có thể áp dụng mô hình caching mới nhất vào thực tế.

Lý thuyết về thành phần bộ nhớ đệm (Cache Component)

Ứng dụng Instagram

Phần 16 – Dự án cuối khóa

Trong phần cuối cùng, chúng ta sẽ hoàn thiện kiến trúc thực tế.

Kết nối MongoDB và kiểm tra cấu trúc API thông qua Swagger.

Tiếp theo, chúng tôi sẽ áp dụng chế độ sáng/tối (light/dark mode) và triển khai đăng nhập Kakao bằng cách sử dụng cấu trúc Parallel Routes và Intercepting Routes.

Không chỉ là chức năng đăng nhập đơn thuần, chúng ta sẽ thiết kế chiến lược token và luồng xác thực để hoàn thiện cấu trúc ở mức độ dịch vụ thực tế.

Phần này là quá trình tích hợp tất cả các chiến lược rendering, caching, routing và logic server đã học từ trước đến nay.

Dự án cuối khóa

Swagger

Chờ một chút!

Bạn có biết rằng các bài giảng cũng có 'phong cách' phù hợp với mình không?

Giống như một trò chơi bom tấn được mọi người công nhận nhưng có thể không thú vị đối với tôi,
bài giảng cũng không phải lúc nào cũng phù hợp với tất cả mọi người.

Dù là một bài giảng nhận được vô số lời khen ngợi thì vẫn có thể không phù hợp với bạn,
ngược lại, một bài giảng bình thường với ai đó lại có thể trở thành bài giảng tuyệt vời nhất đối với bạn.

Vì vậy, tất cả các bài giảng của tôi đều được công khai miễn phí ít nhất 10%.
Hãy tự mình nghe thử và kiểm tra xem phong cách của tôi có phù hợp với bạn không nhé!

Nếu bạn cảm thấy phong cách của tôi phù hợp với mình,
tôi sẽ hướng dẫn bạn con đường ngắn nhất để trở thành nhà phát triển Front-end.
Hãy tin tưởng và đi theo tôi! 🚀

Câu hỏi thường gặp

Q. Tôi là người mới bắt đầu và thực sự không biết gì cả. Liệu có ổn không?
A. Vâng. Hoàn toàn ổn ạ. Đây là khóa học được thiết kế riêng để ngay cả những người không biết gì cũng có thể học được.

Q. Có cần kiến thức tiên quyết không?

A. Vâng, khóa học này nhất định yêu cầu kiến thức
tiên quyết về HTML5/CSS3/JavaScript/TypeScript/React.JS.

Lưu ý trước khi học

Môi trường thực hành

  • Hệ điều hành và phiên bản (OS): Windows, macOS

  • Công cụ sử dụng: Visual Studio Code, Chrome

  • Cấu hình PC: Ngay cả cấu hình thấp nhất có thể lướt web cũng được.

Tài liệu học tập

  • Cung cấp tài liệu học tập theo từng bài giảng để tiến hành thực hành.


Kiến thức tiên quyết và lưu ý

  • Người hoàn toàn không chuyên hoặc người mới bắt đầu đều có thể theo học

  • Tuy nhiên, bạn cần phải học trước về HTML5/CSS3/JavaScript/TypeScript/React.JS.

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Nhà phát triển đã từng sử dụng Next.js nhưng vẫn còn nhầm lẫn về App Router và Server Components

  • Nhà phát triển muốn chuyển đổi từ Pages Router sang Next.js (App Router) mới nhất

  • Nhà phát triển Frontend muốn học Next.js một cách bài bản với TypeScript

  • Những người muốn tạo dự án cấp độ dịch vụ thực tế bằng Next.js

  • Những người đã quen thuộc với React nhưng chưa nắm vững cấu trúc của Next.js một cách rõ ràng.

  • Nhà phát triển muốn tổng hợp các phương pháp phát triển dựa trên Next.js 16+ mới nhất trong một lần.

Cần biết trước khi bắt đầu?

  • Yêu cầu kiến thức tiên quyết về HTML, CSS, JavaScript, TypeScript, React.

Xin chào
Đây là sucoding

5,107

Học viên

303

Đánh giá

158

Trả lời

4.9

Xếp hạng

9

Các khóa học

Sucoding đang thực hiện các hoạt động giảng dạy lập trình
kết hợp cả hình thức trực tuyến và trực tiếp.

Dựa trên nhiều năm kinh nghiệm giảng dạy trực tiếp,
tôi luôn trăn trở mỗi ngày và nỗ lực không ngừng để giúp nhiều người hơn nữa có thể học lập trình một cách dễ dàng và thú vị.

Cho đến nay, tôi đã xuất bản 4 cuốn sách sau đây và đang dẫn đầu trong lĩnh vực giảng dạy front-end:

Ngoài ra, chúng tôi cũng cung cấp nhiều bài giảng miễn phí thông qua kênh YouTube.
👇 Hãy ghé thăm ngay bây giờ
[Link kênh YouTube]

Bạn cũng có thể nhanh chóng cập nhật nhiều tin tức giảm giá khác nhau trên trang web chính thức.
👇 Hãy truy cập ngay bây giờ
[Liên kết trang web chính thức]

Thêm

Chương trình giảng dạy

Tất cả

199 bài giảng ∙ (29giờ 28phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

4 đánh giá

5.0

4 đánh giá

  • sirubom12032826님의 프로필 이미지
    sirubom12032826

    Đánh giá 11

    Đánh giá trung bình 5.0

    Đã chỉnh sửa

    5

    21% đã tham gia

    Vì đã theo dõi các bài giảng của anh Sukoding từ trước nên tôi cũng rất mong đợi khóa học Next lần này, và quả nhiên ngay từ phần mục lục đã cảm nhận được sự tỉ mỉ rồi. Tôi nghĩ các bài giảng của anh Sukoding không chỉ có nền tảng vững chắc mà còn giúp người học có thể tự thực hành thông qua các nhiệm vụ (mission), là một khóa học rất tốt để rèn luyện khả năng tự lập. Ngay cả trong thời đại AI, dù chúng ta có thể không còn phải tự tay viết code nữa thì những kiến thức cơ bản vẫn luôn quan trọng. Tôi đang sử dụng Next trong công việc thực tế nên đã đăng ký học để hiểu rõ và vận dụng tốt hơn, và khóa học thực sự đã giúp ích cho tôi rất nhiều. Xin cảm ơn anh.

    • sucoding
      Giảng viên

      Chào bạn Buldosae quý mến! Rất cảm ơn bạn đã để lại một bài đánh giá đầy tâm huyết và ấm áp 😊 Mình càng có thêm nhiều động lực hơn khi biết bạn đã đồng hành cùng mình một cách bền bỉ từ những bài giảng trước. Mình rất vui vì bạn đã có ấn tượng tốt ngay từ phần bố cục mục lục của khóa học Next lần này, và cảm ơn bạn đã đánh giá tích cực về việc có thể tự học thông qua các nhiệm vụ (mission). Đúng như bạn đã nói, ngay cả trong thời đại AI thì những kỹ năng cơ bản vẫn luôn quan trọng, vì vậy mình đang cố gắng để không bỏ lỡ phần đó. Dù bạn đã đang sử dụng Next trong công việc thực tế nhưng khóa học vẫn mang lại sự giúp ích cho bạn, điều đó khiến mình cảm thấy thật sự ý nghĩa. Mình sẽ tiếp tục nỗ lực để truyền tải những nội dung có thể áp dụng ngay vào thực tế cùng với nền tảng cơ bản vững chắc trong tương lai. Một lần nữa xin chân thành cảm ơn bạn 🙏

  • sduddla님의 프로필 이미지
    sduddla

    Đánh giá 16

    Đánh giá trung bình 5.0

    5

    65% đã tham gia

    Nhờ việc giải thích lý do tại sao mỗi tính năng của Next.js lại cần thiết, tôi đã có thể vừa học vừa thực sự thấu hiểu thay vì chỉ đơn thuần học cách sử dụng. Nhờ đó, những lời giải thích đi từ khái niệm đến luồng hoạt động rồi đến mã nguồn được tích lũy trong đầu tôi một cách tự nhiên, và ngay cả những nội dung mới lạ tôi cũng có thể hiểu ngay lập tức. Các nhiệm vụ cũng rất tuyệt vời, vì không phải chỉ là gõ theo máy móc mà là phương pháp tự mình thiết kế cấu trúc, nên tôi đã có cơ hội hệ thống lại nội dung đã học và ghi nhớ lâu hơn nhiều. Tôi cảm thấy rất thích thú vì cách tư duy khi cân nhắc thiết kế cũng được rèn luyện đồng thời. Tôi sẽ cố gắng học hết các bài giảng còn lại thật chăm chỉ!

    • sucoding
      Giảng viên

      Chào bạn sy, Rất cảm ơn bạn vì bài đánh giá quý giá này! Nghe bạn chia sẻ rằng mình không chỉ dừng lại ở cách sử dụng các tính năng của Next.js mà còn hiểu được lý do tại sao chúng lại cần thiết, tôi cảm thấy rất tự hào và hạnh phúc với tư cách là người chuẩn bị bài giảng. Đúng như bạn nói, tôi muốn mang đến một trải nghiệm học tập kết nối tự nhiên từ Khái niệm → Luồng đi → Mã nguồn, và tôi rất vui vì bạn đã cảm nhận rõ điều đó. Tôi cũng rất cảm ơn phản hồi của bạn về việc tự tay thiết kế cấu trúc thông qua các nhiệm vụ (mission) đã giúp bạn hệ thống lại kiến thức một lần nữa và ghi nhớ lâu hơn. Thay vì chỉ làm theo một cách máy móc, trải nghiệm tư duy trong quá trình thiết kế sẽ giúp ích rất nhiều cho việc nâng cao kỹ năng, vì vậy tôi đã đặc biệt chú trọng xây dựng phần đó. Hy vọng bạn sẽ tiếp tục tận hưởng các bài giảng còn lại một cách thú vị và thu nhận được nhiều kiến thức bổ ích. Tôi sẽ luôn ủng hộ quá trình học tập của bạn. Xin cảm ơn! 🚀

  • tlqkf님의 프로필 이미지
    tlqkf

    Đánh giá 4

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Khóa học này đỉnh vãi. Đúng kiểu ngon bổ rẻ luôn. Mình là lập trình viên backend nhưng vì công việc yêu cầu cả React nên đã làm React hơn 1 năm rồi, giờ chuyển sang Next.js nên mình đã chốt đơn khóa này. Nó giúp mình hiểu được nguyên lý hoạt động của hầu hết các tính năng cần thiết trong thực tế.

    • button님의 프로필 이미지
      button

      Đánh giá 4

      Đánh giá trung bình 5.0

      5

      30% đã tham gia

      Các nhiệm vụ đã được thiết kế hoàn thiện nên cảm giác thực hiện nhiệm vụ rất thú vị! Hơn nữa, mỗi nhiệm vụ đều có gợi ý và được tổng hợp sẵn những phần nào cần suy ngẫm cũng như những phần nào có thể học hỏi được, nên rất tốt cho việc học tập.

      • sucoding
        Giảng viên

        Xin chào bạn button_! Cảm ơn bạn rất nhiều vì đã để lại những đánh giá quý báu 😊 Tôi rất vui khi biết rằng vì thiết kế đã được chuẩn bị sẵn trong nhiệm vụ nên bạn có thể tập trung hơn vào việc triển khai và cảm nhận được 'niềm vui khi tạo ra sản phẩm'! Ngoài ra, tôi cũng cảm thấy rất xứng đáng khi những gợi ý đi kèm trong mỗi nhiệm vụ, cùng với các điểm cần suy ngẫm và nội dung học tập được sắp xếp kỹ lưỡng đã giúp ích cho bạn. Trong tương lai, tôi sẽ tiếp tục nỗ lực để tạo ra những bài giảng có luồng học tập tự nhiên, giúp bạn có thể tự mình suy ngẫm và phát triển hơn nữa. Xin cảm ơn bạn 🙏

    Khóa học khác của sucoding

    Hãy khám phá các khóa học khác của giảng viên!

    Khóa học tương tự

    Khám phá các khóa học khác trong cùng lĩnh vực!

    Ưu đãi có thời hạn

    62 ₫

    20%

    2.088.629 ₫