קוד רפקטור באמצעות GitHub Copilot Inline Chat
פיצ'ר הצ'אט הפנימי של GitHub Copilot מאפשר לך לשחזר קוד ישירות בעורך הקוד. צ'אט מוטבע שימושי כאשר ברצונך לבצע שינויים בקוד שלך מבלי לעבור לתצוגת צ'אט.
הבנת הקוד שלך
לפני שתעבור על הקוד שלך, חשוב להבין את הקוד שאתה עובד איתו. עליך להבין את מטרת הקוד, את אופן הפעולה שלו ואת כל יחסי התלות שעשויים להיות לו. אם אינך מכיר את הקוד, החלוף זמן מה כדי לקרוא אותו ולהבין את המבנה והלוגיקה שלו. שימוש GitHub Copilot לניתוח הקוד יכול לעזור לך לזהות תחומים לשיפור ולהציע אפשרויות רפקטורינג.
באפשרותך להשתמש בתכונה צ'אט מוטבע כדי לשאול שאלות אודות הקוד, לקבל הסברים על חלקים ספציפיים או לבקש הצעות לשיפורים. לדוגמה, ייתכן שתבקש GitHub Copilot להסביר איך פונקציה מסוימת פועלת או להציע דרכים לאופטימיזציה שלה. באפשרותך גם להשתמש בתכונה 'צ'אט מוטבע' כדי לבקש עזרה במשימות קידוד ספציפיות, כגון שיפור פונקציה או שיפור קריאות הקוד.
הנה כמה דוגמאות להנחיות שמבקשות GitHub Copilot עזרה עם הקוד:
/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
אם ההסבר ארוך או מורכב, באפשרותך לעבור לתצוגת צ'אט כדי להמשיך בשיחה. באפשרותך גם להשתמש בתצוגת צ'אט כדי לשאול שאלות המשך טיפול או לבקש מידע נוסף.
שימוש בצ'אט מוטבע כדי לתעל את הקוד
השתמש בתכונה צ'אט מוטבע כאשר ברצונך לשנות מקטע של קוד המבצע משימה ספציפית. לקבלת שינויים מורכבים יותר הכוללים עדכון קבצים או פרוייקטים מרובים, השתמש באחד המצבים של תצוגת צ'אט.
כדי לתעל קוד באמצעות צ'אט מוטבע, בצע את הפעולות הבאות:
פתח את הקובץ המכיל את הקוד שברצונך למטב.
בחר את הקוד שברצונך למטב.
פתח הפעלת צ'אט מוטבע.
השתמש בקיצור המקשים Ctrl+I כדי לפתוח את הפעלת הצ'אט ה מוטבע. לסירוגין, תוכל לבחור Editor Inline Chat מאחד מהתפריטים GitHub Copilot.
הזן בקשה המבקשת מיטוב.
לדוגמה: האם ניתן לשפר את הקוד הזה?
סקור את עדכון הקוד המוצע.
GitHub Copilot מיישם את עדכון הקוד המוצע ישירות בעורך, שם תוכל לבדוק אותו במקום, עם ההקשר המלא של הקוד שמסביב.
בחר קבל או סגור כדי לקבל או לבטל את עדכון הקוד המוצע.
כמו בכל ההצעות GitHub Copilot, בדוק שהקוד המתוקן פועל ללא שגיאות ומניב את התוצאה הנכונה.
הדוגמה הבאה מדגימה כיצד להשתמש בצ'אט מוטבע כדי לשנות שיטת C# שמ מעבדת נתונים.
השיטה המקורית מבצעת ניקוי נתונים, בונה טבלת נתונים ולאחר מכן מדפיסה את תוכן הטבלה. שילוב כמה פעולות בשיטה אחת מקשה על תחזוקת הקוד ובדיקה שלו.
באפשרותך לשנות את השיטה המקורית על-ידי בקשה לצ'אט מוטבע ליצור שיטות נפרדות עבור כל אחת מהמשימות שבוצעו בשיטה המקורית.
הנה הקוד המקורי:
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);
}
}
כדי לשנות את פעולת השירות ProcessData, בצע את הפעולות הבאות:
בחר את פעולת השירות ProcessData.
פתח צ'אט מוטבע.
הזן הודעה שמבקשת GitHub Copilot ליצור מתודות נפרדות לכל משימה, ואז לחץ על Enter.
לדוגמה: אני רוצה לבצע ריפקטור של שיטת ProcessData. אני רוצה שיטה לניקוי נתונים, שיטה להדפסה, ושיטה לעיבוד נתונים.
סקור את עדכון הקוד המוצע.
בדוגמה זו, GitHub Copilot מציע גרסה משופרת של השיטה המקורית שמחלקת את משימות הניקוי וההדפסה לשיטות נפרדות.
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); } }בדוגמה זו, שיפור הקוד המקורי משפר את המודולריות והופכת את הקוד לקל יותר להבנה.
בחר קבל או סגור כדי לקבל או לבטל את עדכון הקוד המוצע.
בדוגמה הזו, הקוד המוצע נראה טוב, אז תבחר ב-Accept כדי להחיל את הקוד המשופץ על הפרויקט שלך.
כמו בכל ההצעות GitHub Copilot, בדוק שהקוד המתוקן פועל ללא שגיאות ומניב את התוצאה הנכונה.
בדוק את הקוד השוחזר כדי לוודא שהוא פועל ללא שגיאות ומפיק את התוצאה הצפויה.
תקציר
פיצ'ר הצ'אט הפנימי של GitHub Copilot מאפשר לך לשחזר קוד ישירות בעורך הקוד. צ'אט מוטבע שימושי כאשר ברצונך לבצע שינויים בקוד שלך מבלי לעבור לתצוגת צ'אט. באפשרותך להשתמש בצ'אט מוטבע כדי לבקש עזרה במשימות קידוד ספציפיות, כגון שיפור פונקציה או שיפור קריאות הקוד. באפשרותך גם להשתמש בצ'אט מוטבע כדי להעריך את הקוד הקיים שלך לפני השנוי.