🏠 Trang chủ
Benchmark
📊 Tất cả benchmark 🦖 Khủng long v1 🦖 Khủng long v2 ✅ Ứng dụng To-Do List 🎨 Trang tự do sáng tạo 🎯 FSACB - Trình diễn cuối cùng 🌍 Benchmark dịch thuật
Mô hình
🏆 Top 10 mô hình 🆓 Mô hình miễn phí 📋 Tất cả mô hình ⚙️ Kilo Code
Tài nguyên
💬 Thư viện prompt 📖 Thuật ngữ AI 🔗 Liên kết hữu ích
← Quay lại danh mục
beginner

Hoàn tác thao tác vừa làm

#vi #undo #recovery

Hãy thực hiện một thay đổi sai sót và sau đó sử dụng lệnh undo để khôi phục lại.

Xóa một dòng văn bản bằng lệnh dd. Sau đó nhấn phím u để hoàn tác lệnh vừa rồi và khôi phục lại dòng văn bản đã bị xóa.
Dễ

Bật chế độ chèn văn bản

#insert #mode #editing

Học cách chuyển từ chế độ lệnh sang chế độ chèn để soạn thảo.

Bạn đang ở chế độ Command (mặc định). Di chuyển con trỏ đến cuối dòng hiện tại, chuyển sang chế độ Insert và thêm dòng chữ 'Xin chào'.
Dễ

Lưu file và thoát

#save #exit #write #quit

Cách lưu thay đổi và đóng trình chỉnh sửa vi một cách an toàn.

Bạn đã thực hiện xong các thay đổi. Hãy quay về chế độ Command và thực hiện lệnh để lưu nội dung lại file rồi thoát khỏi chương trình.
Dễ

Xóa ký tự tại con trỏ

#delete #character #x

Loại bỏ một ký tự sai lỗi chính tả ngay tại vị trí con trỏ.

Con trỏ đang nằm trên ký tự thừa ở giữa dòng. Hãy xóa ký tự đó đi mà không cần vào chế độ Insert.
Dễ

Xóa toàn bộ dòng

#delete #line #dd

Cách xóa trọn vẹn một dòng văn bản đang chứa con trỏ.

Dòng văn bản hiện tại là một dòng ghi chú trống và không cần thiết. Hãy xóa hoàn toàn dòng này.
Dễ

Hoàn tác thay đổi

#undo #revert #u

Sử dụng lệnh undo để quay lại trạng thái trước khi sửa sai.

Bạn vừa lỡ tay xóa một từ quan trọng. Hãy sử dụng lệnh hoàn tác để khôi phục lại từ vừa bị xóa.
Dễ

Sao chép một dòng

#copy #yank #yy

Sử dụng lệnh yank để copy nội dung của dòng hiện tại vào bộ nhớ đệm.

Dòng hiện tại chứa cấu hình cần thiết. Hãy sao chép nội dung của dòng này vào bộ nhớ đệm để sử dụng sau.
Dễ

Dán văn bản

#paste #put #p

Chèn nội dung đã sao chép từ bộ nhớ đệm vào dưới con trỏ.

Bạn vừa sao chép một dòng code. Hãy di chuyển con trỏ xuống dòng bên dưới và dán nội dung đã sao chép vào đó.
Dễ

Tìm kiếm từ khóa

#search #find #pattern

Định vị nhanh vị trí của một từ cụ thể trong văn bản.

File này rất dài. Hãy tìm kiếm từ khóa 'function' và di chuyển con trỏ đến vị trí đầu tiên xuất hiện từ đó.
Dễ

Thay thế một ký tự

#replace #character #r

Ghi đè ký tự tại vị trí con trỏ bằng ký tự khác.

Con trỏ đang ở trên chữ 'a' nhưng đúng phải là chữ 'o'. Hãy thay thế chữ 'a' thành chữ 'o' ngay lập tức.
advanced

Tái cấu trúc mã nguồn theo nguyên tắc SOLID

#refactoring #oop #solid #architecture #clean-code

Yêu cầu phân tích và cải tổ một đoạn mã nguồn phức tạp để tuân thủ chặt chẽ năm nguyên tắc thiết kế hướng đối tượng SOLID nhằm tăng tính bảo trì và mở rộng.

