Popis online kurzu Python: Code quality
Tento online kurz je zaměřen na zlepšení kvality kódu v Pythonu, pokrývající širokou škálu témat od správy projektů až po business hledisko code quality.
Kurz začíná se správou projektu, kde se studenti naučí o významu virtuálních prostředí, a jak používat nástroje jako poetry pro instalaci a distribuci balíčků. Dále se kurz věnuje lintingu za pomocí nástrojů jako pylint a ruff, které pomáhají udržovat kód konzistentnější a bezpečnější.
V lekci o formátování se kurz zaměří na dodržování PEP standardů, a představí nástroje jako black pro automatizaci tohoto procesu. Typing je další klíčovou oblastí, kde se studenti seznámí s typovými anotacemi a nástroji jako mypy pro zajištění typové bezpečnosti kódu.
Dokumentace je nezbytná pro každý projekt, a tento kurz pokrývá jak psát užitečné komentáře a docstringy, měřit pokrytí docstringů, používat doctesty, a vytvářet dokumentaci ve formátech jako Google, NumPy, a reStructuredText. Studenti se také naučí psát srozumitelné README soubory a vytvářet UML diagramy tříd či OpenAPI dokumentaci.
Testování je dalším klíčovým prvkem udržitelného vývoje, a kurz tak zahrnuje různé typy testů, nástroje jako pytest a jak měřit pokrytí testů. Bezpečnost je zásadní, a studenti se naučí jak psát bezpečnější kód a vyhodnocovat bezpečnost externích balíčků pomocí nástrojů jako bandit a safety.
Dalším tématem bude také složitost kódu. Složitý kód může způsobovat horší čitelnost a také může být náročné ho dále upravovat a rozšiřovat. Představíme si tak několik metrik a nástrojů, které nám pomohou složitost vyhodnotit.
V sekci o hardwarové náročnosti kurz prozkoumá, jak zlepšit výkon aplikací z hlediska CPU a RAM, výběr datových struktur, upgrade Pythonu, změnu výpočetního modelu, použití JIT kompilátorů, změnu interpreterů, a využití bindingů z jiných jazyků.
Automatizace je nezbytná pro efektivní vývoj, a kurz představuje nástroje a task runnery jako make nebo poe the poet, společně s komplexní code quality platformou a pre-commit hooky. Obsahem je také continuous integration/continuous delivery (CI/CD).
Po probrání všech témat kurz aplikuje většinu nových znalostí na open source projektu FastAPI, včetně použití linterů, formátovacích nástrojů či mypy.
Závěr kurzu se věnuje business perspektivě code quality, zkoumá vztah mezi rychlostí vývoje a kvalitou kódu, různé úrovně kvality kódu, a představuje příklady implementace code quality ve skutečných projektech. Tento komplexní přístup připraví studenty na psaní vysoce kvalitního, bezpečného, a efektivního kódu ve svých budoucích projektech.
Celkově kurz nabídne 14 kapitol obsahu, přes 3h plných informací, povíme si asi o 40 různých knihovnách, vyzkoušíme si napsat kód ve 4 různých jazycích - samozřejmě především hlavně v pythonu a odkážeme také na další navazující literaturu a související zdroje.
Co všechno kurz obsahuje
-
videotutoriály o code quality v Pythonu,
- moderované diskusní fórum,
-
certifikát o absolvování online kurzu Python: Code quality,
-
garance vrácení peněz do 14 dnů v případě nespokojenosti.