Thư viện Prompt
Prompt cho Lập trình
15 prompt giúp bạn nói cùng ngôn ngữ với đội kỹ thuật và ra quyết định công nghệ vững vàng hơn. Mỗi prompt được tinh chỉnh theo những kỹ thuật prompt engineering hiệu quả nhất, chỉ cần điền thông tin của bạn là dùng được ngay.
Thay thế nội dung trong [dấu ngoặc vuông] bằng thông tin cụ thể của bạn.
Bạn là một senior software engineer có hơn 10 năm kinh nghiệm trong [ngôn ngữ/framework]. Hãy thực hiện code review chi tiết cho đoạn code sau:
[Dán code cần review vào đây]Ngữ cảnh: Code này là một phần của [mô tả module/feature] trong dự án [loại dự án].
Hãy review theo từng bước:
- Tổng quan — Đánh giá chung về chất lượng code (1-10)
- Tính đúng đắn — Logic có chính xác không? Có edge case nào bị bỏ sót?
- Hiệu năng — Có bottleneck hoặc vòng lặp không cần thiết không?
- Bảo mật — Có lỗ hổng bảo mật nào (SQL injection, XSS, etc.)?
- Code style — Naming convention, formatting, DRY principle
- Error handling — Xử lý lỗi có đầy đủ và phù hợp không?
- Testability — Code có dễ viết test không?
- Gợi ý cải thiện — Đề xuất cụ thể với code mẫu
Sắp xếp các issue theo mức độ nghiêm trọng: Critical > Major > Minor > Suggestion.
Mẹo: Thêm “tuân theo coding convention: [convention name]” để AI review theo tiêu chuẩn cụ thể của team bạn.
Tôi gặp lỗi sau khi chạy ứng dụng [ngôn ngữ/framework]:
Error message:
[Dán error message / stack trace đầy đủ vào đây]Code liên quan:
[Dán đoạn code gây lỗi]Ngữ cảnh:
- Môi trường:
[dev/staging/production] - Phiên bản:
[ngôn ngữ version, framework version] - Lỗi xảy ra khi:
[mô tả hành động trigger lỗi] - Đã thử:
[liệt kê các cách đã thử fix]
Hãy phân tích từng bước:
- Trước tiên, giải thích error message này có nghĩa gì
- Xác định nguyên nhân gốc rễ (root cause) có thể
- Liệt kê các giải pháp theo thứ tự khả năng cao nhất
- Cung cấp code fix cụ thể cho từng giải pháp
- Gợi ý cách prevent lỗi tương tự trong tương lai
Bạn là chuyên gia về clean code và SOLID principles. Hãy refactor đoạn code [ngôn ngữ] sau để cải thiện chất lượng:
[Dán code cần refactor vào đây]Yêu cầu refactor:
- Áp dụng nguyên tắc:
[SOLID / DRY / KISS / YAGNI — chọn 1 hoặc nhiều] - Design pattern phù hợp (nếu có):
[Strategy / Observer / Factory / etc.] - Giữ nguyên chức năng (behavior), chỉ thay đổi cấu trúc
Hãy lập kế hoạch trước khi refactor:
- Liệt kê các “code smell” hiện tại
- Đề xuất kế hoạch refactor theo thứ tự ưu tiên
- Thực hiện refactor từng bước, giải thích lý do cho mỗi thay đổi
- Cung cấp code sau khi refactor hoàn chỉnh
- So sánh trước/sau: điểm cải thiện và trade-off (nếu có)
Mẹo: Bạn có thể thêm “giữ backward compatibility” nếu code đang được sử dụng bởi các module khác.
Thiết kế REST API cho [tên module/feature] trong hệ thống [mô tả hệ thống].
Yêu cầu nghiệp vụ:
[Liệt kê các chức năng cần thiết]- Đối tượng sử dụng:
[admin/user/public] - Authentication:
[JWT / OAuth2 / API Key]
Hãy thiết kế bao gồm:
- Danh sách endpoints — phương thức HTTP, URL path, mô tả
- Request/Response schema — JSON format cho mỗi endpoint
- Status codes — Các HTTP status code sử dụng và ý nghĩa
- Pagination — Chiến lược phân trang cho list endpoints
- Error response format — Cấu trúc thống nhất cho error
- Validation rules — Quy tắc validate input cho mỗi field
- Rate limiting — Gợi ý giới hạn request
- Versioning strategy — Cách quản lý version API
Trình bày dưới dạng bảng cho danh sách endpoints và JSON example cho request/response.
Bạn là một QA engineer chuyên về test automation. Viết unit test cho đoạn code [ngôn ngữ] sau, sử dụng framework [Jest / Pytest / JUnit / Mocha / etc.]:
[Dán code cần viết test vào đây]Yêu cầu:
- Đạt code coverage tối thiểu
[80% / 90% / 100%] - Sử dụng pattern: Arrange - Act - Assert
- Test cả happy path và edge cases
- Mock các dependency bên ngoài:
[database / API / file system]
Ví dụ format test mong muốn:
describe('[Tên function]', () => {
it('should [mô tả behavior] when [điều kiện]', () => {
// Arrange
// Act
// Assert
});
});Liệt kê tất cả test cases cần viết trước, sau đó implement từng test.
Mẹo: Thêm “bao gồm integration test cho [scenario]” nếu cần test tương tác giữa các component.
Phân tích và tối ưu hiệu năng cho đoạn code [ngôn ngữ] sau:
[Dán code cần tối ưu vào đây]Ngữ cảnh:
- Dữ liệu xử lý:
[số lượng records / kích thước data] - Tần suất gọi:
[số request/giây hoặc số lần chạy/ngày] - Vấn đề hiện tại:
[chậm / tốn memory / timeout / etc.] - Ràng buộc:
[giới hạn RAM, CPU, budget, etc.]
Hãy phân tích từng bước:
- Đánh giá Big-O — Thời gian và không gian hiện tại
- Xác định bottleneck — Phần nào gây chậm nhất
- Đề xuất tối ưu — Sắp xếp theo impact cao → thấp:
- Tối ưu thuật toán (algorithm)
- Tối ưu cấu trúc dữ liệu
- Caching strategy
- Database query optimization (nếu liên quan)
- Concurrency / parallel processing
- Code tối ưu — Cung cấp phiên bản đã tối ưu
- Benchmark — Ước tính cải thiện (trước vs sau)
Cũng hãy tự đánh giá: trade-off nào cần cân nhắc (readability, maintainability)?
Viết documentation đầy đủ cho đoạn code [ngôn ngữ] sau theo chuẩn [JSDoc / Google Docstring / Javadoc / XML Doc / etc.]:
[Dán code cần viết documentation]Yêu cầu cho mỗi function/class/module:
- Mô tả ngắn — Chức năng chính trong 1-2 câu
- Mô tả chi tiết — Giải thích logic và thuật toán (nếu phức tạp)
- Parameters — Tên, kiểu dữ liệu, mô tả, giá trị mặc định
- Return value — Kiểu dữ liệu và mô tả
- Exceptions/Errors — Các lỗi có thể throw
- Examples — 2-3 ví dụ sử dụng thực tế
- Side effects — Nếu có tác động ngoài (ghi file, gọi API, etc.)
Ngôn ngữ documentation: [tiếng Việt / tiếng Anh].
Trả về code hoàn chỉnh với documentation được thêm vào đúng vị trí.
Bạn là polyglot programmer thành thạo cả [ngôn ngữ nguồn] và [ngôn ngữ đích]. Hãy chuyển đổi đoạn code sau:
Code gốc ([ngôn ngữ nguồn]):
[Dán code nguồn vào đây]Yêu cầu chuyển đổi:
- Ngôn ngữ đích:
[ngôn ngữ đích] - Framework/library tương đương:
[framework đích nếu có] - Giữ nguyên logic nghiệp vụ và behavior
- Sử dụng idiom và best practice của ngôn ngữ đích
Hãy thực hiện từng bước:
- Phân tích code nguồn: chức năng, dependency, pattern sử dụng
- Map các concept tương đương giữa 2 ngôn ngữ
- Chuyển đổi code, giải thích các điểm khác biệt quan trọng
- Highlight các phần không thể chuyển đổi 1-1 và cách xử lý thay thế
- Cung cấp code hoàn chỉnh đã chuyển đổi, kèm hướng dẫn setup
Mẹo: Nếu chuyển từ OOP sang functional (hoặc ngược lại), hãy nêu rõ paradigm mong muốn ở ngôn ngữ đích.
Thiết kế database schema cho hệ thống [tên hệ thống / module].
Yêu cầu nghiệp vụ:
[Mô tả các chức năng chính]- Loại database:
[PostgreSQL / MySQL / MongoDB / etc.] - Dự kiến quy mô:
[số users, số records/ngày, data retention]
Hãy thiết kế theo các bước:
- Xác định entities — Liệt kê tất cả entities và quan hệ
- ERD — Mô tả quan hệ (1-1, 1-N, N-N) dạng text
- Schema chi tiết — SQL CREATE TABLE cho mỗi bảng:
- Tên cột, kiểu dữ liệu, constraints
- Primary key, foreign key
- Indexes cần thiết
- Normalization — Đảm bảo ít nhất 3NF, giải thích nếu cần denormalize
- Sample queries — 5-10 query phổ biến nhất
- Migration strategy — Thứ tự tạo bảng (do foreign key dependencies)
- Scalability — Gợi ý partitioning, sharding nếu cần
Trình bày schema dưới dạng SQL và kèm ERD dạng text.
Tôi là lập trình viên ở trình độ [junior / mid-level / đang học] và cần hiểu đoạn code [ngôn ngữ] sau:
[Dán code phức tạp cần giải thích]Hãy giải thích cho tôi theo cách dễ hiểu nhất:
- Tổng quan — Code này làm gì? Mục đích chính trong 1-2 câu
- Giải thích từng dòng/block — Đi qua từng phần quan trọng, giải thích logic
- Concept nền — Giải thích các design pattern, thuật toán, hoặc khái niệm nâng cao được sử dụng
- Luồng thực thi — Mô tả flow chạy của code (data đi từ đâu đến đâu)
- Ví dụ cụ thể — Cho ví dụ với input/output thực tế
- Tại sao viết như vậy — Tác giả chọn cách này thay vì cách khác vì lý do gì?
Điều này rất quan trọng cho công việc của tôi. Hãy giải thích thật rõ ràng và kiên nhẫn.
Tạo boilerplate cho dự án [loại dự án: web app / API / CLI tool / mobile app] với stack sau:
Tech stack:
- Ngôn ngữ:
[ngôn ngữ] - Framework:
[framework] - Database:
[database] - Authentication:
[phương thức auth] - Deployment:
[Docker / Vercel / AWS / etc.]
Hãy cung cấp:
- Cấu trúc thư mục — Tree structure với giải thích vai trò từng folder
- File cấu hình — package.json / requirements.txt / pom.xml, tsconfig, eslint, prettier
- Entry point — File khởi chạy chính với setup cơ bản
- Environment config — .env.example với tất cả biến cần thiết
- Database connection — Setup kết nối và migration cơ bản
- Middleware — Auth, error handling, logging, CORS
- Example endpoint/route — 1 CRUD hoàn chỉnh làm mẫu
- Dockerfile (nếu cần) — Multi-stage build tối ưu
- README — Hướng dẫn setup và chạy project
- Scripts — Các lệnh dev, build, test, deploy
Ưu tiên best practice và production-ready configuration.
Mẹo: Thêm “kèm CI/CD pipeline cho [GitHub Actions / GitLab CI]” để có setup DevOps hoàn chỉnh.
Bạn là chuyên gia bảo mật ứng dụng (AppSec) với chứng chỉ OWASP. Thực hiện security audit cho đoạn code [ngôn ngữ/framework] sau:
[Dán code cần audit]Ngữ cảnh:
- Loại ứng dụng:
[web app / API / mobile backend] - Data nhạy cảm xử lý:
[PII / payment / health records / etc.] - Môi trường triển khai:
[cloud / on-premise]
Hãy kiểm tra theo OWASP Top 10 và báo cáo:
- Injection — SQL injection, NoSQL injection, command injection
- Broken Authentication — Session management, password handling
- Sensitive Data Exposure — Mã hóa, logging, data in transit/at rest
- XSS — Reflected, stored, DOM-based
- Insecure Deserialization — Object deserialization risks
- Security Misconfiguration — Headers, CORS, debug mode
- IDOR / Access Control — Authorization checks
- Input Validation — Sanitization, whitelist vs blacklist
Cho mỗi issue tìm được:
- Mức độ: Critical / High / Medium / Low
- Vị trí: Dòng code cụ thể
- Mô tả: Lỗ hổng và cách khai thác
- Fix: Code mẫu đã sửa
- Prevention: Cách ngăn chặn trong tương lai
Cũng hãy tự kiểm tra: có false positive nào trong phân tích không?
Mẹo: Bổ sung “kiểm tra thêm dependency vulnerabilities” để AI review cả các thư viện bên thứ ba.
Bạn là senior software engineer với chuyên môn về [ngôn ngữ/framework]. Tôi cần giải quyết vấn đề sau:
Vấn đề: [mô tả vấn đề cần giải quyết]
Context: [mô tả hệ thống hiện tại, constraints]
Yêu cầu: [performance/maintainability/scalability]
Đề xuất 3 giải pháp khác nhau, mỗi giải pháp bao gồm:
- Mô tả approach — giải thích cách tiếp cận
- Code mẫu — implementation cơ bản
- Ưu điểm — 2-3 điểm
- Nhược điểm — 2-3 điểm
- Phù hợp khi nào — use case tốt nhất
- Complexity — Time & Space complexity
Cuối cùng, đưa ra khuyến nghị chọn giải pháp nào dựa trên context cụ thể.
Phân tích và sửa lỗi trong đoạn code Python sau:
`[Dán code Python bị lỗi]`Error message (nếu có):
`[Dán error message]`Mô tả vấn đề: [code không chạy / output sai / performance chậm]
Hãy phân tích từng bước:
- Xác định lỗi — loại lỗi (syntax/runtime/logic/performance)
- Root cause — nguyên nhân gốc rễ
- Code đã sửa — với comment giải thích thay đổi
- Giải thích — tại sao lỗi xảy ra và cách fix hoạt động
- Phòng tránh — best practices để tránh lỗi tương tự
- Test cases — 2-3 test cases để verify fix
Viết SQL query theo yêu cầu sau:
Database: [MySQL/PostgreSQL/SQL Server/SQLite]
Bảng và cấu trúc:
`[Dán DDL hoặc mô tả cấu trúc bảng]`Yêu cầu business: [mô tả bằng ngôn ngữ tự nhiên những gì cần truy vấn]
Trả về:
- SQL query hoàn chỉnh — với formatting đẹp, dễ đọc
- Giải thích từng phần — mục đích của mỗi JOIN, WHERE, GROUP BY
- Index gợi ý — để tối ưu performance
- Kết quả mẫu — mô tả output expected
- Variations — 1-2 phiên bản thay thế (nếu có cách viết khác)