Kode refaktor menggunakan GitHub Copilot Obrolan Sebaris
Fitur Inline Chat GitHub Copilot memungkinkan Anda untuk merefaktor kode langsung di editor kode. Obrolan langsung berguna saat Anda ingin membuat perubahan pada kode Anda tanpa harus beralih ke tampilan Obrolan.
Memahami kode Anda
Sebelum Anda merefaktor kode, penting untuk memahami kode yang sedang Anda kerjakan. Anda harus memahami tujuan kode, cara kerjanya, dan dependensi apa pun yang mungkin dimilikinya. Jika Anda tidak terbiasa dengan kode, luangkan waktu untuk membacanya dan memahami struktur dan logikanya. Menggunakan GitHub Copilot untuk menganalisis kode dapat membantu Anda mengidentifikasi area yang perlu ditingkatkan dan menyarankan opsi refaktorisasi.
Anda dapat menggunakan fitur Obrolan Sebaris untuk mengajukan pertanyaan tentang kode, mendapatkan penjelasan tentang bagian tertentu, atau meminta saran untuk peningkatan. Misalnya, Anda mungkin meminta GitHub Copilot untuk menjelaskan cara kerja fungsi tertentu atau menyarankan cara untuk mengoptimalkannya. Anda juga dapat menggunakan fitur Obrolan Sebaris untuk meminta bantuan dengan tugas pengodean tertentu, seperti merefaktor fungsi atau meningkatkan keterbacaan kode.
Berikut adalah beberapa contoh perintah yang meminta bantuan GitHub Copilot dengan kode:
/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
Jika penjelasannya panjang atau kompleks, Anda dapat berpindah ke tampilan Obrolan untuk melanjutkan percakapan. Anda juga dapat menggunakan tampilan Obrolan untuk mengajukan pertanyaan tindak lanjut atau meminta informasi tambahan.
Menggunakan Obrolan Sebaris untuk merefaktor kode
Gunakan fitur Obrolan Sebaris saat Anda ingin merefaktor bagian kode yang melakukan tugas tertentu. Untuk perubahan yang lebih kompleks yang melibatkan pembaruan beberapa file atau proyek, gunakan salah satu mode tampilan Obrolan.
Untuk merefaktor kode menggunakan Inline Chat, ikuti langkah-langkah berikut:
Buka file yang berisi kode yang ingin Anda optimalkan.
Pilih kode yang ingin Anda optimalkan.
Buka sesi Obrolan Sebaris.
Gunakan pintasan keyboard Ctrl+I untuk membuka sesi Obrolan Sebaris. Atau, Anda dapat memilih Editor Inline Chat dari salah satu menu GitHub Copilot.
Nota
Jika file milik sesi pengeditan obrolan aktif, menekan Ctrl+I akan membuka Tanya di Obrolan di tampilan Obrolan alih-alih obrolan sebaris biasa. Ini merutekan permintaan Anda ke sesi yang ada sehingga dapat menggunakan konteks percakapan lengkap. Untuk selalu menggunakan obrolan sebaris reguler terlepas dari status sesi, atur
inlineChat.askInChatkefalsedi pengaturan Visual Studio Code.Masukkan perintah yang meminta pengoptimalan.
Misalnya: Dapatkah kode ini ditingkatkan?
Tinjau pembaruan kode yang disarankan.
GitHub Copilot menerapkan pembaruan kode yang disarankan langsung di editor, tempat Anda dapat meninjaunya di tempat, dengan konteks lengkap kode di sekitarnya.
Pilih Terima atau Tutup untuk menerima atau membuang pembaruan kode yang disarankan.
Seperti semua saran Copilot GitHub, periksa apakah kode yang direvisi berjalan tanpa kesalahan dan menghasilkan hasil yang benar.
Contoh berikut menunjukkan cara menggunakan Obrolan Sebaris untuk merefaktor metode C# yang memproses data.
Metode asli melakukan pembersihan data, membangun tabel data, lalu mencetak konten tabel. Menggabungkan beberapa operasi ke dalam satu metode membuatnya lebih sulit untuk mempertahankan dan menguji kode Anda.
Anda dapat merefaktor metode asli dengan meminta Inline Chat untuk membuat metode terpisah untuk setiap tugas yang dilakukan dalam metode asli.
Berikut adalah kode aslinya:
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);
}
}
Untuk merefaktor metode ProcessData, ikuti langkah-langkah berikut:
Pilih metode ProcessData.
Buka obrolan langsung.
Masukkan perintah yang meminta GitHub Copilot membuat metode terpisah untuk setiap tugas, lalu tekan Enter.
Misalnya: Saya ingin merefaktor metode ProcessData. Saya ingin metode untuk pembersihan data, metode untuk mencetak, dan metode untuk pemrosesan data.
Tinjau pembaruan kode yang disarankan.
Untuk contoh ini, GitHub Copilot menyarankan versi refaktor metode asli yang memisahkan tugas pembersihan dan pencetakan ke dalam metode terpisah.
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); } }Dalam contoh ini, pemfaktoran ulang kode asli meningkatkan modularitas dan membuat kode lebih mudah dipahami.
Pilih Terima atau Tutup untuk menerima atau membuang pembaruan kode yang disarankan.
Dalam contoh ini, kode yang disarankan terlihat bagus, jadi Anda akan memilih Terima untuk menerapkan kode yang direfaktor ke proyek Anda.
Seperti semua saran Copilot GitHub, periksa apakah kode yang direvisi berjalan tanpa kesalahan dan menghasilkan hasil yang benar.
Uji kode yang direfaktor untuk memastikan kode berjalan tanpa kesalahan dan menghasilkan hasil yang diharapkan.
Ringkasan
Fitur Inline Chat GitHub Copilot memungkinkan Anda untuk merefaktor kode langsung di editor kode. Obrolan langsung berguna saat Anda ingin membuat perubahan pada kode Anda tanpa harus beralih ke tampilan Obrolan. Anda dapat menggunakan Obrolan Sebaris untuk meminta bantuan dengan tugas pengodean tertentu, seperti merefaktor fungsi atau meningkatkan keterbacaan kode. Anda juga dapat menggunakan Obrolan Sebaris untuk mengevaluasi kode yang ada sebelum melakukan refaktor.