Hãy đóng vai là một kiến trúc sư phần mềm cấp cao. Phân tích đoạn mã nguồn lớp quản lý đơn hàng (OrderManager) hiện tại đang chứa hàng nghìn dòng code, xử lý trực tiếp logic cơ sở dữ liệu, gửi email và tính toán thuế. Viết kế hoạch tái cấu trúc chi tiết để tách biệt các trách nhiệm theo nguyên tắc Single Responsibility. Sau đó, cung cấp mã mẫu đã được cải tổ để áp dụng các nguyên tắc Open/Closed và Dependency Injection, đảm bảo mã nguồn dễ test và mở rộng mà không sửa đổi logic cốt lõi.
advanced

Thiết kế kiến trúc Microservices chịu tải cao

#microservices #system-design #scalability #kafka #event-driven

Thiết kế kiến trúc hệ thống phân tán cho nền tảng thương mại điện tử lớn, tập trung vào xử lý giao đồng thời và nhất quán dữ liệu.

Thiết kế kiến trúc Microservices cho hệ thống Flash Sale phục vụ 1 triệu người dùng đồng thời. Xác định các dịch vụ cốt lõi (User, Product, Order, Payment) và mô tả cơ chế giao tiếp giữa chúng. Giải quyết bài toán về tính nhất quán dữ liệu phân tán (Distributed Transactions) sử dụng pattern Saga hay Event Sourcing. Mô tả cách triển khai CQRS để tối ưu hóa hiệu suất đọc và ghi. Sơ đồ hóa luồng dữ liệu khi một đơn hàng được đặt, từ API Gateway đến khi cập nhật kho và gửi thông báo.
advanced

Tối ưu hóa truy vấn SQL phức tạp

#sql #optimization #database #performance #query-tuning

Phân tích và viết lại các câu lệnh SQL có hiệu suất thấp, sử dụng các kỹ thuật nâng cao như window functions và CTEs.

Cho một cơ sở dữ liệu quan hệ chứa bảng Giao dịch (Transactions), Khách hàng (Customers) và Cửa hàng (Stores) với hàng chục triệu bản ghi. Bạn cần viết một truy vấn SQL để tìm ra 10 cửa hàng có doanh thu tăng trưởng nhanh nhất trong quý này so với quý trước, đồng thời liệt kê danh sách 5 khách hàng trung thành nhất của từng cửa hàng đó. Sử dụng Common Table Expressions (CTE) và Window Functions (như RANK, LAG) để giải quyết vấn đề này trong một truy vấn duy nhất thay vì dùng các truy vấn con lồng nhau, nhằm tối ưu hóa thời gian thực thi.
advanced

Phân tích lỗ hổng bảo mật ứng dụng web

#security #owasp #vulnerability-assessment #web-security #penetration-testing

Thực hiện kiểm tra mã giả định để xác định các lỗ hổng bảo mật nghiêm trọng theo OWASP Top 10 và đề xuất phương pháp khắc phục.

Hãy phân tích đoạn mã xử lý đăng nhập và khôi phục mật khẩu của một ứng dụng web written in Java Spring Boot. Xác định các lỗ hổng tiềm ẩn liên quan đến Injection (SQLi), Broken Authentication, vàSensitive Data Exposure. Đặc biệt tập trung vào cách hệ thống xử lý session tokens và mã hóa mật khẩu. Đề xuất các thay đổi mã cụ thể và cấu hình bảo mật (như sử dụng BCrypt với đủ round, CSRF tokens, HTTP headers bảo mật) để mitigate các rủi ro này.
advanced

Giải quyết vấn đề đồng bộ hóa trong môi trường đa luồng

#concurrency #multithreading #race-condition #deadlock #locking

Thiết kế giải pháp cho bài toán tài nguyên chia sẻ trong lập trình đa luồng, tránh tình trạng race condition và deadlock.

Triển khai một lớp Cache trong bộ nhớ (In-memory Cache) hỗ trợ đọc ghi đa luồng bằng ngôn ngữ C# hoặc Java. Yêu cầu hệ thống phải xử lý hàng nghìn yêu cầu đọc mỗi giây nhưng đồng thời phải đảm bảo tính nhất quán khi ghi. Sử dụng kỹ thuật Double-Checked Locking hoặc Concurrent Collections để tối ưu hóa hiệu năng. Ngoài ra, hãy mô phỏng một kịch bản deadlock có thể xảy ra khi có nhiều tài nguyên khóa và cung cấp giải pháp để ngăn chặn nó bằng kỹ thuật Lock Ordering hoặc Timeout.