Next.js dành cho các nhà phát triển FE hàng đầu!
Tạo dịch vụ bản đồ cửa hàng dễ dàng và thú vị.
Từ việc tạo dịch vụ bản đồ đến phân phối và tối ưu hóa
Bắt đầu với Next.js ngay lập tức
✅
Nếu bạn muốn xem mã của một dịch vụ web được tạo bằng Next.js,
✅
Nếu bạn muốn biết quy trình hoàn thiện một dịch vụ web từ đầu đến cuối bằng công nghệ front-end mà không cần mã back-end,
✅
Nếu bạn tò mò về các phương pháp tối ưu hóa khác nhau như SSR/SSG/CSR,
Nếu bạn là nhà phát triển front-end muốn tìm hiểu Next.js!
Khóa học này dành cho các nhà phát triển front-end ở cấp độ mới bắt đầu/mới tìm hiểu về Next.js.
Bạn có thể tìm hiểu tất cả các hàm và API cần thiết của Next.js bằng cách dễ dàng phát triển dịch vụ bản đồ sử dụng nhiều API khác nhau được Next.js hỗ trợ mà không cần bất kỳ mã phụ trợ nào.
Vậy tại sao lại là Next.js?
Next.js là một framework React mang đến trải nghiệm lập trình viên vượt trội, API đơn giản và trực quan, cùng nhiều tính năng tối ưu hóa. Nó hỗ trợ các phương thức SSR/SSG/CSR, đồng thời hỗ trợ các tính năng tối ưu hóa được thiết kế để thuận tiện cho nhà phát triển.
Sau khi làm việc với Next.js trong nhiều dự án, tôi nhận thấy những điểm mạnh của nó. Tôi muốn giới thiệu Next.js, dự kiến sẽ có tốc độ tăng trưởng nhanh hơn nữa trên thị trường front-end.
Giảm gánh nặng học tập,
Khái niệm này rõ ràng hơn.
Từ A đến Z với dịch vụ bản đồ
Bằng cách xây dựng một dịch vụ bản đồ, bạn sẽ học được tất cả các chức năng và API thiết yếu của Next.js cần thiết cho việc phát triển. Bằng cách tìm hiểu các API như next/link và next/image, có trong cả Next.js 12 và Next.js 13, bạn sẽ hiểu được những ưu điểm của v13.
Cải thiện kỹ năng phát triển front-end của bạn
Khi theo dõi các bài giảng, bạn sẽ học được những khái niệm cơ bản mà một nhà phát triển front-end cần biết, chẳng hạn như phát triển UI (HTML/CSS), hiệu suất và khả năng truy cập web, triển khai và đăng ký công cụ tìm kiếm.
Bài giảng hướng đến người học
Chúng tôi cung cấp mã nguồn cho mỗi lớp học, được sắp xếp thành các nhánh riêng biệt, để hỗ trợ quá trình học. Chúng tôi cũng cung cấp phụ đề cho tất cả các video bài giảng để đảm bảo bạn có thể theo dõi nội dung.
Bài giảng sẽ được cập nhật
Chúng tôi sẽ bổ sung thêm thông tin khi cần thiết. Chúng tôi cũng sẽ cập nhật khóa học với các tin tức liên quan đến Next.js 13.
10 điều bạn cần biết về API Next.js khi xây dựng dịch vụ bản đồ cửa hàng ✅
- Đi đến trang bản đồ/trang phản hồi với liên kết tiếp theo
- Tối ưu hóa hình ảnh logo/hình ảnh cửa hàng của bạn với next/image
- Đang tải tập lệnh bản đồ bằng next/script
- Truy xuất dữ liệu lưu trữ bằng API Routes
- Hiển thị trước các trang bản đồ bằng getStaticProps
- Kết xuất trước các tuyến đường động cho tất cả các cửa hàng với getStaticPaths
- Lấy dữ liệu trang phản hồi từ getServerSideProps
- Sự khác biệt về API giữa Next.js 12 và 13, chẳng hạn như next/link và next/image.
- Kiểm tra hiệu suất web và cải thiện khả năng truy cập web và SEO với Lighthouse.
- Triển khai các dự án Next.js thông qua Vercel
Chương trình học tập 📚
👉 Xem trước dự án bản đồ được tạo trong bài giảng (liên kết)
Phần 0: Thiết lập môi trường phát triển
- Trước khi tìm hiểu nội dung thực tế, chúng ta sẽ tìm hiểu các cài đặt cơ bản của Next.js.
- Bắt đầu một dự án với create-next-app và thiết lập eslint và prettier.
Phần 1: Hiểu về việc lấy dữ liệu
- Tìm hiểu nhiều kỹ thuật truy xuất dữ liệu khác nhau trong Next.js (SSR/SSG/CSR).
- Hiểu các nguyên tắc tối ưu hóa chuyển tiếp trang trong Next.js thông qua đầu ra bản dựng tiếp theo và tab mạng trong công cụ dành cho nhà phát triển.
- Tìm hiểu next/link và next/router.
Phần 2: Tạo giao diện người dùng tiêu đề
- Tìm hiểu API next/image để tải hình ảnh logo.
- Tìm hiểu về các tính năng và tối ưu hóa dung lượng của Next.js 13 next/image và Next.js 12 next/legacy/image.
- Dựa trên những gì bạn đã học ở Phần 1, chúng ta sẽ định tuyến trang bản đồ và trang phản hồi.
Phần 3: Tạo giao diện người dùng bản đồ
- Tìm hiểu API next/script để tải các tập lệnh bản đồ.
- Tìm hiểu cách lưu trữ trạng thái trong URL bằng next/router.
- Vẽ biểu tượng đánh dấu bằng hình ảnh đánh dấu sprite.
- Xử lý các sự kiện nhấp chuột cho bản đồ và điểm đánh dấu.
- Quản lý dữ liệu cửa hàng của bạn trên toàn cầu một cách dễ dàng bằng SWR.
Phần 4: Tạo trang chi tiết cửa hàng
- Tạo các tuyến động cho các trang chi tiết cửa hàng và tìm hiểu cách sử dụng API getStaticPaths.
- Triển khai giao diện chi tiết cửa hàng.
- Kết nối trang thông tin chi tiết cửa hàng và trang bản đồ bằng next/router.
Phần 5: Kiểm tra hiệu suất web với Lighthouse
- Kiểm tra hiệu suất web bằng Chrome Lighthouse.
- Cải thiện hiệu suất web, khả năng truy cập web và SEO.
- Điền vào phần đầu HTML bằng thư viện _document hoặc next-seo.
Phần 6: Triển khai với Vercel
- Triển khai trang web đã hoàn thành lên Vercel.
- Tạo các tệp robots.txt và sitemap.xml bằng thư viện next-sitemap.
- Đăng ký trang web của bạn với Naver Search Advisor và Google Search Console.
- Chúng tôi sử dụng Google Analytics.
Phần 7: Tổng kết dự án
- Tạo API GET phản hồi dữ liệu lưu trữ bằng cách sử dụng API Routes Next.js.
- Trang Phản hồi giải thích cách đọc và ghi dữ liệu vào Firebase Cloud Firestore.
- Chúng tôi đang hoàn thiện dự án tạo ra dịch vụ bản đồ.
Phần 8~: Câu hỏi và câu trả lời và củng cố
- Chúng tôi cung cấp các bài giảng bổ sung khi cần giải thích thêm hoặc có câu hỏi quan trọng phát sinh trong quá trình giảng bài.
- Chúng tôi sẽ bổ sung thêm thông tin chi tiết khi Next.js 13 ra mắt.
Chúng tôi sẽ chia sẻ những mẹo chúng tôi đã học được khi phát triển dịch vụ và sản phẩm với Next.js.
Với tư cách là trưởng nhóm front-end tại một công ty khởi nghiệp trong bốn năm, tôi đã phát triển sản phẩm chính và website bằng Next.js. Tôi cũng đã phát triển một dịch vụ trò chơi web bằng Next.js, giành giải ba tại cuộc thi JUNCTION ASIA 2022, và một dịch vụ web sử dụng Next.js T3 Stack đã giành giải nhì tại cuộc thi HACKATHON KAIST SPARCS. Tôi muốn chia sẻ những lợi ích và bí quyết mà tôi đã tích lũy được khi làm việc với Next.js với nhiều người hơn nữa. 🙂
Hỏi & Đáp 💭
H. Tại sao tôi nên học Next.js?
Trong số các framework phát triển front-end hiện có, tôi tin rằng Next.js mang đến trải nghiệm phát triển vượt trội, API trực quan và hỗ trợ nhiều tối ưu hóa. Trong khi các framework trước đây đòi hỏi phải cân nhắc ưu và nhược điểm của nhiều công nghệ, Next.js theo đuổi con đường chỉ tập trung khai thác điểm mạnh của từng công nghệ và trình bày chúng thông qua API. Hơn nữa, các bản cập nhật liên tục sẽ đảm bảo Next.js được ứng dụng rộng rãi trong các ứng dụng ngày càng phát triển.
H. Khóa học này khó như thế nào?
Khóa học này được thiết kế để giới thiệu cho bạn về Next.js, và bạn sẽ theo dõi mã nguồn, video và phụ đề để hoàn thành dự án một cách tự nhiên. Mỗi khóa học đều có các nhánh riêng biệt, cho phép bạn bỏ qua hoặc quay lại các phần dựa trên trình độ của mình. Bạn cần có kiến thức cơ bản về React (cú pháp JSX, useState/useEffect hook, v.v.).
Nếu bạn mới làm quen với Next.js, chúng tôi khuyên bạn nên bắt đầu bằng các bước sau:
- Tìm hiểu luồng tổng thể bằng cách xem bài giảng và mã được cung cấp.
- Thay đổi và cải thiện mã theo cách của riêng bạn.
- Hoàn thành dự án Next.js của riêng bạn.
H. Ngoài Next.js, bạn còn sử dụng những thư viện nào khác trong lớp học?
Chúng tôi sử dụng TypeScript, ESlint/Prettier, SWR, next-seo, next-sitemap, Sass (scss), react-icons, copy-to-clipboard, @types/navermaps và firebase (Cloud Firestore). Ngoại trừ các thư viện cốt lõi (TypeScript và scss), chúng tôi chỉ sử dụng những thư viện tối thiểu cần thiết để triển khai dịch vụ. Chúng tôi không sử dụng bất kỳ thư viện UI hoặc CSS-in-JS bổ sung nào.
💾 Những điều cần lưu ý trước khi tham gia lớp học
- Bài giảng dựa trên Next.js phiên bản 13.0.7 và thư mục trang .
- Lý thuyết và thực hành được giảng dạy theo tỷ lệ 1:2. Phần thực hành sẽ trình bày ngắn gọn về các triển khai UI đơn giản, tập trung vào các khái niệm Next.js đã học trong lý thuyết.
- Chúng tôi sử dụng IDE WebStorm và Yarn của JetBrains làm trình quản lý gói. Nếu bạn gặp bất kỳ khó khăn nào khi sử dụng VSCode hoặc npm, vui lòng liên hệ với chúng tôi.
- Vì đây là bài giảng về Next.js, một React Framework , nên cần có kiến thức trước về React (cú pháp jsx, hook useState/useEffect, v.v.)
- Chúng tôi sử dụng scss. Chúng tôi không sử dụng thư viện CSS-in-JS (emotion, styled-components).
- Ngoài React và yarn (npm), bạn cũng cần có kiến thức cơ bản về TypeScript và Git.
- Chúng tôi sử dụng SWR làm thư viện quản lý trạng thái (cùng thư viện do nhóm Vercel phát triển với tên gọi Next.js). Để giảm thiểu thời gian học, chúng tôi chỉ sử dụng SWR cho mục đích lưu trữ trạng thái toàn cục tối thiểu.
- Chúng tôi cung cấp mã nguồn đầy đủ, bao gồm các nhánh cho mỗi lớp. Chúng tôi khuyên bạn nên làm theo video, tập trung vào mã nguồn được cung cấp. (Chúng tôi không khuyến khích sao chép mã chính xác như hiển thị trên màn hình.) Ngoài ra, việc tham khảo tài liệu chính thức của Next.js có thể hữu ích.
- Ngoài việc trả lời các câu hỏi, chúng tôi sẽ cập nhật các video bổ sung khi chúng tôi thấy cần thiết.