HƯỚNG DẪN THỰC TẾ CHO LẬP TRÌNH VIÊN

Cách Dùng Claude Trong Công Việc Lập Trình: Claude Code, API Và Quy Trình Agent

Terminal chính là IDE mới, và diff vẫn là đơn vị đo sự tin tưởng.

Lập trình viên dùng Claude của Anthropic theo ba cách khác nhau: như một đối tác chat để lên kế hoạch và review, như Claude Code chạy trực tiếp trong terminal, và như model đứng sau các sản phẩm chạy trên API riêng của họ. Trang này đi qua cách dùng Claude trong công việc lập trình ở từng chế độ, kèm các prompt thực tế cho việc review code, viết test, và tool use, cùng những thói quen giúp code do AI viết an toàn trước khi lên production.

Cách dùng Claude trong công việc lập trình được gói trong ba bề mặt: giao diện chat Claude AI để lên kế hoạch và review code, Claude Code cho việc phát triển agentic ngay trong terminal, nó đọc repo và sửa file trực tiếp, và Anthropic API để xây dựng tool use và quy trình agent vào sản phẩm riêng của bạn. Hầu hết lập trình viên bắt đầu ở chat, chuyển việc chỉnh sửa và test lặp đi lặp lại sang Claude Code, và dùng đến API khi họ bắt đầu triển khai một tính năng chạy trên Claude. Những thói quen giữ an toàn cho code do AI viết cũng chính là thói quen giữ an toàn cho mọi loại code: diff nhỏ, test, và review trước khi merge.

Ngày đăng · Xem xét lần cuối

Bài học miễn phí · không cần tài khoảnBa Cách Dùng ClaudeBa Chế Độ5 phútBắt đầu bài học miễn phí

Điểm chính

  • Claude trong công việc lập trình trải qua ba bề mặt: chat để lên kế hoạch và review code, Claude Code cho công việc trong terminal, và Anthropic API để xây dựng tool use và các tính năng agent cho riêng bạn.
  • Claude Code đọc repository của bạn, sửa file trên cả codebase, chạy test suite của bạn, và có thể commit thay đổi, tất cả từ một phiên terminal thông thường.
  • Tool use cho phép Claude gọi các function bạn định nghĩa, nên nó có thể query database, gọi một API nội bộ, hoặc chạy một script như một phần của việc trả lời yêu cầu.
  • Review code hiệu quả nhất khi bạn chỉ Claude vào một diff cụ thể và một tiêu chuẩn cụ thể để kiểm tra, không phải một câu 'xem code của tôi' mơ hồ.
  • Claude có thể viết và chạy test, nhưng thói quen giữ an toàn cho code được sinh ra vẫn giống thói quen giữ an toàn cho code của bất kỳ contributor nào: diff nhỏ, test suite pass, và review của con người trước khi merge.
  • Bắt đầu với một file CLAUDE.md: một bộ khung ngắn cho project, cho Claude biết stack, các lệnh, và quy ước của bạn để nó không còn phải đoán.

Claude AI so với Claude Code so với Anthropic API

Ba bề mặt cho ba công việc khác nhau.
Bề mặtTốt nhất choChạy ở đâu
Claude AI (chat)Lên kế hoạch, thảo luận kiến trúc, review một diff hoặc stack trace đã dán vàoTrình duyệt hoặc app desktop
Claude CodeSửa nhiều file, chạy test suite của bạn, làm việc tự động trên chính repo của bạnTerminal của bạn, trong thư mục project
Anthropic APIXây một tính năng hoặc agent chạy trên Claude vào sản phẩm riêng của bạn, với tool useCode ứng dụng của bạn, gọi qua HTTPS

Sao chép và dán

Prompt bạn có thể dùng ngay hôm nay

Review một diff pull request theo một tiêu chuẩn cụ thể

