2019 - Týždeň 9

Zdroj
ručne priradené
Pridané

Pozrieť na YouTube →

Preber si túto prednášku so svojou AI

Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.

Otvoriť AI: ChatGPT · Claude · Gemini

Zhrnutie prednášky

Prednáška v deviatom týždni semestra otvára druhú časť predmetu, ktorá sa venuje platforme Arduino, no najprv dokončuje tému binárneho rozhodovacieho stromu z minulého týždňa. Pôvodná implementácia používala jednu štruktúru pre listy aj vnútorné uzly, čo je pri väčšom počte typov uzlov neprehľadné a neefektívne. V objektovom programovaní by to riešila dedičnosť, v jazyku C ponúka riešenie enumeračný typ uzla v kombinácii s unionom. Union ukladá všetky svoje členy na rovnakú adresu a zaberá iba veľkosť najväčšieho člena, takže uzol má namiesto 36 len 12 bajtov. Aktuálne platný člen určuje pole s typom uzla. Ako príklad slúžia aj udalosti vstupných zariadení, ako sú klávesnica, myš či gamepad, ktoré nesú rozličné údaje.

  • - Uterákový deň sa slávi 25. mája, odporúčaná je kniha Stopárov sprievodca po galaxii.
  • - Pôvodná štruktúra uzla binárneho stromu spájala list aj vnútorný uzol, čo je pri viacerých typoch uzlov slabý návrh.
  • - V objektovom programovaní problém rieši dedičnosť, v C sa obchádza enumom a unionom.
  • - Enum v uzle určuje, ktorý typ údajov je práve uložený.
  • - Union ukladá všetky členy na rovnakú adresu a zaberá veľkosť najväčšieho člena.
  • - Štruktúra s unionom zaberá 12 bajtov namiesto 36 bajtov pri bežnej štruktúre.
  • - Union sa hodí aj na udalosti vstupných zariadení (klávesnica, myš, gamepad) s rôznymi údajmi.

Zhrnutie pripravené s pomocou AI z prepisu videa.