Phân tích và giải thích mã bằng GitHub Copilot

Đã hoàn thành

Các nhà phát triển sử dụng GitHub Copilot để động não các ứng dụng hoặc tính năng mới, khám phá các công cụ và kỹ thuật mã hóa, đánh giá các vấn đề và các bản sửa lỗi tiềm năng cũng như giải thích mã phức tạp hoặc không quen thuộc. GitHub Copilot có thể giúp bạn hiểu mục đích và hành vi của mã, giúp làm việc và bảo trì dễ dàng hơn.

Mỗi tính năng GitHub Copilot sau đây có thể được sử dụng để phân tích hoặc giải thích mã:

  • Chế độ xem trò chuyện: Sử dụng dạng xem Trò chuyện để đặt câu hỏi về các dự án mã, chủ đề mã hóa và khái niệm công nghệ chung của bạn.
  • Trò chuyện tại chỗ: Bắt đầu một phiên trò chuyện tại chỗ trực tiếp từ trình soạn thảo để hỏi về các phần mã cụ thể.
  • Hành động thông minh: Chạy hành động thông minh Giải thích để giải thích mã đã chọn mà thậm chí không cần phải viết lời nhắc.
  • Trò chuyện Nhanh: Đặt câu hỏi nhanh và xem lại những gì bạn đang làm.

Sử dụng chế độ xem Trò chuyện trong chế độ Hỏi tổng đài viên để phân tích và giải thích mã

Chế độ xem Chat trong Visual Studio Code được sử dụng để quản lý các cuộc trò chuyện giữa bạn và lập trình viên cặp AI. Theo mặc định, chế độ xem Chat nằm trong Thanh bên phụ ở phía bên phải của cửa sổ Visual Studio Code. Khi bạn gửi lời nhắc, lập trình viên ghép nối AI sẽ phản hồi bằng mô tả ngôn ngữ tự nhiên, đoạn mã và các thông tin liên quan khác. Phản hồi được hiển thị trong dạng xem Trò chuyện.

Để truy cập chế độ xem Trò chuyện, bạn có thể chọn nút Toggle Chat (biểu tượng Copilot), chọn Open Chat từ menu GitHub Copilot hoặc sử dụng phím tắt Ctrl+Alt+I. Chế độ xem Chat mặc định là chế độ Hỏi tổng đài viên, nhưng giữ lại chế độ được chọn gần đây nhất khi bạn chuyển đổi giữa mở và ẩn.

Bạn có thể sử dụng chế độ xem Trò chuyện ở chế độ Hỏi tổng đài viên cho nhiều chủ đề. Ví dụ:

  • Đặt câu hỏi về mã hóa và các khái niệm công nghệ ("What is a linked list?", "top 10 popular web frameworks")
  • Động não ý tưởng về cách giải quyết vấn đề mã hóa tốt nhất ("How to add auth to my project?")
  • Giải thích một khối mã ("@workspace /explain", "What does this code do?")
  • Đề xuất sửa lỗi mã ("@workspace /fix", "This method gives a FileNotFoundException")
  • Hỏi về cài đặt VS Code ("@vscode how do I disable the minimap?")

Ảnh chụp màn hình hiển thị chế độ xem Trò chuyện hỏi về mẫu Singleton.

