Projektowanie obiektowe oprogramowania

Język wykładowy Polski
Semestr Letni
Status Poddana pod głosowanie
Opiekun Wiktor Zychla
Liczba godzin 30 (wyk.) 30 (prac.)
Rodzaj Informatyczny inż.
ECTS 6
Polecany dla I roku Nie
Egzamin Tak
Tagi IO (Inżynieria oprogramowania) PiPO (Projektowanie i programowanie obiektowe)
Grupy efektów kształcenia Inżynieria oprogramowania (L) Programowanie i projektowanie obiektowe

Opis przedmiotu:

Wykład skierowany jest do przyszłych architektów systemów informatycznych oraz do wszystkich programistów zainteresowanych udoskonaleniem swojego warsztatu. Celem wykładu jest zapoznanie studentów z kanonem współczesnych narzędzi w zakresie projektowania obiektowego oprogramowania. Materiał wykładu obejmuje: * podstawy języka UML w zakresie wymaganym przez projekty analityczne i techniczne * zasady SOLID i GRASP * przegląd katalogu wzorców projektowych (GoF) (m.in. Observer, Builder, Bridge, State, Strategy, Facade, Adapter, Mediator, itd.) * przegląd katalogu wzorców architektury aplikacji (wzorce architektoniczne) (m.in. Model-View-Controller, Object-Relational Mapping, Dependency Injection, Service Locator, Mock Object, itd.) * przegląd katalogu wzorców architektury systemów (Enterprise Service Bus, Single Sign-on) Celem pracowni jest praktyczny kontakt z materiałem z wykładu. Wymagania: ukończony kurs języka Java lub C# (wszystkie przykłady będą bazowały na języku C#) Literatura: 1. Wrycza, Marcinkowski, Wyrzykowski - Język UML 2.0 w modelowaniu systemów informatycznych 2. Fowler - Refactoring: Improving the Design of Existing Code Gamma, Helm, Johnson, Vlissides: Design Patterns: Elements of Reusable Object-Oriented Software 3. Fowler - Patterns of Enterprise Application Architecture Microsoft Patterns & Practices - Application Architecture Guide