4. diel - Využitie umelej inteligencie pri štúdiu programovania
V tomto tutoriále sa naučíme využívať AI pri štúdiu programovania. Ukážeme si, ako pomocou umelej inteligencie lepšie pochopiť zložité koncepty a zrýchliť riešenie úloh, na ktorých bežne trávime veľa času.
Využitie AI pri štúdiu programovania
Učenie sa programovania môže byť občas náročné. Budeme sa stretávať s množstvom nových konceptov a nezvyčajných problémov. Dnešná doba nám však poskytuje AI nástroje, ktoré nám prácu aj štúdium veľmi uľahčia. Stačí sa ich naučiť správne používať. Nerozumieme nejakej téme? ChatGPT nám danú problematiku na základe našich otázok znovu vysvetlí a pomôže nám si danú tému osvojiť. Narazili sme na problém v nejakej úlohe? Nástroj Canvas ju s nami rozoberie av prípade potreby odporučí ďalší postup, opraví chyby a podobne. Strávili sme hodinu lúštením nášho kódu a nakoniec sme zistili, že celý problém zapríčinila chýbajúca zátvorka? Nie sme prví ani poslední – toto je skutočne viac ako bežné. Keď si osvojíme používanie AI nástrojov, bude riešenie podobných problémov otázkou niekoľkých sekúnd.
AI je nápomocná v mnohých ďalších oblastiach. Ako ju správne využívať, sa učíme v kurzoch Umelá inteligencia.
Potrebuješ poradiť? ChatGPT ti pomôže rýchlejšie ako lektor
Skvelým parťákom, a to nielen pri štúdiu, pre nás bude najmä ChatGPT. Zrozumiteľne nám vysvetlí zložitejšiu látku, prediskutuje s nami náročnejšie koncepty a dokáže navrhnúť aj riešenie technických problémov v našom počítači. Pre študentov našich rekvalifikačných kurzov sú samozrejme k dispozícii konzultácie s lektormi.
Vo väčšine prípadov však môžeme náš problém či otázku vyriešiť pomocou ChatGPT oveľa rýchlejšie a rovnako efektívne ako s lektorom.
ChatGPT je k dispozícii prostredníctvom mobilnej aplikácie alebo online na adrese chatgpt.com. V riešení problémov vie byť naozaj vynaliezavý a opýtať sa ho môžeme prakticky na čokoľvek:

Pri komunikácii s chatbotom sa dozvieme množstvo zaujímavých informácií a pochopíme aj zložité koncepty, ktorých je v programovaní mnoho:

