Tái cấu trúc mã bằng GitHub Copilot trò chuyện nội tuyến
Tính năng Trò chuyện nội tuyến của GitHub Copilot cho phép bạn tái cấu trúc mã trực tiếp trong trình chỉnh sửa mã. Trò chuyện tại chỗ rất hữu ích khi bạn muốn thay đổi mã của mình mà không phải chuyển sang dạng xem Trò chuyện.
Hiểu rõ mã của bạn
Trước khi bạn khởi tạo lại mã của mình, điều quan trọng là phải hiểu được mã mà bạn đang làm việc. Bạn nên hiểu mục đích của mã, cách hoạt động và bất kỳ phụ thuộc nào mà nó có thể có. Nếu bạn không quen với mã, hãy dành chút thời gian để đọc qua mã và hiểu rõ cấu trúc cũng như lô-gic của mã. Sử dụng GitHub Copilot để phân tích mã có thể giúp bạn xác định các lĩnh vực cần cải thiện và đề xuất các tùy chọn tái cấu trúc.
Bạn có thể sử dụng tính năng Trò chuyện nội tuyến để đặt câu hỏi về mã, nhận giải thích về các phần cụ thể hoặc yêu cầu đề xuất cải thiện. Ví dụ: bạn có thể yêu cầu GitHub Copilot giải thích cách thức hoạt động của một hàm cụ thể hoặc đề xuất các cách để tối ưu hóa nó. Bạn cũng có thể sử dụng tính năng Trò chuyện nội tuyến để yêu cầu trợ giúp về các tác vụ mã hóa cụ thể, chẳng hạn như tái c bước một hàm hoặc cải thiện khả năng đọc mã.
Dưới đây là một số ví dụ về lời nhắc yêu cầu GitHub Copilot trợ giúp về mã:
/explain Explain how authentication is implemented in this code
/explain Can this code be updated to improve security? Explain the concepts and show some examples
Nếu giải thích dài hoặc phức tạp, bạn có thể di chuyển sang dạng xem Trò chuyện để tiếp tục cuộc hội thoại. Bạn cũng có thể sử dụng dạng xem Trò chuyện để đặt câu hỏi theo dõi hoặc yêu cầu thêm thông tin.
Sử dụng Trò chuyện Nội tuyến để khởi tạo lại mã
Sử dụng tính năng Trò chuyện nội tuyến khi bạn muốn tạo lại một phần mã thực hiện một tác vụ cụ thể. Đối với những thay đổi phức tạp hơn liên quan đến cập nhật nhiều tệp hoặc dự án, hãy sử dụng một trong các chế độ xem Trò chuyện.
Để tạo lại mã bằng trò chuyện nội tuyến, hãy làm theo các bước sau:
Mở tệp có chứa mã bạn muốn tối ưu hóa.
Chọn mã mà bạn muốn tối ưu hóa.
Mở phiên Trò chuyện nội tuyến.
Sử dụng phím tắt Ctrl+I để mở phiên Trò chuyện nội tuyến. Ngoài ra, bạn có thể chọn Editor Inline Chat từ một trong các menu GitHub Copilot.
Nhập lời nhắc yêu cầu tối ưu hóa.
Ví dụ: Mã này có thể được cải thiện không?
Xem lại bản cập nhật mã được đề xuất.
GitHub Copilot áp dụng bản cập nhật mã được đề xuất trực tiếp trong trình chỉnh sửa, nơi bạn có thể xem lại tại chỗ, với ngữ cảnh đầy đủ của mã xung quanh.
Chọn Chấp nhận hoặc Đóng để chấp nhận hoặc hủy cập nhật mã được đề xuất.
Như với tất cả các đề xuất GitHub Copilot, hãy kiểm tra xem mã đã sửa đổi có chạy mà không có lỗi và tạo ra kết quả chính xác hay không.
Ví dụ sau đây minh họa cách sử dụng Trò chuyện nội tuyến để tạo lại phương pháp C# xử lý dữ liệu.
Phương pháp ban đầu thực hiện xóa dữ liệu, xây dựng bảng dữ liệu, rồi in nội dung của bảng. Việc kết hợp một số thao tác thành một phương pháp khiến cho việc duy trì và kiểm tra mã của bạn khó khăn hơn.
Bạn có thể tạo lại phương pháp ban đầu bằng cách yêu cầu Trò chuyện Nội tuyến tạo các phương pháp riêng biệt cho từng tác vụ được thực hiện theo phương pháp ban đầu.
Dưới đây là mã ban đầu:
using System;
using System.Data;
public class DataProcessor
{
public void ProcessData(string item, string price)
{
// Cleanse the data
item = item.Trim(); // Remove leading and trailing whitespace
price = price.Trim(); // Remove leading and trailing whitespace
double priceValue = double.Parse(price); // Convert price to a double
// More cleansing operations can be added here
// Create and print a DataTable
DataTable table = new DataTable();
table.Columns.Add("Item", typeof(string));
table.Columns.Add("Price", typeof(double));
table.Rows.Add(item, priceValue);
foreach (DataRow row in table.Rows)
{
Console.WriteLine($"Item: {row["Item"]}, Price: {row["Price"]}");
}
}
}
// Example usage
class Program
{
static void Main()
{
string item = " Apple ";
string price = " 1.50 ";
var processor = new DataProcessor();
processor.ProcessData(item, price);
}
}
Để tạo lại phương pháp ProcessData, hãy làm theo các bước sau:
Chọn phương thức ProcessData.
Mở cuộc trò chuyện tại chỗ.
Nhập lời nhắc yêu cầu GitHub Copilot tạo các phương thức riêng biệt cho từng tác vụ, sau đó nhấn Enter.
Ví dụ: Tôi muốn tái cấu trúc phương thức ProcessData. Tôi muốn một phương pháp làm sạch dữ liệu, một phương pháp in và một phương pháp xử lý dữ liệu.
Xem lại bản cập nhật mã được đề xuất.
Đối với ví dụ này, GitHub Copilot đề xuất một phiên bản tái cấu trúc của phương thức ban đầu tách các tác vụ làm sạch và in thành các phương thức riêng biệt.
using System; using System.Data; public class DataProcessor { public void ProcessData(string item, string price) { (string cleansedItem, double cleansedPrice) = CleanseData(item, price); DataTable table = new DataTable(); table.Columns.Add("Item", typeof(string)); table.Columns.Add("Price", typeof(double)); table.Rows.Add(cleansedItem, cleansedPrice); PrintData(table); } private (string, double) CleanseData(string item, string price) { string trimmedItem = item.Trim(); string trimmedPrice = price.Trim(); double priceValue = double.Parse(trimmedPrice); return (trimmedItem, priceValue); } private void PrintData(DataTable table) { foreach (DataRow row in table.Rows) { Console.WriteLine($"Item: {row["Item"]}, Price: {row["Price"]}"); } } } // Example usage class Program { static void Main() { string item = " Apple "; string price = " 1.50 "; var processor = new DataProcessor(); processor.ProcessData(item, price); } }Trong ví dụ này, việc cắp lại mã gốc sẽ cải thiện tính mô-đun và giúp mã dễ hiểu hơn.
Chọn Chấp nhận hoặc Đóng để chấp nhận hoặc hủy cập nhật mã được đề xuất.
Trong ví dụ này, mã được đề xuất có vẻ ổn, vì vậy bạn sẽ chọn Accept để áp dụng mã được tái cấu trúc cho dự án của mình.
Như với tất cả các đề xuất GitHub Copilot, hãy kiểm tra xem mã đã sửa đổi có chạy mà không có lỗi và tạo ra kết quả chính xác hay không.
Kiểm tra mã được tái c yếu tố để đảm bảo nó chạy mà không có lỗi và tạo ra kết quả mong đợi.
Tóm tắt
Tính năng Trò chuyện nội tuyến của GitHub Copilot cho phép bạn tái cấu trúc mã trực tiếp trong trình chỉnh sửa mã. Trò chuyện tại chỗ rất hữu ích khi bạn muốn thay đổi mã của mình mà không phải chuyển sang dạng xem Trò chuyện. Bạn có thể sử dụng Trò chuyện Nội tuyến để yêu cầu trợ giúp về các tác vụ mã hóa cụ thể, chẳng hạn như tái c bước một hàm hoặc cải thiện khả năng đọc mã. Bạn cũng có thể sử dụng Trò chuyện Nội tuyến để đánh giá mã hiện có của mình trước khi tái c tiếp tục.