Charles Explorer logo
🇨🇿

Doporučené postupy v programování

Předmět na Matematicko-fyzikální fakulta |
NPRX043

Sylabus

Základy vývoje a tvorby software. Inherentní a zavlečená složitost. Příprava a klíčová rozhodnutí.

Proměnné a konstanty. Obecná pravidla pro práci s proměnnými. Názvové konvence. Základní datové typy. Neobvyklé datové typy. Vytváření nových typů.

Řídící struktury a primitiva. Organizace kódu. Podmíněné příkazy. Smyčky. Obecná pravidla pro práci s řídícími strukturami. Neobvyklé řídící struktury. Metody řízené tabulkami.

Tvorba kvalitního kódu. Návrh metod. Pseudokód. Lokalita a duplicita kódu. Práce s výjimkami. Defenzivní programování. Návrh tříd. Dědičnost a kompozice. Vazby mezi třídami. Modularizace a abstrakce. Návrh rozhraní.

Programátorské umění. Styl a uspořádání kódu. Dokumentace kódu a způsoby komentování. Osobnostní kvality.

Zdokonalování kódu. Testování. Ladění. Refaktorizace. Kolaborativní techniky tvorby software. Ladění výkonu.

Proces tvorby software. Vztah mezi velikostí programu a způsobem tvorby. Plánování a řízení vývoje. Udržovatelnost software. Programovací nástroje.

Anotace

Programování není pouze o schopnosti napsat fungující program. S kvalitou programu je (vedle návrhu a celé řady funkčních charakteristik) spojena celá řada charakteristik, které s funkcí programu přímo nesouvisí. Náplní předmětu je seznámit studenty s praktickými postupy a pravidly, jejichž důsledné dodržování a aplikace vedou ke kvalitnějším programům. Cílem předmětu je motivovat studenty k osvojení a používání probíraných postupů v praxi.

Předpokládají se znalosti programování v rozsahu bakalářského kursu NPRG031 Programování II.