Bạn đang review một diff pull request cho một service FastAPI viết bằng Python. Kiểm tra cụ thể nguy cơ SQL injection, thiếu validation input trên request body, và bất kỳ database query nào chưa được parameterize. Liệt kê từng vấn đề kèm file và dòng, giải thích tại sao nó là vấn đề, và đề xuất cách sửa. Không nhận xét về formatting hay style.

Đổi ngôn ngữ, framework, và các rủi ro cụ thể bạn muốn được gắn cờ cho stack của riêng bạn.

Viết test khớp với style hiện có

Xem các test hiện có trong tests/test_orders.py và khớp đúng cấu trúc, fixture, cũng như quy ước đặt tên của chúng. Viết unit test cho function refund_order mới trong orders/service.py, bao gồm một lần refund thành công, một lần thử refund trên order đã được refund rồi, và một lần refund vượt quá số tiền charge gốc. Dùng pytest và các mock pattern hiện có.

Chỉ nó vào file test thật và framework của bạn, có thể là pytest, Jest, hoặc Vitest.

Debug một test chạy chập chờn với đầy đủ context

Test này fail không ổn định trên CI nhưng pass khi chạy local: [dán tên test và lỗi]. Đây là file test, function mà nó kiểm tra, và ba log CI fail gần nhất. Đi qua các nguyên nhân có thể của sự chập chờn này trước khi đề xuất cách sửa, và nói rõ bạn vẫn còn chưa chắc về điều gì.

Dán log thật và nội dung file thật, đừng mô tả bug theo trí nhớ.

Thiết kế một tool use function cho Anthropic API

Tôi đang xây một agent với Anthropic API cần tra cứu trạng thái order của khách hàng từ REST API nội bộ của chúng tôi. Soạn định nghĩa tool, bao gồm JSON schema cho các input parameter của nó, và cho tôi xem code Python xử lý tool_use block trả về và gửi một tool_result lại cho Claude.

Thay API nội bộ và các parameter bằng hình dạng của service riêng bạn.

Soạn một CLAUDE.md cho project mới

Đọc qua package.json, README, và cấu trúc thư mục của repository này, rồi soạn một file CLAUDE.md ghi lại tech stack của chúng tôi, các lệnh để chạy test và dev server, quy ước đặt tên cho API route, và bất cứ điều gì một contributor mới cần biết trước khi thực hiện thay đổi đầu tiên.

Chạy cái này một lần khi bắt đầu project, rồi cập nhật mỗi khi quy ước thay đổi.

Lên kế hoạch refactor nhiều file trước khi chạm vào code

Tôi muốn tách logic thanh toán hiện đang nằm rải rác ở ba controller thành một class PaymentService duy nhất. Trước khi viết bất kỳ dòng code nào, liệt kê mọi file hiện chứa logic thanh toán, đề xuất các public method của class mới, và gắn cờ mọi khác biệt về hành vi giữa ba cách triển khai hiện tại mà refactor cần phải giữ lại.

Hỏi kế hoạch trước với bất kỳ thay đổi nào chạm vào hơn hai, ba file.

Bắt Đầu Ở Đây

Những bài học miễn phí mọi lập trình viên nên bắt đầu

Ba bài học ngắn đưa bạn từ biết Claude tồn tại đến chạy một phiên Claude Code thật với một bộ khung project đã có sẵn, đủ để bắt đầu dùng nó cho công việc thật ngay trong ngày.

  1. 1. Ba Chế ĐộBa Cách Dùng Claude5 phút
  2. 2. Ba Chế ĐộClaude Code: Xây Dựng Bằng Lời6 phút
  3. 3. Thiết Lập Cho Người Thực HànhCLAUDE.md: bộ khung project của bạn6 phút

Ba Bề Mặt

Lập Trình Viên Thực Sự Dùng Claude Như Thế Nào

Claude trong công việc lập trình không phải một công cụ duy nhất. Đó là ba công cụ, và biết công cụ nào phù hợp với việc đang làm chính là phần lớn kỹ năng.

Chat Claude AI