Chế độ Ask agent hỗ trợ các tính năng giao diện sau:

  • Thanh công cụ dạng xem trò chuyện: Thanh công cụ dạng xem Trò chuyện nằm ở góc trên bên phải của dạng xem Trò chuyện. Bạn có thể sử dụng thanh công cụ để quản lý lịch sử trò chuyện, bắt đầu trò chuyện mới, mở dạng xem Trò chuyện ở một vị trí khác hoặc ẩn dạng xem Trò chuyện. Di con trỏ chuột trên biểu tượng nút thanh công cụ để xem mô tả.

  • Khu vực phản hồi trò chuyện: Khu vực phản hồi trò chuyện là khoảng trống bên dưới thanh công cụ chế độ xem trò chuyện, nơi GitHub Copilot hiển thị phản hồi. Phản hồi bao gồm đề xuất mã, giải thích, yếu tố tương tác và thông tin khác liên quan đến lời nhắc của bạn.

  • Nút Đính kèm ngữ cảnh: Nút Đính kèm ngữ cảnh (biểu tượng kẹp giấy) nằm ở phần dưới cùng của chế độ xem Trò chuyện. Bạn có thể sử dụng nút này để đính kèm tệp, lựa chọn, ký hiệu hoặc các tài nguyên khác từ không gian làm việc của mình làm ngữ cảnh cho lời nhắc trò chuyện.

  • Hỏi Copilot: Hộp văn bản Hỏi Copilot là nơi bạn nhập lời nhắc của mình. Khi bạn đang sử dụng chế độ Hỏi tổng đài viên, lời nhắc có thể bao gồm người tham gia trò chuyện, lệnh gạch chéo và biến trò chuyện.

    Ở chế độ Hỏi tổng đài viên, bạn có thể sử dụng người tham gia trò chuyện để chỉ định ngữ cảnh câu hỏi của mình. Ví dụ: bạn có thể sử dụng @workspace để chỉ ra rằng ngữ cảnh là các tệp không gian làm việc của bạn.

  • Nút Bắt đầu trò chuyện thoại: Nút Bắt đầu trò chuyện thoại nằm ở bên trái của hộp văn bản Hỏi Copilot. Bạn có thể sử dụng nút này để bật hoặc tắt tương tác bằng giọng nói với GitHub Copilot. Khi tương tác bằng giọng nói được bật, bạn có thể sử dụng giọng nói của mình để đặt câu hỏi GitHub Copilot.

  • Menu thả xuống tổng đài viên: Danh sách thả xuống tổng đài viên nằm ở bên phải hộp văn bản Hỏi Copilot. Bạn có thể sử dụng menu thả xuống này để chuyển đổi giữa các chế độ Hỏi, Tổng đài viên và Kế hoạch.

  • Menu Chọn Mô hình: Menu Chọn Mô hình nằm ở bên phải của menu thả xuống tổng đài viên. Bạn có thể sử dụng nút này để chọn mô hình mà GitHub Copilot sử dụng để tạo phản hồi. Lựa chọn kiểu máy có thể bị giới hạn dựa trên đăng ký GitHub Copilot, cài đặt GitHub Copilot và kiểu máy có sẵn trong khu vực của bạn.

  • Nút gửi: Nút Gửi nằm ở bên phải menu Chọn mô hình. Bạn có thể sử dụng nút này để gửi lời nhắc của mình cho GitHub Copilot và nhận phản hồi. Nút Gửi bao gồm một menu thả xuống với các tùy chọn về cách gửi lời nhắc của bạn.

Sử dụng tính năng trò chuyện tại chỗ để phân tích và giải thích mã

Tính năng trò chuyện tại chỗ cho phép bạn bắt đầu một phiên trò chuyện trực tiếp từ người chỉnh sửa. Cuộc trò chuyện tại chỗ rất hữu ích khi bạn muốn đặt câu hỏi về mã cụ thể (phần, dòng hoặc biến) mà không cần rời khỏi trình soạn thảo. Phản hồi được hiển thị trong cửa sổ trò chuyện tại chỗ.

Để truy cập trò chuyện nội tuyến, bạn có thể chọn Editor Inline Chat từ menu GitHub Copilot hoặc sử dụng phím tắt Ctrl+I. Sử dụng phím Escape để đóng cửa sổ trò chuyện tại chỗ.

Bạn có thể sử dụng tính năng trò chuyện nội tuyến để hỏi về các chủ đề mã hóa chung, nhưng tốt nhất là bạn nên đặt câu hỏi cho mã trong trình soạn thảo hiện hoạt. Ví dụ:

  • Giải thích một khối mã ("/explain How are the parameters of the XYZ method used?", "/explain #selection")
  • Kiểm tra một vấn đề ("/explain Why does this code throw an exception?", "/explain How can I fix this issue?")
  • Đặt câu hỏi về mã hóa hoặc khái niệm công nghệ ("/explain Can LINQ be used to improve readability?")

Ảnh chụp màn hình hiển thị cuộc trò chuyện nội tuyến hỏi về mã đã chọn.

