Produsele AI au revoluționat dezvoltarea software-ului sau codificarea în timpurile moderne. Folosind AI, putem genera automat coduri de programare și le putem corecta și optimiza Refactorizarea codului . În acest articol, explorăm procesul de refactorizare și vedem cum puteți utilizați Codul Copilot la Refractor .
Ce este refactorizarea codului?
În dezvoltarea de software sau de aplicații, Code Refactoring se referă la reconstruirea sau rearanjarea codului sursă al programului, menținând în același timp funcționalitatea inițială. Procesul își propune să îmbunătățească structura și designul software-ului și să reducă complexitatea. Integrarea AI în refactorizarea codului ne-a ajutat să identificăm cu promptitudine problemele de performanță a software-ului și să ușurăm algoritmii complecși pentru a îmbunătăți eficiența generală.
punerea sistemului de operare cromat pe laptopul vechi
Cum poate ajuta Copilot la refactorizarea codurilor?
Poate analiza o anumită secțiune a codului și poate oferi sugestii pentru a-și îmbunătăți structura la un format mai curat și ușor de utilizat, pentru a reduce complexitatea. Recomandările oferite se bazează pe următoarele:
- Identificați problemele cu codul existent: Copilot scanează întregul fișier de cod pentru a evidenția secțiunile sau zonele care trebuie refactorizate, evidențiind coduri duplicate, variabile neutilizate sau neclare etc.
- Sugerați opțiuni eficiente: La refactorizarea codului, Copilot analizează codul existent și sugerează alternative eficiente care pot produce aceleași rezultate, dar fac codul să arate mai curat. Aceste recomandări includ utilizarea eficientă a limbajului pentru denumirea variabilelor, metodelor și structurilor de date.
- Asigurați-vă că codul poate fi întreținut: Feedbackul în timp real ne ajută să evităm includerea oricăror erori. Sugestiile se bazează, în general, pe cele mai bune practici ale principiilor de programare care pot ajuta la menținerea unei structuri adecvate a codului, făcându-le mai ușor pentru alții să înțeleagă și să le modifice dacă este necesar.
Cum să utilizați Codul Copilot la Refractor
Pentru a folosi Copilot pentru refactorizare, putem începe cu instalarea GitHub Copilot extensie pentru limba respectivă (VS Code, Python etc.). De exemplu, dacă dorim să reconstruim un cod sursă scris în Python, putem instala pluginul Copilot prin:
- Faceți clic pentru a deschide opțiunea Setări în Mediul de dezvoltare integrat sau IDE (JavaScript sau Python).
- Faceți clic pe opțiunea de plugin din stânga.
- Faceți clic pe Piata de desfacere opțiunea și căutați Copilotul GitHub conecteaza.
- Odată localizat, faceți clic pe Instalare pentru a instala pluginul.
- IDE-ul va solicita o repornire odată ce instalarea este finalizată. După repornire, deschideți IDE-ul și faceți clic pe Instrumente -> GitHub Copilot -> Conectați-vă la GitHub.
- După conectarea cu succes, Copilot va fi gata de utilizare.
- Pentru a utiliza Copilot, comenzile rapide de mai jos pot fi folosite în timpul scrierii codului
Acțiune | Windows/Linux | MacOS |
Declanșați sugestii în linie | Alt+\ | Opțiune+\ |
Vezi următoarea sugestie | Alt+] | Opțiune+] |
Vezi sugestia anterioară | Alt+[ | Opțiune+[ |
Acceptați o sugestie | Tab | Tab |
Respingeți o sugestie în linie | Esc | Esc |
Afișați toate sugestiile într-o filă nouă | Alt+Enter | Alt+Enter |
Legate de: Cum să vizualizați codul descărcat de pe GitHub
Exemplul 1: pentru a simplifica un cod complex
Să luăm în considerare fragmentul de cod de mai jos pentru a demonstra modul în care un cod complex poate fi simplificat folosind caracteristica de refactorizare a Copilot. Aici, luăm în considerare doar o parte a unui program mai amplu pentru ușurință de înțelegere:
Înainte de refactorizare
public void processOrder(Order order) { // ... further codes if (order.isReadyForProcessing()) { // process the order } //... further codes }
După refactorizare cu Copilot
public void processOrder(Order order) { // ...further codes processReadyOrder(order); // ...further codes }
private void processReadyOrder(Order order) { if (order.isReadyForProcessing()) { // process the order } }
În exemplul de mai sus, primul set de coduri ( Before Refactoring ) constă dintr-o funcție sau metodă numită procesa comanda, care realizează etapele de procesare a unei anumite comenzi. Înainte ca comanda să fie procesată, instrucțiunea IF condiționată verifică dacă comanda este gata de procesare sau nu se utilizează dacă (order.isReadyForProcessing()) funcţie. În acest set de coduri, logica de procesare este inclusă în funcția primară, făcând-o mai puțin modulară.
În următorul fragment de cod, avem procesComandă funcția de procesare a comenzii. Cu toate acestea, logica verificării dacă comanda este gata de procesare și procesare a comenzii gata a fost mutată într-o funcție separată numită processReadyOrder. Acest lucru ajută la izolarea fiecărei metode pentru a oferi claritate și modularitate codului.
Exemplul 2: redenumirea variabilelor
Înainte de refactorizare
def calculate_area(l, w): return l * w
După refactorizare cu Copilot
neașteptat_kernal_mode_trap
def calculate_area(length, width): return length * width
După refactorizare, totuși, variabilele „l” și „w” au fost înlocuite cu lungime și lățime, ceea ce a adăugat claritatea codului prin redenumirea variabilelor ca o caracteristică esențială a refactorizării.
Chiar dacă Copilot ne poate ajuta să reconstruim codul, are câteva limitări, cum ar fi sugestii incorecte, încredere excesivă și refractarea codurilor învechite. Odată ce aveți sugestiile sale, asigurați-vă că parcurgeți toate verificările manuale și utilizați indicațiile potrivite.
Pe ce date a fost instruit GitHub Copilot?
GitHub Copilot a fost instruit pe text în limbaj natural și cod sursă din surse disponibile public, inclusiv cod din depozitele publice de pe GitHub. Este alimentat de modele AI generative pe care le-au dezvoltat GitHub, OpenAI și Microsoft.
Care sunt limbajele de programare compatibile pentru Copilot?
Github Copilot acceptă diverse limbi, dar funcționează deosebit de bine cu JavaScript, TypeScript, Ruby, Python, Go, C++ și C#.