Ưu đãi trong tuần: Nhập mã UD50 giảm 50k cho đơn từ 300k!
Trang chủ
Menu

Clean Code

Clean Code

Học cách viết code dễ đọc, dễ hiểu và dễ bảo trì — từng bước một, qua các ví dụ minh họa

4.6
(26,435 đánh giá)
118,068 học viên
Phụ đề Việt chất lượng cao Phụ đề tiếng Anh Bán chạy Đánh giá cao
50.000đ 409.000đ -88%
✓ Xem giỏ hàng và thanh toán
Bao gồm phụ đề tiếng Việt, tiếng Anh
6.5 giờ video
97 bài giảng
Truy cập vĩnh viễn
Học trên mọi thiết bị
Cập nhật: 17/03/2026

Bạn sẽ học được gì

Học cách viết code dễ đọc và dễ hiểu
Giữ cho code sống động bằng cách tăng khả năng bảo trì với clean code
Tìm hiểu các nguyên tắc, quy tắc và khái niệm then chốt giúp bạn viết code sạch
Học qua các ví dụ thực hành và chuyển đổi từ "code tệ sang code tốt"

Yêu cầu

Yêu cầu có kiến thức lập trình cơ bản (không phân biệt ngôn ngữ)
KHÔNG yêu cầu có kinh nghiệm trước về chủ đề clean code
Bạn KHÔNG cần biết một ngôn ngữ lập trình hay mô hình cụ thể nào

Đối tượng phù hợp

Dành cho lập trình viên muốn đảm bảo code không chỉ chạy được mà còn dễ đọc, dễ hiểu và dễ bảo trì
Dành cho tất cả những ai nghiêm túc về phát triển phần mềm và viết code thực tế

Nội dung khóa học

8 phần • 96 bài giảng
1 Chào mừng đến với khóa học!
2 "Clean Code" là gì?
3 Clean Code - Những vấn đề chính & Cách viết Clean Code
4 Cấu trúc khóa học
5 Điều kiện tiên quyết của khóa học
6 Clean Code & Ngôn ngữ định kiểu mạnh
7 Về các ví dụ code trong khóa học
8 Tham gia cộng đồng học tập của chúng tôi!
9 Functional, OOP, Procedural: Các khái niệm khóa học luôn áp dụng được!
10 Clean Code, Nguyên tắc & Mẫu thiết kế & Kiến trúc sạch
11 Clean Code vs Code nhanh
12 Tài nguyên của mô-đun & khóa học
13 Thiết lập khóa học
1 Giới thiệu mô-đun
2 Tại sao tên gọi hay lại quan trọng
3 Cách chọn tên hay
4 Quy ước viết hoa & Ngôn ngữ lập trình
5 Đặt tên Biến & Thuộc tính - Lý thuyết
6 Đặt tên Biến & Thuộc tính - Ví dụ
7 Đặt tên Hàm & Phương thức - Lý thuyết
8 Đặt tên Hàm & Phương thức - Ví dụ
9 Đặt tên Lớp - Lý thuyết
10 Đặt tên Lớp - Ví dụ
11 Các trường hợp ngoại lệ cần lưu ý
12 Lỗi & Cạm bẫy thường gặp
13 Đến giờ demo!
14 Thử thách của bạn - Vấn đề
15 Thử thách của bạn - Giải pháp
16 Tài nguyên mô-đun
1 Giới thiệu mô-đun
2 Chú thích không tốt
3 Chú thích tốt
4 "Định dạng Code" thực sự là gì?
5 Định dạng theo chiều dọc
6 Định dạng: Cân nhắc theo ngôn ngữ cụ thể
7 Định dạng theo chiều ngang
8 Thử thách của bạn - Vấn đề
9 Thử thách của bạn - Giải pháp
10 Tài nguyên mô-đun
1 Giới thiệu mô-đun
2 Phân tích các phần chính của hàm
3 Giữ số lượng tham số ở mức thấp!
4 Ý tưởng & Khái niệm tái cấu trúc tham số hàm
5 Khi một tham số là vừa đủ
6 Hai tham số & Khi nào nên tái cấu trúc
7 Xử lý khi có quá nhiều giá trị
8 Hàm có số lượng tham số động
9 Cẩn thận với "Tham số đầu ra"
10 Hàm nên nhỏ và chỉ làm một việc!
11 Tại sao "Các mức độ trừu tượng" lại quan trọng
12 Khi nào bạn nên tách hàm?
13 Demo & Thử thách
14 Tuân thủ DRY - Đừng lặp lại chính mình
15 Tách hàm để tuân thủ DRY
16 Đừng lạm dụng - Tránh việc tách không cần thiết
17 Hiểu & Tránh hiệu ứng phụ (bất ngờ)
18 Hiệu ứng phụ - Một thử thách
19 Tại sao Unit Tests quan trọng & Hỗ trợ rất nhiều!
20 Tài nguyên mô-đun
1 Giới thiệu mô-đun
2 Tổng quan về các khái niệm hữu ích
3 Giới thiệu "Bộ bảo vệ" (Guards)
4 Bộ bảo vệ trong thực tế
5 Tách cấu trúc điều khiển & Ưu tiên diễn đạt tích cực
6 Tách cấu trúc điều khiển thành các hàm
7 Viết hàm sạch với cấu trúc điều khiển
8 Đảo ngược logic điều kiện
9 Chấp nhận lỗi & Xử lý lỗi
10 Tạo thêm các bộ bảo vệ lỗi
11 Tách mã xác thực
12 Xử lý lỗi là một việc riêng biệt!
13 Sử dụng Hàm tạo & Tính đa hình
14 Làm việc với tham số mặc định
15 Tránh dùng "Số & Chuỗi ma thuật"
16 Tóm tắt mô-đun
17 Tài nguyên mô-đun
1 Giới thiệu mô-đun
2 Lưu ý quan trọng: Đây KHÔNG phải khóa học về OOP hay "Mẫu thiết kế & Nguyên tắc"!
3 Đối tượng vs Vùng chứa dữ liệu / Cấu trúc dữ liệu
4 Tại sao sự phân biệt này lại quan trọng
5 Lớp & Tính đa hình
6 Lớp nên nhỏ!
7 Hiểu về "Tính gắn kết" (Cohesion)
8 "Luật Demeter" và lý do nên "Bảo làm, đừng hỏi"
9 Các nguyên tắc SOLID
10 Nguyên tắc Trách nhiệm Đơn lẻ (SRP) & Tại sao nó quan trọng
11 Nguyên tắc Đóng-Mở (OCP) & Tại sao nó quan trọng
12 Nguyên tắc Thay thế Liskov
13 Nguyên tắc Phân tách Giao diện
14 Nguyên tắc Đảo ngược Phụ thuộc
15 Tài nguyên mô-đun
1 Tóm tắt khái niệm & Danh sách kiểm tra
1 Duy trì code sạch!
2 Các bước tiếp theo có thể thực hiện
3 Tổng kết khóa học
4 Phần thưởng!

