Paradigmata programování 3
Aplikaci PP-Polyglot, kterou budeme používat na cvičení, lze stáhnout v tomto odkazu odkazu.
Zápočet
- docházka na cvičeních sice nebude vyžadována, ale je silně doporučená
- v průběhu semestru budou zadány 3 domácí úkoly, které všechny musíte splnit:
- nestačí přístup "ono to funguje" – aby byl úkol uznán, musí splňovat principy OOP (hlavní smysl tohoto předmětu)
- úkol může být vrácen k přepracování v případě chyby, warningu nebo porušení principů OOP
- na cvičení po odevzdání úkolu se bude psát "test", který ověří, že rozumíte kódu, který jste odevzdali
- způsob odvezdávání úkolů bude upřesněm při zadání prvního úkolu
- zadání úkolů bude postupně aktualizováno na těchto stránkách.
Plagiátorství a odevzdvání úkolů
“Pokud se student dopustí plagiátorství, opisování při písemném testu, opisování při práci na domácím úkolu nebo se jiným způsobem pokusí o podvod, zahájí s ním vedoucí katedry kárné řízení. Pokud se takové jednání studenta opakuje, vedoucí katedry navrhne děkanovi fakulty vyloučit studenta ze studia.” – viz web katedry
Zadaní z prvního cvičení
Vytvořte datové struktury (například pomocí property seznamů) pro geometrické objekty:
point(bod v rovině), který má dvě hodnoty souřadnic'xa'ycircle, který má svůj střed'centerreprezentovaný bodem a poloměr'radiuspolygon, který se skládá z bodů v seznamu'items
Dále máme tyto požadavky:
- Napište konstruktory, selektory a mutátory pro tyto datové struktury.
- Napište funkci, která zjistí o struktuře jakého je typu.
- Napište funkci
move, která posune zadaný geometrický objekt o hodnoty x a y. - Zamyslete, jak bychom museli upravit tyto struktury, aby měli nějakou společnou vlastnost. Například pokud by každy geometrický objekt měl obsahovat informaci o své barvě.
- Zamyslete se, jaké problémy bychom museli řešit, pokud bychom chtěli přidat další strukturu pro trojúhelník.