Navazujeme na první díl "Jak začít s GitHub Copilotem? #1", ve kterém jsme probrali hlavní funkce, nastavení a první kroky. Pokud vám tenhle článek unikl, začněte u něj.
Teď se posuneme dál. Ukážeme vám, s čím dalším vám Copilot pomůže: projdeme refaktorování, optimalizaci a generování testů.
Právě tady dokáže Copilot přinést konkrétní výsledky. Týmy, které ho používají naplno, hlásí kratší čas na úpravy kódu, rychlejší generování testů a kvalitnější výstup. Vývojáři tráví míň času rutinou a víc se soustředí na to, na čem opravdu záleží.
Co konkrétně Copilot přináší
- Refaktorování až o 40 % rychleji, protože sám najde a upraví složité funkce.
- Úsporu zhruba 50 % času, když generujete unit, integrační a E2E testy.
- Lepší čitelnost, stabilní kód a nižší technický dluh.
- Snazší onboarding vývojářů, protože kód automaticky vysvětlí.
- Lepší vývojové metriky jako cycle time a deployment frequency.
Refaktorování a optimalizace
Copilot se hodí nejen na psaní nového kódu, ale i na úpravu toho existujícího. Zlepší čitelnost, strukturu i výkon.
Příklady použití
Rozdělení dlouhých funkcí
Označte složitou funkci a požádejte Copilota, aby ji rozdělil na logické, samostatné části:
def process_data_and_generate_report(data):
# načítání, čištění, analýza, generování reportu …
pass
# Prompt v Copilot Chat:
# "/refactor Rozděl tuto funkci `process_data_and_generate_report` na menší části."
# Jeden z možných návrhů Copilota:
def load_data(data):
pass
def clean_data(data):
pass
def analyze_data(data):
pass
def generate_report(data):
pass
Přejmenování proměnných / funkcí
Požádejte Copilota o smysluplnější jména:
tmp = 10
# Prompt:
# "Přejmenuj `tmp` na výraznější název."
# Copilot například navrhne:
customer_age = 10
Zjednodušení logiky
Třeba složité podmínky zpřehledníte:
if (user.isAdmin === true && user.isActive === true && user.hasPermission('edit')) {
// ...
}
// Prompt:
// "/refactor Zjednoduš tuto podmínku"
// Copilot může navrhnout:
if (user.isAdmin && user.isActive && user.hasPermission('edit')) {
// ...
}
Optimalizace výkonu
Copilot navrhne efektivnější datové struktury nebo algoritmy:
# Původní:
for i in range(len(my_list)):
if my_list[i] == value:
# …
# Prompt:
# "/optimize Tuto smyčku pro lepší výkon"
# Návrh Copilota:
if value in my_list:
# …
Slash příkazy v Copilot Chat pro refaktoring
/refactorrefaktoruje vybraný blok podle zadání,/optimizenavrhne vylepšení výkonu,/explainvysvětlí, co daný blok kódu dělá, abyste ho před úpravami lépe pochopili.
Zdroj: GitHub Docs
Testování a ladění
Tady Copilot spojuje generování testů s podporou při ladění a opravách chyb. Zrychlí vám vývoj a zvedne kvalitu kódu.
Generování testů
- Použijte
/testsv Copilot Chat (nebo označte kód v editoru) a Copilot navrhne unit testy podle vaší funkce. - Copilot vytvoří testy pro metody, pokryje okrajové případy a ošetří výjimky.
- Experimentálně můžete použít
/setupTests, který nastaví testovací prostředí pro celý projekt (vybere framework, vytvoří soubor a podobně).
Ladění a opravy chyb
- Označte chybný kód a použijte
/fix. Copilot nabídne opravenou verzi. - Když test selže, využijte
/fixTestFailure. Copilot rozebere selhání a navrhne opravu. - V experimentálním režimu spustíte
/startDebugging, který vytvoří konfiguraci ladění („launch configuration“) a rozjede debugování přímo z Copilot Chatu.
Ukázka kódu + prompt
def compute_factorial(n):
factorial = 1
for i in range(1, n + 1):
factorial *= i * factorial # chyba: násobí navíc factorial
return factorial
Prompt k ladění:
/explain Proč tato funkce počítá faktorial špatně?
Poté:
/fix Oprav logiku tak, aby počítala faktoriál korektně.
Copilot může navrhnout opravenou verzi:
def compute_factorial(n):
factorial = 1
for i in range(1, n + 1):
factorial *= i
return factorial
Dokumentace a onboarding
Tahle část ukazuje, jak vám Copilot usnadní psaní dokumentace a zapracování nových vývojářů.
Dokumentace
- Příkazem
/docnecháte Copilota generovat docstringy, komentáře nebo popisy funkcí a tříd. - Složitý nebo nezdokumentovaný kód Copilot vysvětlí a doplní k němu potřebné komentáře.
Onboarding nových vývojářů
- Nováček se v Copilot Chatu zeptá „Co dělá tahle část kódu?“ a dostane přehledné vysvětlení.
- Při zakládání nového modulu nebo části aplikace požádáte Copilota, aby vygeneroval kostru projektu: složky, testy, konfigurační soubory a podobně.
- Dokumentace, která vznikne automaticky (docstringy, komentáře), sníží bariéru pro nové členy týmu a urychlí jejich zapracování.
Závěr
GitHub Copilot není jen nástroj na rychlé psaní nového kódu. Je to asistent, který vám pomůže i s prací, kterou vývojáři rádi odkládají: s refaktorováním, optimalizací nebo generováním testů. Právě tady přináší okamžité výsledky, od rychlejšího vývoje a nižšího technického dluhu po kvalitnější kód a vyšší pokrytí testy.
V příštím díle si shrneme, jak zvednout kvalitu výstupů Copilota, a projdeme pokročilé funkce a integrace.
Související články
Pokud vás GitHub Copilot a AI nástroje pro vývojáře zajímají víc, přečtěte si i tohle:
- Jak začít s GitHub Copilot? #1 - První kroky, instalace a základní funkce
- AI: Pomocník nebo hrozba pro juniory? - AI ve vývoji očima juniora
- Co je to Cursor a co umí? - IDE s AI, které napovídá a píše kód
Chcete být o krok napřed?
Nenechte si utéct naše nejlepší postřehy. Žádný spam, jen praktické analýzy, pozvánky na exkluzivní eventy a shrnutí podcastů přímo do vaší schránky.