Giới thiệu khóa học

As a developer, you should be able to write code which works - of course!

A lot of developers write bad code nonetheless - even though the code works. Because "working code" is not the same as "clean code"!

This course teaches you how to write clean code - code that is easy to read and understand by humans, not just computers!

In this course, you'll learn what exactly clean code is and, more importantly, how you can write clean code. Because if your code is written in a clean way, it's easier to read and understand and therefore easier to maintain.

Because it's NOT just the computer who needs to understand your code - your colleagues and your future self needs to be able to understand it as well!

In this course, we'll dive into all the main "pain points" related to clean code (or bad code - depending on how you look at it) and you will not just learn what makes up bad code but of course also how to turn it into clean code.

Specifically, you will learn about:

  • Naming "things" (variables, properties, classes, functions, ...) properly and in a clean way

  • Common pitfalls and mistakes you should avoid when naming things

  • Comments and that most of them are bad

  • Good comments you might consider adding to your code

  • Code formatting - both horizontal and vertical formatting

  • Functions and how to limit the number of function parameters

  • How to write clean functions by focusing on "one thing"

  • How levels of abstraction help you split functions and keep them small

  • How to write DRY functions and avoid unexpected side effects

  • Avoiding deeply nested control structures with guards and by extracting functionality into functions

  • Errors and error handling as a replacement for if-statements

  • Objects & data containers/ data structures and why that differentiation could matter

  • Cohesion and how to write good (small!) classes

  • The Law of Demeter and why it matters for clean code

  • What the SOLID principles are and why they matter when it comes to writing clean code

  • Much more!

This course is a compilation of common patterns, best practices, principles and rules related to writing clean code.

In this course, you'll learn about a broad variety of concepts, rules, ideas, thoughts and principles and by the end of course, you'll have a good idea of what to keep in mind when it comes to writing clean code.

This is not a design patterns or general patterns course though - we will entirely focus on patterns, rules and concepts that help with writing clean code specifically.

All these concepts and rules are backed up by examples, code snippets and demos. And to ensure that you get the most out of this course, and you don't just learn a bunch of theory which you forget soon after, there also are plenty of challenges for you to apply what you learned!

This course uses Python, JavaScript and TypeScript for code examples but you don't need to know these languages to follow along and get a lot out of the course. In addition, the course does not focus on a specific programming style or paradigm (like functional programming, object-oriented programming etc) but instead covers general concepts and techniques which will always apply.

What are the course prerequisites?

  • Basic programming knowledge (no matter which language) is required!

  • You don't need to know any specific programming language or programming paradigm to follow along

  • NO prior experience with writing clean code is required

Khóa học liên quan

Khám phá thêm các khoá học cùng chủ đề

Hiển thị tất cả khoá học Best Practices
Hiển thị tất cả khoá học Code Quality
Hiển thị tất cả khoá học Programming Fundamentals
Hiển thị tất cả khoá học Software Engineering
Zalo
Tôi có thể tư vấn khoá học cho bạn 😊