Tốt cho thảo luận kiến trúc, review một diff hoặc thông báo lỗi đã dán vào, và suy nghĩ về thiết kế trước khi bạn bắt tay viết code.

Claude Code

Một agent chạy trong terminal, đọc repository của bạn, sửa file trên cả codebase, chạy test suite của bạn, và có thể commit thay đổi theo chỉ dẫn của bạn.

Anthropic API

Model cộng với tool use, để xây Claude vào sản phẩm riêng của bạn: một bot hỗ trợ query database của bạn, một assistant trong IDE, hoặc một pipeline chạy không cần giám sát.

Quy trình agent

Kết hợp tool use với một loop: Claude chọn tool nào để gọi, đọc kết quả, và quyết định bước kế tiếp, lặp lại cho đến khi xong việc.

Claude Code

Claude Code là gì, và bắt đầu dùng nó như thế nào?

Claude Code là công cụ command-line của Anthropic để làm việc với Claude ngay trong codebase của bạn. Thay vì copy code vào cửa sổ chat và dán câu trả lời ngược lại, bạn chạy nó từ thư mục project và nó đọc file, lịch sử git, và cấu hình test của bạn làm context cho bất kỳ việc gì bạn yêu cầu.

Một phiên làm việc điển hình trông như sau: bạn mở terminal trong repository, chạy Claude Code, và mô tả một task bằng ngôn ngữ thông thường, chẳng hạn thêm rate limiting vào các endpoint POST. Nó đọc các file liên quan, đề xuất và áp dụng các thay đổi trên bất kể bao nhiêu file mà thay đổi đó chạm vào, chạy test suite của bạn, và báo lại nó đã thay đổi gì cũng như test có pass hay không.

Điều khiến Claude Code khác với một plugin editor là nó vận hành trên cả task, không chỉ dòng kế tiếp. Nó có thể lên kế hoạch một thay đổi nhiều bước, thực hiện từng bước, nhận ra khi một test fail, và thử một cách sửa, tất cả trong một chỉ dẫn từ bạn. Bạn vẫn nắm được tình hình bằng cách đọc kế hoạch trước khi nó chạy và review diff trước khi bạn commit.

Điều đầu tiên nên thiết lập là một file CLAUDE.md ở gốc project của bạn. Đó là một file ngắn, viết bằng ngôn ngữ thông thường, cho Claude biết stack, các lệnh build và test, quy ước đặt tên, và bất cứ điều gì một contributor mới cần biết ngay ngày đầu. Khi file này tồn tại, Claude Code tự động đọc nó ở đầu mỗi phiên làm việc thay vì phải đoán.

Công Việc Thực Tế

Những Quy Trình Lập Trình Viên Đang Chạy Tuần Này

Review code tập trung vào bảo mật

Chỉ Claude vào một diff và một loại rủi ro cụ thể (bypass auth, injection, input chưa validate) thay vì yêu cầu một review chung chung.

Viết và chạy test

Claude đọc các pattern test và framework hiện có của bạn, viết test khớp với style của bạn, chạy chúng, và lặp lại khi có fail.

Refactor trên nhiều file

Với bất kỳ thay đổi chạm vào hơn vài file, hãy yêu cầu một kế hoạch trước: file nào thay đổi, cấu trúc mới trông như thế nào, hành vi nào không được thay đổi.

Debug một bug khó tái hiện

Đưa cho nó test đang fail, function đang bị kiểm tra, và log thật từ lần fail đó, rồi yêu cầu nó suy luận qua các nguyên nhân trước khi đề xuất cách sửa.

Làm quen với một codebase chưa quen

Yêu cầu Claude trace một request qua codebase và giải thích luồng xử lý, thường nhanh hơn việc tự đọc code từ đầu.

Anthropic API

Tool use, agent, và xây dựng với Anthropic API

