Xem Claude Code hoạt động thực tế

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

Dani Zysman

AI Curriculum Manager @ DataCamp

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

Claude Code phù hợp ở đâu

Thứ bậc sản phẩm Claude: Web Chat, Ứng dụng Desktop, Terminal CLI

  • Claude.ai: Giao diện chat, tác vụ tổng quát
  • Claude Desktop: Ứng dụng có quyền truy cập tệp
  • Claude Code: Chạy trong Terminal, tối ưu cho lập trình
Phát triển phần mềm với Claude Code

Bắt đầu

$ curl -fsSL https://claude.ai/install.sh | bash

Để biết thêm, truy cập: https://code.claude.com/docs/en/overview

$ cd /path/to/your/project
$ claude

Lệnh hữu ích:

  • /clear để xóa lịch sử hội thoại
  • /exit hoặc Ctrl + C để thoát phiên làm việc
  • /help hiển thị các lệnh có sẵn
Phát triển phần mềm với Claude Code

Xử lý mã khó hiểu

def process_data(records, threshold=0.5):
    result = []
    for r in records:
        if r.get('value') and r['value'] > threshold:
            x = r['value'] * 1.1 if r.get('premium') else r['value']
            result.append({'id': r['id'], 'adjusted': x, 'flag': x > 1})
    return sorted(result, key=lambda d: d['adjusted'], reverse=True)[:10]
  • Biến một ký tự
  • Không có chú thích
  • Logic dồn nén
Phát triển phần mềm với Claude Code

Claude giải thích và viết tài liệu

> process_data() làm gì?
process_data(): Lọc, Điều chỉnh & Xếp hạng

Lọc: Giữ bản ghi có value > threshold (mặc định: 0.5)
Điều chỉnh: Cộng 10% nếu premium=True
Biến đổi: Xuất id, adjusted và flag (nếu adjusted > 1)
Sắp xếp: Trả về top 10 theo adjusted giảm dần
> Thêm docstring cho process_data()
"""Lọc các bản ghi trên ngưỡng, cộng 10% cho premium và trả về 
top 10 theo giá trị adjusted."""
Phát triển phần mềm với Claude Code

Phát hiện lỗi

def add_item(item, item_list=[]):
    item_list.append(item)
    return item_list

Bạn có nhận ra vấn đề không?

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

Claude tìm và sửa lỗi

> Tìm và sửa lỗi trong add_item()
Đã tìm và sửa lỗi: Nguyên nhân là đối số mặc định có thể thay đổi (mutable).

Dùng item_list=[] khiến mọi lần gọi add_item() không truyền 
danh sách sẽ dùng chung một list mặc định, 
khiến các phần tử dồn lại qua nhiều lần gọi.
def add_item(item, item_list=None):
    if item_list is None:
        item_list = []
    item_list.append(item)
    return item_list
Phát triển phần mềm với Claude Code

Khắc phục sự cố

Vấn đề Cách xử lý
"Context window exceeded" Dùng /clear để đặt lại
Giới hạn tốc độ Chờ rồi thử lại
Kết quả kém Giữ prompt tập trung vào một nhiệm vụ
Phát triển phần mềm với Claude Code

Vòng lặp phản hồi

Vòng lặp phát triển: Mô tả, Tạo, Rà soát, Tinh chỉnh

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...