Sử dụng Skills

Phát triển phần mềm với Claude Code

Dani Zysman

AI Curriculum Manager @ DataCamp

Refactoring là gì?

Excalidraw: Khái niệm refactor - thay đổi cấu trúc mã nhưng hành vi giữ nguyên

Phát triển phần mềm với Claude Code

Unit test giúp refactor an toàn

Quy trình refactor an toàn: chạy test, dùng skill refactor, rà soát, chạy test lại, commit nếu xanh

Phát triển phần mềm với Claude Code

Dự án đến hiện tại

music-analytics-api/
  app.py
  routes.py
  test_routes.py     # <- Được tạo bởi skill unit-tests
  models.py
  CLAUDE.md
  .claude/
    agents/
    skills/
      unit-tests/    # Từ video trước
        SKILL.md
      refactor/      # MỚI: refactor an toàn
        SKILL.md
Phát triển phần mềm với Claude Code

Hai cách kích hoạt

Hai cách gọi skill: thủ công với slash command, hoặc tự động khi Claude khớp ngữ cảnh

Phát triển phần mềm với Claude Code

Refactor mã với Skills

>/unit-tests @routes.py
Đã thêm unit test:

Mẫu kiểm thử chính:
- Dùng Flask test client để kiểm thử HTTP thực tế
- Mock phụ thuộc bên ngoài (music_store, các hàm analytics)
- Kiểm thử cả happy path và edge case
- Xác thực định dạng và cấu trúc phản hồi
- Tất cả test độc lập với fixture phù hợp
Tệp test sẵn sàng dùng và tích hợp với pytest hiện có của dự án.
Phát triển phần mềm với Claude Code

Refactor mã với Skills

> /refactor @routes.py
Refactor hoàn tất
Các thay đổi:
- Tách _prepare_albums_for_stats(). Loại bỏ list comprehension 9 dòng,
  làm rõ mục đích
- Tách _prepare_albums_for_average(). Gỡ trùng lặp logic chuyển
  album thành dict
Lợi ích:
- Ít trùng lặp hơn
- Handler route gọn gàng
- Tập trung hóa bước chuẩn bị dữ liệu

Cả 21 test đều pass: hành vi được giữ nguyên hoàn toàn
Phát triển phần mềm với Claude Code

Skills đảm bảo tính nhất quán

Không dùng skill: thiếu nhất quán, dễ lỗi. Dùng skill: nhất quán, đáng tin cậy

Phát triển phần mềm với Claude Code

Cùng luyện tập nào!

Phát triển phần mềm với Claude Code

Preparing Video For Download...