Trang chủ Khóa học Học lập trình web

Clean Code với C# — Viết code sạch và kỹ thuật Refactoring

Học cách viết code sạch theo cuốn Clean Code của Robert C. Martin, áp dụng bằng C#/.NET. Mỗi bài đều có ví dụ code bẩn và code sạch sau khi refactor, hướng dẫn từng bước để bạn áp dụng ngay vào dự án đang làm.

0 học viên
Video
16 lượt xem
Bạch Ngọc Toàn

Giảng viên

Bạch Ngọc Toàn
648,000đ
Đã bao gồm VAT 8%
Chưa mở ghi danh
Thêm vào yêu thích
Loại hình học Video
Bài học 0 bài
Truy cập 5 năm
Thiết bị Mọi thiết bị

Khóa học bao gồm:

  • Video Full HD
  • Tài liệu học tập
  • Source code mẫu
  • Hỗ trợ Q&A
  • Cập nhật miễn phí
Clean Code với C# — Viết code sạch và kỹ thuật Refactoring

Nội dung khóa học

0 bài học • giờ học

Mô tả khóa học

Clean Code với C# — Khi code chạy được vẫn chưa đủ

Bạn mở một file code mình viết cách đây 6 tháng và mất 20 phút mới hiểu nó làm gì. Method dài 80 dòng, biến tên temp, data2, if lồng 4 tầng, và một dòng comment "đừng xóa, xóa là lỗi" mà chính bạn cũng không nhớ tại sao.

Code đó vẫn chạy. Khách hàng vẫn dùng. Nhưng mỗi lần thêm tính năng là một lần dò mìn, và mỗi lần được review là một lần nhận về chục comment "đoạn này nghĩa là gì?".

Đó chính xác là vấn đề mà khóa học Clean Code với C# — Viết code sạch và kỹ thuật Refactoring giải quyết.

Tại sao clean code là kỹ năng đáng đầu tư nhất sau 1–3 năm đi làm

Có một con số được nhắc trong cuốn Clean Code của Robert C. Martin: thời gian developer đọc code nhiều gấp khoảng 10 lần thời gian viết code. Nghĩa là nếu code khó đọc, bạn đang làm chậm chính mình và cả team — mỗi ngày.

Ở giai đoạn 1–3 năm kinh nghiệm, hầu hết developer đã qua được câu hỏi "làm sao cho nó chạy". Câu hỏi tiếp theo quyết định bạn có lên được mức senior hay không là: "làm sao để người khác đọc code của mình mà không phải hỏi lại?". Đây không phải là kỹ năng học được từ tutorial build app, vì tutorial chỉ dạy code chạy được — không ai review code của bạn trong tutorial cả.

Khóa học này dạy gì

Khóa học bám theo cấu trúc cuốn Clean Code — quyển sách gần như mọi công ty phần mềm đều khuyên đọc — nhưng toàn bộ ví dụ được viết lại bằng C#/.NET và đặt trong bối cảnh dự án quen thuộc: hệ thống đặt hàng với Order, Payment, tích hợp MoMo, VNPay.

Nội dung chính gồm:

  • Đặt tên có chủ đích — vì sao GetThem(list1) là một câu đố còn GetFlaggedOrders(orders) là một câu trả lời

  • Method nhỏ, làm đúng một việc — kỹ thuật Extract Method và Guard Clauses để biến method 80 dòng thành 5 method đọc như mục lục

  • Tách God Class theo Single Responsibility — và thay những khối switch-case lặp lại bằng Strategy pattern

  • Xử lý lỗi và null đúng cách — Nullable Reference Types, Result pattern, và vì sao catch (Exception) { return null; } là cách giấu bug hiệu quả nhất

  • Refactor an toàn code legacy chưa có test — kỹ thuật characterization test để bạn dám sửa code cũ mà không sợ vỡ

Điểm cuối cùng đáng nói riêng một chút. Nghịch lý kinh điển khi đi làm: muốn refactor thì phải có test, nhưng muốn viết test thì phải refactor trước. Hầu hết khóa học clean code bỏ qua câu hỏi này và mặc định bạn được làm việc trên codebase đẹp đẽ. Thực tế thì không — và khóa học này dành hẳn một module để xử lý đúng tình huống đó.

Cách học: xem code bẩn trước, refactor từng bước sau

