Logo

Ep. 19 – OOP Part 3 (Abstrakcia)

Abstrakcia. Jeden zo základných pojmov OOP (alebo aj programovania všeobecne). Pobavíme sa o tom, čo to abstrakcia je vo všeobecnosti, ale samozrejme aj o tom, čo je abstrakcia v programovaní. Spomenieme zároveň aj nejaké výhody OOP, refaktorovanie a duplikáciu.

Stiahnuť

00:00 – 00:34 Úvod
00:35 – 04:39 Čo je to abstrakcia
04:40 – 06:20 Abstrakcia pri programovani
06:21 – 08:48 Pre koho vlastne abstrahujeme?
08:49 – 10:27 Ďalšie príklady abstrakcie v programovaní
10:28 – 12:25 Kedy používať abstrakciu
12:25 – 13:50 Abstrakcia zvyšuje kvalitu kódu
13:51 – 15:30 Divide and Conquer (rozdeluj a panuj)
15:31 – 16:30 Výhody OOP
16:31 – 18:55 Abstraktná trieda vs. abstrakcia
18:56 – 19:53 Abstrakcia a školské zadania
19:54 – 22:07 Nevýhody abstrakcie

Abstrakcia všeobecne

  • neriešime ako niečo funguje, proste to používame
  • ignorovanie detailov a sústredenie sa na to, čo nás práve zaujíma
  • keď zapínam práčku, tak neriešim čo všetko sa vnútri odohráva, hodím prádlo a perem
  • matematická rovnica/funkcia môže byť tiež formou abstrakcie

Abstrakcia v programovaní

  • UI (user interface) je forma abstrakcie – klíkam na tlačidlá a neriešim, čo všetko sa mi deje na pozadí
  • pri programovaní figurujeme aj ako vlastníci kódu a aj ako jeho používatelia kódu
  •  pre koho abstrahujeme? – Aj pre nás, aj pre našich kolegov. Pre používateľov kódu
  • classy, funkcie, moduly, webapi, servisy, … to sú všetko abstrakcie. Vďaka ním vieme v kóde schovávať implementačné detaily, ktoré nás momentálne nezaujímajú
  • abstrakcia nie je dôležitá iba pri OOP, ale v OOP

Kedy použiť abstrakciu

  • keď si všimnem, že mám škaredý kód, alebo že sa mi niečo da z funkcie vytiahnuť
  • veľmi podobné ako refaktorovanie
  • využívame ju kvôli zjednodušeniu, zkrajšeniu a zlepšenia udržateľnosti kódu
  • zníženie duplikácie

Abstraktná trieda a abstrakcia sú rozdielné pojmy

  • abstraktná trieda je prvok v OOP, ktorý nám umožňuje lepšie štrukturovanie kódu
  • abstrakcia je to čo riešime v epizóde – vyňatie detailov, ktoré nás nezaujímajú
  • abstraktné – nechytateľné, nekonkrétne

Pri malých školských projektoch sa človek s abstrakciou príliš nezoznámi

Nevýhody abstrakcie

  • dá sa ľahko prehnať
  • dá sa na to možno príliš spoliehať – napr. niečo nefunguje tak, ako si myslíme
  • niekedy môže veci akurát zkomplikovať

Užitočné odkazy

Jakubova hra, ktorá učí základné koncepty OOP
Stará dobrá Wiki
OOP pre 6 ročných

Logo
Street of Code o.z.Hlaváčiková 2984105, Bratislava
Chcem odoberať novinky
Poskytnutím emailu súhlasíš s jeho spracovaním v súlade s GDPR.
Copyright © 2024 Street of Code
Kód tejto stránky si vieš pozrieť na našom GitHub-e