Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2019/2020

Programátorské praktikum

Přihlášení do KOSu pro zápis předmětu Zobrazit rozvrh
Kód Zakončení Kredity Rozsah Jazyk výuky
01PROP Z 2 0+2 česky
Přednášející:
Cvičící:
Vladimír Klement (gar.)
Předmět zajišťuje:
katedra matematiky
Anotace:

Cílem tohoto předmětu je osvojení si dobrých programovacích návyků, které mají

pomoci při psaní čistšího kódu, tj. takového, který bude lépe srozumitelný pro

ostatní a bude se snáze doplňovat o nové funkce. Na konkrétních příkladech se

studenti učí poznatkům od správného pojmenování proměnných a funkcí, přes

defenzivní programování, psaní dokumentace, ladění až po objektový návrh,

návrhové vzory a refaktoring.

Požadavky:

Programování v C/C++, objektové programování.

Osnova přednášek:

I. Základy psaní čistého kódu

1. Formátování

2. Datové struktury

3. Pojmenovávání proměnných

4. Pravidla pro psaní funkcí

5. Zpracování chyb, výjimky

6. Komentáře

II. Objektový návrh

1. Prostory jmen

2. Organizace třídy

3. Dědičnost a abstrakce

4. Speciální typy tříd

III. Vývoj kódu

1. Programovací konvence

2. Specifikace a návrh

3. Testování kódu

4. Refaktorování

5. Dokumentace

Osnova cvičení:

Cvičení je nedílnou součástí výuky, jeho obsah je dán sylabem předmětu.

Cíle studia:

Znalosti:

Zásady psaní čistého kódu, programovací konvence. Principy defenzivního programování, organizace kódu a postupy při jeho refaktorování, psaní dokumentace. Strukturování kódu, vytváření uzavřených funkčních celků a jejich testování. Základy objektového návrhu, organizace podporující změny. Vývoj kódu při zachování jeho čistoty a srozumitelnosti.

Schopnosti:

Student bude schopný psát přehlednější kód, který bude lépe pochopitelný pro ostatní vývojáře, bude více flexibilní z pohledu implementace nových funkcí, ale také v něm bude snažší hledat chyby.

Studijní materiály:

Povinná literatura:

[1] R.C. Martin, Clean Code: A Handbook of Agile Software Craftmanship, Prentice Hall 2009

[2] S. McConnell, Code Complete, Second Edition, Microsoft Press, 2004

Doporučená literatura:

[3] M. Fowler, Refactoring: Improving the Design of Existing Code, Addison-Wesley, 2002

[4] A. Hunt, D. Thomas, Programátor pragmatik, Compter Press, 2007.

[5] M. C. Feathers, Údržba kódu převzatých programů, Computer Press, 2009.

Studijní pomůcky:

Počítačová učebna Windows/Linux s překladačem jazyka C++.

Poznámka:
Rozvrh na zimní semestr 2019/2020:
Rozvrh není připraven
Rozvrh na letní semestr 2019/2020:
Rozvrh není připraven
Předmět je součástí následujících studijních plánů:
Platnost dat k 21. 9. 2019
Aktualizace výše uvedených informací naleznete na adrese http://bilakniha.cvut.cz/cs/predmet1594206.html