Subject description - B6B36OMO
Summary of Study |
Summary of Branches |
All Subject Groups |
All Subjects |
List of Roles |
Explanatory Notes
Instructions
B6B36OMO | Object-oriented design and Modeling | ||
---|---|---|---|
Roles: | PZ, P | Extent of teaching: | 2P+2C+4D |
Department: | 13136 | Language of teaching: | CS |
Guarantors: | Kadleček D. | Completion: | Z,ZK |
Lecturers: | Kadleček D., Kukačka D. | Credits: | 6 |
Tutors: | Kadleček D., Kukačka D., Šebek J., Zídek J. | Semester: | Z |
Anotation:
Objektově-orientovaný přístup dnes drtivě převažuje ve všech aspektech vývoje softwaru: analýze, návrhu i implementaci. Cílem tohoto kurzu je dovést studenty k solidnímu porozumění základním pojmům objektové teorie a nastínit jejich formální základy.Study targets:
Porozumění základním principům objektového přístupu, schopnost jejich správné aplikace ve středně složitých situacích.Course outlines:
1. | Objekty, Třídy, instance a atributy | |
2. | Paměť v objektově-orientovaných jazycích | |
3. | Polymorfismus a dědičnost | |
4. | Modularita a zapouzdření | |
5. | Návrhové vzory 1 | |
6. | Návrhové vzory 2 | |
7. | Návrhové vzory 3 | |
8. | Ukázky použití návrhových vzorů 1 | |
9. | Ukázky použití návrhových vzorů 2 | |
10. | Zápočtový test | |
11. | SOLID, DRY, GRASP | |
12. | GRASP - Příklady | |
13. | Imutabilita a funkcionální programování | |
14. | Ukázky funkcionálního programování |
Exercises outline:
1. | Úvod | |
2. | Jak v Java na Objekty, Třídy, instance a atributy | |
3. | Paměť v objektově-orientovaných jazycích | |
4. | Polymorfismus a dědičnost v Java | |
5. | Modularita a zapouzdření v Java | |
6. | Návrhový vzor Adapter | |
7. | Návrhový vzor Visitor | |
8. | Návrhový vzor Interpreter | |
9. | Návrhový vzor Command | |
10. | Opakování | |
11. | Principy SOLID, DRY | |
12. | Ukázka principů GRASP | |
13. | Imutabilita v jazyku Java | |
14. | Ukázky funkcionálního programování ve Scala |
Literature:
[1] | R. Pecinovský: Myslíme objektově v jazyku Java. | |
[2] | R. Pecinovský: Návrhové vzory - 33 vzorových postupů pro objektové programování. | |
[3] | B. Eckel: Thinking in Java | |
[4] | Er. Gamma et al.: Design Patterns: Elements of Reusable Object-Oriented Software. |
Requirements:
Základní znalost programování, základní znalosti matematiky, schopnost exaktního myšlení.Webpage:
https://cw.fel.cvut.cz/wiki/courses/B6B36OMO Subject is included into these academic programs:Program | Branch | Role | Recommended semester |
BPOI3_2018 | Software | PZ | 3 |
BPSIT | Common courses | P | 3 |
BPSIT1_2021 | Enterprise systémy | P | 3 |
BPSIT4_2021 | Technologie internetu věcí | P | 3 |
BPSIT3_2021 | Business informatics | P | 3 |
BPSIT2_2021 | Technologie pro multimédia a virtuální realitu | P | 3 |
Page updated 26.2.2021 17:52:17, semester: Z/2020-1, L/2021-2, L/2020-1, Z/2021-2, Send comments about the content to the Administrators of the Academic Programs | Proposal and Realization: I. Halaška (K336), J. Novák (K336) |