Anthropic API là cách bạn đưa Claude vào sản phẩm riêng của mình thay vì dùng qua cửa sổ chat. Bạn gửi một request với prompt của mình và nhận lại một response, cùng hình dạng như bất kỳ HTTP API nào, nghĩa là nó khớp với bất kỳ backend stack bạn đang chạy, có thể là một service Python, một app Node, hoặc bất cứ thứ gì khác.

Tool use là tính năng biến một lệnh gọi request-response đơn lẻ thành một thứ gần giống agent hơn. Bạn mô tả các tool mà Claude có thể dùng, mỗi tool là một function có tên, mô tả, và một JSON schema cho input của nó, chẳng hạn một function lookup_order nhận vào một order ID. Khi Claude quyết định cần dùng tool đó để trả lời một câu hỏi, nó trả về một tool_use block thay vì câu trả lời thông thường. Code của bạn thực thi lệnh gọi function thật, bất kể đó là gì trong hệ thống của bạn, một database query, một lệnh gọi API, một script, và gửi kết quả lại cho Claude dưới dạng một tool_result. Claude đọc kết quả đó và tiếp tục.

Một agent, theo nghĩa thực tế, chỉ là loop này được chạy nhiều hơn một lần: Claude chọn một tool, bạn thực thi nó, Claude đọc kết quả và chọn tool kế tiếp, cho đến khi task hoàn thành hoặc nó có đủ thông tin để trả lời. Model Context Protocol là một chuẩn để mô tả các tool và kết nối đó theo cách thống nhất, nên cùng một định nghĩa tool có thể dùng được trên nhiều client khác nhau thay vì phải nối lại từ đầu cho mỗi project.

Streaming là phần còn lại đáng biết: thay vì chờ toàn bộ response, API có thể gửi trả token khi chúng được sinh ra, đó là điều làm cho giao diện chat và gợi ý code trực tiếp cảm giác phản hồi nhanh thay vì bị trễ.

Giữ An Toàn

Cách Giữ An Toàn Cho Những Thay Đổi Code Của Claude

Không có gì ở đây là đặc thù cho AI. Đó là cùng một kỷ luật giữ an toàn cho code của bất kỳ contributor nào, được áp dụng một cách nhất quán.

Giữ diff nhỏ

Yêu cầu một thay đổi mỗi lần. Một diff năm file có thể review trong mười phút; một diff năm mươi file sẽ bị duyệt qua loa, và đó chính là lúc bug lọt qua.

Test trước khi merge, không phải sau

Để Claude viết hoặc cập nhật test như một phần của cùng task đó, và yêu cầu chúng pass trước khi bạn coi diff là xong.

Tự mình đọc diff

Claude có thể giải thích nó đã thay đổi gì và tại sao, nhưng người commit code vẫn phải chịu trách nhiệm là đã thực sự đọc nó.

Không bao giờ dán secret vào prompt

API key, credential, và dữ liệu khách hàng không thuộc về lịch sử chat hay phiên Claude Code, cũng như chúng không thuộc về một tin nhắn Slack.

Dạy nó quy ước của bạn một lần

Một file CLAUDE.md với stack, các lệnh, và style guide của bạn giảm bớt việc sửa qua sửa lại tốn hết cả phiên làm việc.

Bắt Đầu Từ Đâu

Lộ trình khởi đầu cho lập trình viên

Nếu bạn mới dùng Claude như một lập trình viên, cách nhanh nhất là ba bài học ngắn, theo thứ tự. Bắt đầu với Ba Cách Dùng Claude trong khóa Ba Chế Độ, bài này trình bày đúng sự phân biệt chat, Claude Code, và API nêu ở trên, để bạn biết dùng bề mặt nào trước khi mở terminal.

Từ đó, chuyển sang Claude Code: Xây Dựng Bằng Lời, cũng trong khóa Ba Chế Độ. Bài này đi qua một phiên Claude Code thật trông như thế nào: mô tả một task bằng ngôn ngữ thông thường, xem nó đọc repo của bạn và áp dụng các thay đổi, và review kết quả trước khi đưa lên production.

