Tento modul tě uvede do světa programování v Pythonu. Naučíš se syntax tohoto neuvěřitelně oblíbeného jazyka, pochopíš, o čem je objektově orientované programování, a osvojíš si základní funkce standardní knihovny. Hlavně se však tohle všechno naučíš používat efektivně. Pak tě povedeme k tomu, ať je z tebe díky zvládnutí těchto nástrojů skvělý programátor! Také poznáš celý ekosystém Pythonu a zvládneš vytvářet vlastní moduly.
Po dokončení této části kurzu budeš ovládat možnosti regulárních výrazů, pochopíš výjimky i použití a vytváření jazykových prvků, jako jsou dekorátory, context managery a lambda funkce.
Tento modul pokrývá základní příkazy příkazové řádky a práci s GITem, včetně init, add, commit, branch, merge a práce s remote repozitáři (clone, push). Seznámíš se s nástroji jako SourceTree, GitHub Desktop, PyCharm a procvičíš si práci s GitHubem, BitBucketem a GitLabem.
Naučíš se nastavení vývojového prostředí, práci s interpretem, použití virtualenv a správu balíčků pomocí pip. Seznámíš se také s vývojovým prostředím PyCharm.
V tomto modulu se zaměříš na koncepty programování, včetně regulárních výrazů pro efektivní práci s textem a lambda výrazů pro zjednodušení kódu. Naučíš se také pracovat s výjimkami, správně zpracovávat soubory, využívat multithreading pro paralelní zpracování úloh a používat dekorátory pro rozšiřování funkcí. Součástí kurzu je i práce se streamy, které umožňují efektivní zpracování datových toků.
Testování je při vývoji softwaru nezbytné. Tak se ujistíš, že kód, který jsi napsal, funguje správně. Test-Driven Development (TDD) je přístup k tvorbě kódu, při kterém nejprve vytvoříš testy a potom napíšeš kód tak, aby testy potvrdily, že kód funguje správně.
Dále tě naučíme, co je to algoritmus a proč je důležitý ve světě programování. Naučíš se, jak řešit běžné problémy a určovat efektivnost takovýchto řešení. Kromě toho uvidíš, že data lze ukládat různými způsoby – a budeš vědět, kdy si který z nich vybrat.
Při programování očekávej, že se často setkáš s problémem, se kterým se už předtím potýkal někdo jiný. Vzor je univerzální, v praxi ověřené řešení často se vyskytujícího a opakujícího se problému. Naučíš se nejoblíbenější vzory, stejně jako případy použití a způsob jejich aplikace.
Naučíš se úvod do algoritmů a jejich praktického využití. Seznámíš se se základy výpočetní složitosti, která pomáhá hodnotit efektivitu algoritmů. Také si osvojíš základní datové struktury a naučíš se různé třídicí algoritmy, jako bubble sort, heapsort, quicksort a counting sort, včetně jejich výhod a nevýhod v různých situacích.
V tento modul se zaměří na nejdůležitější návrhové vzory (GoF) a jejich implementaci ve vybraných případech. Seznámíš se s Python Style Guide a osvojíš si osvědčené principy dobré praxe, jako jsou Clean Code, SOLID, GRASP, KISS, DRY, YAGNI a Demeterův zákon, které Ti pomohou psát přehledný, udržitelný a efektivní kód.