Cuộc trò chuyện nội tuyến hỗ trợ các tính năng sau:

  • Hỏi Copilot: Hộp văn bản Hỏi Copilot là nơi bạn nhập lời nhắc của mình. Khi bạn đang sử dụng cuộc trò chuyện tại chỗ, lời nhắc có thể bao gồm các lệnh sổ chéo và biến trò chuyện, nhưng người dự trò chuyện không được hỗ trợ.

  • Nút Bắt đầu trò chuyện thoại: Nút Bắt đầu trò chuyện thoại nằm ở bên trái của hộp văn bản Hỏi Copilot. Bạn có thể sử dụng nút này để bật hoặc tắt tương tác bằng giọng nói với GitHub Copilot. Khi tương tác bằng giọng nói được bật, bạn có thể sử dụng giọng nói của mình để đặt câu hỏi GitHub Copilot hoặc yêu cầu đề xuất mã.

  • Menu Chọn mô hình: Menu Chọn mô hình cho phép bạn chọn mô hình mà GitHub Copilot sử dụng để tạo phản hồi. Lựa chọn kiểu máy có thể bị giới hạn dựa trên đăng ký GitHub Copilot, cài đặt GitHub Copilot và kiểu máy có sẵn trong khu vực của bạn.

  • Nút gửi: Nút Gửi nằm ở bên phải menu Chọn mô hình. Bạn có thể sử dụng nút này để gửi lời nhắc của mình cho GitHub Copilot và nhận phản hồi. Nút Gửi bao gồm một menu thả xuống với các tùy chọn về cách gửi lời nhắc của bạn.

Sử dụng hành động thông minh Giải thích để giải thích mã

Hành động thông minh Giải thích được sử dụng để giải thích mã đang mở trong trình soạn thảo. Bạn có thể thu hẹp tiêu điểm bằng cách chọn một khối mã, một dòng mã duy nhất hoặc biến số. Khi không có mã nào được chọn, phần giải thích tham chiếu đến tệp hiện hoạt. Hành động thông minh Giải thích sẽ hiển thị phản hồi trong dạng xem Trò chuyện.

Để truy cập hành động Giải thích thông minh, bạn có thể bấm chuột phải vào trình soạn thảo mã đang hoạt động, chọn Copilot, sau đó chọn Giải thích.

Ảnh chụp màn hình hiển thị hành động Giải thích thông minh trong menu ngữ cảnh.

Sử dụng cửa sổ Trò chuyện Nhanh để phân tích và giải thích mã

Tính năng Trò chuyện Nhanh cho phép bạn đặt câu hỏi nhanh và xem lại những gì bạn đang làm. Tính năng Trò chuyện Nhanh rất hữu ích khi bạn muốn đặt câu hỏi nhanh mà không ảnh hưởng đến lịch sử trò chuyện mà bạn đang xây dựng trong chế độ xem Trò chuyện. Phản hồi được hiển thị trong cửa sổ Trò chuyện Nhanh.

Để truy cập cửa sổ Trò chuyện nhanh, bạn có thể chọn Trò chuyện nhanh từ menu GitHub Copilot hoặc sử dụng phím tắt Ctrl+Shift+Alt+L.

Cửa sổ Trò chuyện nhanh hỗ trợ các tính năng ngữ cảnh tương tự được cung cấp bởi chế độ xem Trò chuyện trong chế độ Hỏi tổng đài viên, nhưng nó không cung cấp cách để quản lý lịch sử trò chuyện. Cửa sổ Trò chuyện Nhanh được thiết kế cho các câu hỏi và câu trả lời nhanh, vì vậy nó không bao gồm tất cả các tính năng được cung cấp bởi dạng xem Trò chuyện.

Ảnh chụp màn hình hiển thị cửa sổ Trò chuyện nhanh.

Bạn có thể sử dụng Trò chuyện nhanh cho các loại câu hỏi tương tự như chế độ xem Trò chuyện trong chế độ Hỏi tổng đài viên. Tuy nhiên, Trò chuyện Nhanh phù hợp nhất cho các câu hỏi nhanh không phải là một phần của cuộc hội thoại lớn hơn.

Tóm tắt

GitHub Copilot cung cấp một số tính năng có thể được sử dụng để phân tích và giải thích mã. Dạng xem Trò chuyện, trò chuyện nội tuyến, Giải thích hành động thông minh và cửa sổ Trò chuyện Nhanh đều cung cấp cách đặt câu hỏi về dự án mã, chủ đề mã hóa và khái niệm công nghệ chung. Bằng cách sử dụng các tính năng này, bạn có thể hiểu rõ hơn về mã của mình và cải thiện kỹ năng mã hóa của mình.