Bài thứ ba là CLAUDE.md: bộ khung project của bạn, từ khóa Thiết Lập Cho Người Thực Hành. Đây là nơi bạn học cách viết file giúp Claude không phải đoán lại stack, các lệnh, và quy ước của bạn mỗi phiên làm việc, thói quen duy nhất giúp mọi phiên sau đó nhanh hơn.

Khi xong ba bài đó, phần còn lại của khóa Thiết Lập Cho Người Thực Hành sẽ nói về hook và automation, kết nối Claude với stack của bạn qua MCP server, và xây một quy trình vận hành hàng tuần, đây là nơi khía cạnh thói quen hàng ngày của việc dùng Claude như một lập trình viên thực sự tích lũy.

Giới Hạn

Những gì Claude làm sai, và trách nhiệm vẫn thuộc về bạn

Claude có thể sai một cách tự tin. Nó có thể đề xuất một cách sửa pass các test bạn đưa cho nhưng bỏ lỡ một edge case bạn chưa nghĩ tới để test, hoặc dùng một library function không tồn tại. Hãy coi output của nó như một bản draft đầu tiên mạnh mẽ từ một đồng nghiệp nhanh, đọc nhiều, không phải một quyết định đã được chốt.

Code được sinh ra cần cùng mức review bảo mật như code do người viết, và có thể cần chú ý hơn trong vài lần đầu làm việc cùng nhau, cho đến khi bạn đã hiểu nó thường sai ở đâu trên codebase cụ thể của bạn. Đừng bỏ qua một lượt review tập trung vào bảo mật cho bất cứ thứ gì chạm vào authentication, thanh toán, hoặc dữ liệu người dùng chỉ vì nó ra từ một công cụ viết code trôi chảy.

Source code bảo mật, dữ liệu khách hàng, và credential không nên đưa vào bất kỳ công cụ AI nào mà không kiểm tra policy của tổ chức bạn trước. Nếu bạn làm ở nơi có policy xử lý dữ liệu hoặc nghĩa vụ bảo mật với client, nghĩa vụ đó không thay đổi chỉ vì người review là một model thay vì một con người.

Cuối cùng, mức độ tự chủ là một thang chỉnh, không phải một công tắc bật tắt. Claude Code có thể chạy test và cả commit tự động nếu bạn cho phép, nhưng thói quen chuyên nghiệp là giữ một bước review của con người trước khi bất cứ thứ gì chạm tới shared branch hoặc production, cùng loại cổng kiểm soát bạn muốn có với pull request tháng đầu của một nhân viên mới.

Bắt đầu bài học miễn phí giải thích ba cách dùng Claude

Đọc về cách dùng Claude trong công việc lập trình và thực sự chạy Claude Code trong terminal của riêng bạn là hai việc khác nhau. Chương trình học của Nightschool AI thực hành ngay từ bài đầu tiên, bắt đầu với đúng sự phân biệt chat so với Claude Code so với API được nói đến trên trang này.

Câu hỏi thường gặp

Lập trình viên dùng Claude như thế nào?

Lập trình viên thường dùng Claude trên ba bề mặt: giao diện chat Claude AI để lên kế hoạch, thảo luận thiết kế, và review code đã dán vào; Claude Code cho công việc trong terminal, nơi Claude đọc và sửa một repository thật; và Anthropic API để xây Claude, bao gồm tool use và agent loop, vào sản phẩm riêng của họ.

Claude Code là gì và bắt đầu dùng nó như thế nào?

Claude Code là một công cụ command-line chạy Claude ngay trong project của bạn. Bạn khởi động nó từ thư mục gốc repository và mô tả một task bằng ngôn ngữ thông thường; nó đọc file của bạn và CLAUDE.md, thực hiện các thay đổi, chạy test, và báo lại. Thiết lập một file CLAUDE.md trước, mô tả stack và các lệnh của bạn, giúp những phiên làm việc đầu tiên chính xác hơn nhiều.