Môžeme sa napríklad opýtať na látku, ktorá nám nie je jasná a ktorú by sme potrebovali dovysvetliť:
Vysvetli, na čo slúži v PHP premenná
$this.
Odpoveď od ChatGPT
V PHP slúži premenná $this na odkazovanie na
aktuálnu inštanciu objektu vo vnútri triedy. Používa sa
hlavne v kontexte objektovo orientovaného programovania
(OOP).
📌 Význam $this v PHP
Premenná $this reprezentuje aktuálny
objekt, teda inštanciu triedy, v ktorej sa práve nachádzaš.
Umožňuje prístup k vlastnostiam (atribútom) a metódam daného objektu
zvnútra samotnej triedy.
🛠 Použitie $this – príklad
class Auto { public $barva; public function nastavBarvu($novaBarva) { $this->barva = $novaBarva; } public function vypisBarvu() { echo "Barva auta je: " . $this->barva; } } $mojeAuto = new Auto(); $mojeAuto->nastavBarvu("červená"); $mojeAuto->vypisBarvu(); // Výstup: Barva auta je: červená
👉 V tomto príklade:
nastavBarvu()nastavuje hodnotu premennej$barvapre konkrétny objekt.- Pomocou
$this->barvasa metóda odkazuje na vlastnosť aktuálnej inštancie objektuAuto.
📖 Kedy použiť $this
- Keď chceš pristupovať k vlastnostiam objektu
(
$this->vlastnost) - Keď chceš volať iné metódy objektu
(
$this->nejakaMetoda())
⚠️ Poznámka
$thisfunguje iba v rámci inštancie triedy – nemožno ju použiť v statických metódach (tam sa používa kľúčové slovoself::).- Napr.:
public static function statickaMetoda() { // echo $this->barva; // Tohle by vyvolalo chybu! }
Ak chceš, môžem ti ukázať aj pokročilejšie príklady, napríklad s
dedičnosťou alebo návratovou hodnotou $this pre method
chaining. Chceš?
Vysvetli, čo je dedičnosť v PHP, na čo sa používa v praxi a uveď jednoduchý príklad s kódom.
Odpoveď od ChatGPT
Čo je dedičnosť v PHP
Dedičnosť je jeden zo základných princípov objektovo orientovaného programovania (OOP). Umožňuje jednej triede (potomkovi) prevziať vlastnosti a metódy inej triedy (rodičia). Vďaka dedičnosti môžeš znova použiť existujúci kód a rozširovať ho bez nutnosti prepisovania.
Na čo sa používa v praxi
Dedičnosť sa v praxi používa na:
- Znovupoužitie kódu – aby nebolo nutné písať rovnaké funkcie vo viacerých triedach.
- Rozšírenie funkcionality – potomkovia môžu pridávať nové metódy alebo prepisovať tie zdedené.
- Zjednodušenie údržby – zmeny v spoločnom rodičovi sa prejavia vo všetkých potomkoch.
- Tvorbe hierarchií – napr.
Zvíře→Pes,Kočka,Slon.
Jednoduchý príklad v PHP
<?php // Rodičovská třída class Zvire { public $jmeno; public function __construct($jmeno) { $this->jmeno = $jmeno; } public function mluv() { echo "$this->jmeno vydává nějaký zvuk.\n"; } } // Potomkovská třída class Pes extends Zvire { public function mluv() { echo "$this->jmeno štěká: Haf haf!\n"; } } // Potomkovská třída class Kocka extends Zvire { public function mluv() { echo "$this->jmeno mňouká: Mňau!\n"; } } // Použití $rex = new Pes("Rex"); $rex->mluv(); // Výstup: Rex štěká: Haf haf! $micka = new Kocka("Micka"); $micka->mluv(); // Výstup: Micka mňouká: Mňau! ?>
Zhrnutie
- Dedičnosť umožňuje vytvárať všeobecnejší a znovupoužiteľný kód.
- PHP podporuje jednoduchú dedičnosť (každá trieda môže dediť iba z jednej inej triedy).
- Pomocou kľúčového slova
extendsvytvoríš potomka.
Pokiaľ budeš chcieť, môžem rozšíriť príklad napríklad o
abstract class, parent:: alebo interface.
Chceš sa na niečo z toho pozrieť?
Nefunguje ti kód? Vyskúšaj nástroj ChatGPT Canvas
Pri práci s ChatGPT je možné využiť rozšírenie Canvas, ktoré ponúka okrem iného aj rozhranie pre interaktívnu prácu s kódom. Na rozdiel od bežného chatovacieho okna umožňuje organizovať odpovede a návrhy kódu do blokov, čo je ideálne pre zložitejšie úlohy, ako je návrh architektúry aplikácie alebo ladenie rozsiahlejších projektov. Vďaka vizuálnemu usporiadaniu je možné lepšie sledovať jednotlivé kroky návrhu, experimentovať s rôznymi prístupmi a ľahko sa vracať k predchádzajúcim verziám riešenia. Nástroj spustíme tlačidlom Canvas v menu ChatGPT, ktoré sa nám otvorí po kliknutí na tri bodky v chatovacom okne:

Teraz chatbotu odovzdáme náš kód a začneme na ňom pracovať:
<?php echo "Zadej své jméno: "; $jmeno = trim(fgets(STDIN)); if (strlen($jmeno) <= 3 && strlen($jmeno) >= 10) { echo "Normální jméno\n"; } else { echo "Máš moc krátké nebo moc dlouhé jméno!\n"; } ?>
Nástroj nám v kóde vyhľadá a opraví chyby:

Pri správne zadanom prompte môžeme v našom kóde jednoducho doplniť chýbajúcu funkcionalitu:
Pridaj do kódu validáciu vstupu. Chcem, aby nešlo zadať prázdne meno..<>
AI nástroje dokážu výrazne pomôcť pri štúdiu programovania - uľahčujú pochopenie ťažké látky a riešenie náročných úloh. Po dohode so zamestnávateľom ich možno uplatniť aj v praxi, kde môžu šetriť čas a zvyšovať produktivitu. Preto je dôležité sa s nimi naučiť efektívne pracovať a využívať ich potenciál naplno.
V nasledujúcom cvičení, Riešené úlohy k 1.-4. lekciu PHP, si precvičíme nadobudnuté skúsenosti z predchádzajúcich lekcií.