Mỗi bài học có ví dụ đều đi theo cùng một trình tự:

  1. Xem một đoạn code bẩn — code chạy được, thậm chí rất giống code bạn đang có trong dự án

  2. Chỉ ra vấn đề cụ thể: tên gây hiểu nhầm chỗ nào, method đang làm mấy việc, thêm tính năng mới phải sửa bao nhiêu chỗ

  3. Refactor từng bước nhỏ, mỗi bước chạy lại test để chứng minh behavior không đổi — không có chuyện cắt cảnh nhảy thẳng sang kết quả đẹp

  4. So sánh diff trước/sau và rút ra một quy tắc ngắn để bạn nhớ được

Toàn bộ code mẫu nằm trong repo GitHub kèm khóa học, mỗi bài có hai branch dirtyclean để bạn tự diff và thực hành lại.

Phần cuối khóa là một dự án trọn vẹn: cùng giảng viên refactor một service legacy 500 dòng chứa đủ các code smell đã học — từ viết characterization test, qua ba vòng refactor, đến đo lại metric (cyclomatic complexity, maintainability index) để thấy con số cải thiện cụ thể chứ không chỉ là cảm giác "code đẹp hơn".

Khóa học dành cho ai

Phù hợp

Chưa phù hợp

Developer .NET có 1–3 năm kinh nghiệm

Người chưa biết C# cơ bản

Đang làm việc với codebase cũ, khó sửa

Người tìm khóa học dạy build app từ đầu

Hay nhận comment review về cách đặt tên, cấu trúc code

Senior đã đọc kỹ Clean Code và áp dụng hằng ngày

Muốn chuẩn bị nền tảng trước khi học Clean Architecture

Yêu cầu đầu vào duy nhất: biết C# và OOP cơ bản, có Visual Studio hoặc VS Code.

Sau khóa học bạn làm được gì

  • Nhận diện được 12 code smell phổ biến ngay khi đọc code — của mình và của người khác

  • Thành thạo các thao tác refactoring với Visual Studio: Rename, Extract Method, Move Type, Change Signature

  • Refactor được code legacy chưa có test mà không làm vỡ behavior

  • Có sẵn bộ checklist code review để dùng cho bản thân và team

Và một thứ khó đo hơn nhưng giá trị nhất: lần tới mở lại code cũ của chính mình, bạn sẽ hiểu nó trong 30 giây thay vì 20 phút.

Đăng ký khóa học

Khóa học Clean Code với C# — Viết code sạch và kỹ thuật Refactoring đã có mặt trên tedu.com.vn. Xem outline chi tiết và đăng ký tại trang khóa học.

Khóa học liên quan

Lập trình dự án Website bán hàng ASP.NET MVC 4
📹 Video
Miễn phí
Mã: TEDU-03
Học lập trình web
0.0 (1)

Lập trình dự án Website bán hàng ASP.NET MVC 4

Đây là khóa học của TEDU với format là quá trình làm một dự án thực tế step by step để giúp các bạn giải quyết các vấn đề thường gặp một cách nhanh nhất.

77,413 lượt xem
57 bài học
Miễn phí
Xem chi tiết
Làm dự án với WebAPI, AngularJS và EF Code First
📹 Video
Miễn phí
Mã: TEDU-01
Học lập trình web
5.0 (3)

Làm dự án với WebAPI, AngularJS và EF Code First

Đây không đơn thuần là khóa học giúp các bạn làm dự án hay làm project thực tế mà nó còn bao gồm các kiến thức và kỹ năng giúp các bạn làm việc chuyên nghiệp trong môi trường công ty phần mềm.

107,340 lượt xem
70 bài học
Miễn phí
Xem chi tiết
Khóa học sử dụng TypeScript căn bản
📹 Video
Miễn phí
Mã: TEDU-10
Học lập trình web

Khóa học sử dụng TypeScript căn bản

Khóa học TypeScript căn bản là khóa học miễn phí của TEDU giới thiệu cho các bạn làm quen với một ngôn ngữ gọi là TypeScript dùng để phát triển ứng dụng phía client. Giúp bạn có nền tảng tốt để học Angular2

42,355 lượt xem
29 bài học
Miễn phí
Xem chi tiết
Khóa học Angular 2 căn bản
📹 Video
Miễn phí
Mã: TEDU-11
Học lập trình web
0.0 (1)

Khóa học Angular 2 căn bản

Khóa học Angular2 cơ bản giới thiệu tổng quan về Angular2 như kiến trúc, các thành phần của Angular2, giúp các bạn tiếp cận nhanh nhất với Angular2.

54,810 lượt xem
30 bài học
Miễn phí
Xem chi tiết