Claude có tốt cho review code không?

Có, đặc biệt khi bạn cho nó một diff cụ thể và một tiêu chuẩn cụ thể để kiểm tra, chẳng hạn vấn đề bảo mật, thiếu validation input, hoặc tuân thủ quy ước của team bạn. Nó mạnh hơn nhiều khi được yêu cầu kiểm tra một điều cụ thể so với khi được giao một câu 'review code của tôi' mơ hồ, giống như một reviewer con người cũng làm việc tốt hơn khi có tiêu chí review rõ ràng.

Làm sao để dùng Anthropic API?

Bạn gửi một HTTP request với prompt của mình và nhận lại một response dạng text, cùng hình dạng như bất kỳ lệnh gọi API nào, có thể gọi từ Python, Node, hoặc backend bất kỳ bạn đang chạy. Để xây thứ gì đó hơn một câu hỏi-trả lời đơn lẻ, bạn thêm tool use, cho Claude các function nó có thể gọi, và xử lý trao đổi tool_use và tool_result trong code của riêng bạn.

Tool use trong Claude là gì?

Tool use cho phép bạn mô tả các function Claude có thể gọi, chẳng hạn tra cứu một order hoặc query một database, mỗi function có tên và một JSON schema cho input của nó. Khi Claude quyết định cần một tool, nó trả về một yêu cầu tool_use thay vì câu trả lời thông thường; code của bạn chạy function thật và gửi kết quả lại để Claude tiếp tục, đây là nền tảng cho hầu hết quy trình agent.

Claude có thể viết test cho code của tôi không?

Có. Claude có thể đọc các pattern test và framework hiện có của bạn, có thể là pytest, Jest, hoặc Vitest, và viết unit test, integration test, hoặc end-to-end test khớp với style của bạn. Trong Claude Code, nó cũng có thể chạy các test nó viết và tự sửa lỗi lặp đi lặp lại, thay vì đưa cho bạn test rồi bạn phải tự debug.

Làm sao để giữ an toàn cho những thay đổi code của Claude?

Giữ cùng kỷ luật bạn muốn có từ bất kỳ contributor nào: yêu cầu diff nhỏ thay vì thay đổi lớn, yêu cầu test pass trước khi bất cứ thứ gì được merge, tự mình đọc diff trước khi commit, và không bao giờ dán secret hay dữ liệu khách hàng vào prompt. Một file CLAUDE.md giảm bớt các lỗi sinh ra từ việc Claude phải đoán quy ước của bạn.

Claude hoạt động với những ngôn ngữ lập trình nào?

Claude hoạt động với các ngôn ngữ phổ biến bao gồm Python, TypeScript, JavaScript, Go, Rust, Java, C/C++, Ruby, và PHP, và hiểu các pattern framework thông dụng cho các công cụ như React, Next.js, Django, và FastAPI. Claude Code hoạt động với bất kỳ ngôn ngữ nào chạy được trong terminal, vì nó vận hành trực tiếp trên file và lệnh shell của bạn thay vì qua một plugin đặc thù cho từng ngôn ngữ.

Claude Code có miễn phí để cài đặt không?

Bản thân Claude Code miễn phí để cài đặt. Dùng nó cần có hoặc một Anthropic API key, tính phí theo token, hoặc một gói subscription Claude có bao gồm quyền dùng Claude Code. Không có phí license riêng nào thêm cho công cụ command-line này.

Từ đọc về Claude đến chạy nó trong terminal của bạn

Bài học đầu tiên chỉ tốn vài phút; thói quen mới là thứ đem lại lợi ích.

Nightschool AI là một nền tảng học tập độc lập và không liên kết, không được Anthropic chứng thực hoặc tài trợ. Claude là nhãn hiệu của Anthropic, PBC. Bạn đang tìm Claude Academy chính thức của Anthropic? Truy cập academy.claude.com.