AI v programování: Jak používat GitHub Copilot (část 2)

19. února 2024

V první části článku jsme si představili GitHub Copilota, co to vlastně je, jak funguje a ukázali jsme si několik zajímavých statistik. V druhé části se podíváme na výhody, omezení a výzvy spojené s jeho používáním a na to, jak jej efektivně používat.  

ukázka práce s GitHub Copilotem

Výhody Copilota

Některé výhody jsou patrné již z předchozí části. Používání GitHub Copilota umožňuje zrychlení vývoje softwaru. Díky jeho schopnosti rychle analyzovat kontext a navrhovat úseky kódu či dokonce celé funkce. Vývojářům tak roste produktivita. Namísto toho, aby trávili hodiny hledáním správného řešení nebo opakovaným psaním rutinního kódu, mohou se věnovat komplexnějším úkolům a konceptům.

Efektivita mého programování určitě stoupla, neboť nemusím ztrácet čas psaním triviálních a neustále se opakujících částí kódu – Copilot s tímto perfektně pomůže, hlavně v neuvěřitelném čase – často nečekáte, ale Copilot čeká na vás.

říká Daniel Šenkyřík, Fullstack web developer

Zajímavou výhodou Copilota může být také snížení chyb v syntaxi a logických chyb, které by jinak mohly být zdrojem problémů a zpoždění v procesu vývoje. Tím Copilot nepřímo zvyšuje kvalitu softwaru, ale také šetří čas který by jinak byl třeba věnovat laděním a opravám chyb.

Největší přínos Copilota vidím v tom, že funguje automaticky bez nutnosti zadávání konkrétního příkazu nebo otevírání externích oken. Nemusíte také vysvětlovat kontext, jako v případě ChatGPT. U jednoduchého psaní kódu, kde například ošetřujete proměnné (kontrolujete, že jsou data zadaná správně) nebo pokud načítáte nějaká data a potřebujete část logiky jen zopakovat, tak funguje Copilot uplně jako kouzlo. Stačí napsat část kódu jedenkrát a automaticky Copilot našeptá zbytek kódu, který správně pochopí co dalšího budete asi chtít dělat a zároveň správně do kódu doplní názvy funkcí a proměnných. Tohle je za mě největší přidaná hodnota.

říká Lukáš Pulda, CEO společnosti MessageOk

Omezení a výzvy

Přestože GitHub Copilot přináší řadu výhod, existují také určitá omezení a výzvy spojené s jeho použitím. Jedním z hlavních omezení jsou nepřesnosti. I když Copilot má pokročilé mechanismy analýzy kontextu, může stále navrhovat kód, který není zcela přesný nebo optimální. To může vyžadovat manuální úpravy ze strany vývojáře a snížit tak očekávané úspory času a úsilí.

Samozřejmě je potřeba ověřovat co vám Copilot našeptá. Typicky u regulárních výrazů dostanete něco co zdánlivě funguje dle zadání, ale často výsledek nefunguje ve všech možných variantách.

Lukáš Pulda, CEO společnosti MessageOk

Dalším důležitým faktorem jsou etické a právní otázky spojené s používáním Copilotu. Existuje obava ohledně možných problémů s autorskými právy, protože Copilot může navrhovat kód založený na otevřených zdrojích, což může být citlivé v komerčním prostředí. Je důležité, aby vývojáři pečlivě zvažovali právní aspekty používání kódu generovaného Copilotem a zajistili, že dodržují veškeré autorské právo a licence.

Jak efektivně používat GitHub Copilot

Konkrétní využití Copilota je velmi široké. Může být efektivním nástrojem pro rychlé prototypování nových funkcí nebo projektů. Pomocí jeho schopnosti automaticky generovat kód mohou vývojáři rychle vytvářet základní strukturu aplikace nebo funkční prototypy, což jim umožňuje rychleji iterovat a testovat různé myšlenky.

Copilot je užitečným “asistentem” při psaní kódu. Tím, že automaticky navrhuje doplňující úseky kódu. Například při psaní funkce nebo metody může Copilot nabídnout návrhy pro podmínky, smyčky nebo volání jiných funkcí, což vývojáři šetří čas a úsilí.  Vývojář se tak může věnovat složitějším úkolům.

ukázka psaní funkcí s GitHub Copilotem

Často jej používám na velmi jednoduché úkoly, kde nevytvářím složitý algoritmus, ale prostě potřebuji udělat nějakou manipulaci s textem, číslem nebo polem. Do komentáře napíšu něco ve smyslu:

//split $text by space, remove duplicities, sum count

Pak stačí stisknout enter a dostanu “one-line” řešení, které udělá přesně co jsem chtěl. Nejde o to, že by to člověk neuměl vyřešit sám. Pokud však často přepínáte mezi jazyky PHP/Node.js/C#, tak se snadno stane, že si nejste jistí přesnou syntaxí nebo názvem vestavěné funkce. Je zkrátka velmi rychlé řešení.

Lukáš Pulda, CEO společnosti MessageOk

Copilot také poslouží vývojářům k tomu lépe porozumět jazyku a konvencím tím, že jim poskytuje konkrétní návrhy a příklady kódu Podobně může Copilot sloužit jako učitel pro začátečníky. Tímto způsobem mohou vývojáři rychleji získat povědomí o nových knihovnách, frameworcích nebo jazykových funkcích.

GitHub Copilot tak představuje inovativní nástroj v oblasti programování, který využívá sílu umělé inteligence ke zrychlení a zlepšení vývoje softwaru. I přes svá omezení, efektivně podporuje vývojáře a poskytuje jim nové perspektivy při psaní kódu. Jedná se tak o nástroj, který by si měl každý programátor minimálně osahat. 

Vojtěch Tomášek

Jsem redaktor se zájmem o technologie, grafický design a IT. Je pro mě klíčová zpětná vazba a podněty od čtenářů. Chci tak tvořit obsah, který nejen informuje, ale také inspiruje a obohacuje. Od dokončení vysoké školy se věnuji převážně grafice a IT. Když zrovna nejsem v redakci Intervalu, jsem v přírodě nebo se právě snažím dokončit quest v nejnovějším Zaklínači.

Mohlo by vás také zajímat

Nejnovější

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *