Návrh Školení

Úvod

    Přehled funkcí a aplikací C

Příprava vývojového prostředí

    Výběr IDE Konfigurace kompilátoru

Psaní ukázkového programu

    Definování problému Kódování podle požadavků

Definování rozsahu proměnných a funkcí

    Pochopení rozsahu, viditelnosti a životnosti Práce s třídami úložiště: auto, extern, register, static

Správa dat v programu C

    Nad rámec primitivních datových typů Práce s pokročilými datovými typy: struktury, propojené seznamy atd. Ukládání různých datových typů do stejného paměťového místa

Úprava vlastností proměnné

    Mimo modifikátory typu Práce s kvalifikátory typu: konstantní, nestálý atd.

Manipulace s bity v C

    Práce s daty menšími než bajt Práce s operátory bitové manipulace

Řízení toku vašeho programu

    Beyond sequencing Použití příkazu goto

Čtení a zápis dat

    Shrnutí funkcí vstupu/výstupu Zlepšení čitelnosti výstupu

Vývoj meziplatformního kódu

    Pochopení direktiv kompilátoru Podmíněná kompilace kódu

Zlepšení výkonnosti programu

    Makra vs funkce Definování maker pro spouštění fragmentů programu

Dynamická alokace paměti

    Výhoda použití ukazatelů: rychlost provádění Ukazatele na funkce paměti a manipulaci s adresou

Ladění programu C

    Pokročilé techniky pro kontrolu, detekci a opravu chyb Práce s gdb (Gnu Debugger)

Vytvoření statické knihovny

    Jak je statická knihovna propojena do spustitelného souboru Vytvoření statické knihovny

Vytvoření sdílené knihovny

    Statické knihovny vs sdílené knihovny (dynamické knihovny) Jak je sdílená knihovna propojena a načtena do paměti za běhu Vytvoření sdílené knihovny

Abstrahování dat ve vašem programu

    Přehled rozhraní, specifikace a implementace Vytvoření abstraktního datového typu Regresní testování abstraktního datového typu

Searchtřídění a třídění dat

    Searchřazení polí pomocí lineárního vyhledávání, binárního vyhledávání atd. Třídění polí pomocí třídění výběru, třídění vkládání, třídění podle bublin

Meziprocesy Communication a signály

    Pochopení procesů, soketů a signálů Implementace IPC pomocí sdílených souborů, sdílené paměti, kanálů, front zpráv, soketů, semaforů atd.

Aby váš program C běžel paralelně

    Současné spouštění různých částí programu prostřednictvím vícevláknového zpracování Zápis vlákna

Pokročilé sítě Programming

    Rekapitulace TCP, UDP, IP a dalších dominantních protokolů Obsluhování více portů, přežití náhlých výpadků sítě atd. Psaní výkonných soketových API

Směrem ke kodexu vysoké kvality

    Peer code review a paralelní programování Význam iterativního kódování (refaktoring)

Shrnutí a závěr

Požadavky

  • Zkušenosti s programováním v C

Publikum

  • Programátoři
  • Vývojáři
 28 hodiny

Počet účastníků



Price per participant

Reference (2)

Související kurzy

Combined C/C++, JAVA and Web Application Security

28 hodiny

Advanced Java Security

21 hodiny

Combined JAVA, PHP and Web Application Security

28 hodiny

Standard Java Security

14 hodiny

Java and Web Application Security

21 hodiny

Advanced Java, JEE and Web Application Security

28 hodiny

Související kategorie