Wykłady
Wykłady będą odbywały w sali 170 w poniedziałki w godzinach 10:15 - 12:00.
Nie jest wymagana obecność na wykładzie i nie będzie ona sprawdzana.
Poniżej jest lista poszczególnych wykładów oraz materiały pomocnicze (slajdy i inne).
Slajdy z wykładów w semestrze 2023Z są dostępne tutaj (7MB)
- (7 X, Nowak) Organizacja przedmiotu, potok wytwarzania oprogramowania, narzędzia. Programowanie obiektowe, kompozycja, dziedziczenie,
slajdy (pdf).
- (14 X, Grochowski) Standardy kodowania, SOLID,
slajdy (pdf).
- (21 X)
- (28 X, Nowak) Obiektowe wzorce projektowe cz. 1,
slajdy (pdf),
kod (zip).
- (4 XI, Nowak) Obiektowe wzorce projektowe cz. 2,
slajdy (pdf),
kod (zip).
- (14 XI, Grochowski) Cykl wytwarzania oprogramowania, od wymagań po utrzymanie,
- (18 XI, Grochowski) Cykl wytwarzania oprogramowania, od wymagań po utrzymanie,
- (25 XI) Kolokwium nr 1,
- regulamin
- Przykładowe zadania:
- zadania 21Z,
rozwiazanie wizytator, rozwiazanie most
- zadania 22L,
rozwiazanie dekorator, rozwiazanie most2
- zadania 22Z,
rozwiazanie kompozyt, rozwiazanie wizytator
- zadania 23L,
rozwiazanie obserwator, rozwiazanie fabryka
- zadania 23Z,
rozwiazanie wizytator, rozwiazanie fabryka prototypów
- zadania 24L,
rozwiazanie obserwator, rozwiazanie fabryka abstrakcyjna
- zadania próbne obiektowe wzorce projektowe:
kompozyt, kompozyt2,
obserwator, wizytator
- zadania próbne styl kodowania, czysty kod, SOLID: zadania 21L
- zadania próbne UML: zadania 21L
- zadania próbne cykl wytwarzania oprogramowania: zadania 21L
- (2 XII, Nowak) Współbieżne wzorce projektowe (1),
- (9 XII, Grochowski) Ocena jakości kodu i testów, analiza statyczna kodu, metryki,
- (16 XII, Grochowski) Monitorowanie i analiza aplikacji
- (8 I, Grochowski) Refaktoring, praca z kodem zastanym
- (13 I, Nowak) Współbieżne wzorce projektowe (2),
- (20 I) Kolokwium nr 2,
- regulamin
- Zadania przykładowe:
- zadania 22L,
współbieżność - rozwiazanie, we/wy - rozwiązanie
- zadania 22Z,
rozwiazanie wyścig, rozwiazanie zakleszczenie
- zadania 23L,
rozwiazanie shared mutex,
rozwiazanie wyścigi i pętla zdarzeń
- zadania 23Z,
rozwiazanie blokada, rozwiazanie wyścigi
- zadania 24L,
rozwiazanie wyścig, rozwiazanie lock-free
- zadania próbne, metryki, pokrycie, refaktoring: zadania 21L
- zadania próbne, wątki, we/wy: blokada, rozwiązanie,
blokada 2, rozwiązanie,
skalowalność, rozwiązanie,
wyścig, rozwiązanie,
we/wy (pytanie),
we/wy wydajność, rozwiązanie
- (27 I, Nowak) Zasoby internetowe, standardy języków programowania
Laboratoria
Laboratoria odbywają się w zespołach 2 osobowych
w sali
011, we wtorki w godzinach 8:15 -- 12:00 lub 12:15 -- 16:00.
Każde labortorium trwa 4 godziny.
- (mgr inż. Witold Wysota) Edytor, repozytorium git, praca w parach, rewizja kodu.
- (mgr inż. Konrad Grochowski) Zestawienie potoku CI/CD, testy, walidacje.
- (dr inż. Michał Chwesiuk) Monitorowanie aplikacji, debuggowanie, profilowanie.
- (mgr inż. Katarzyna Nałęcz-Charkiewicz) Praca z kodem zastanym, refaktoring.
Grupa | Laboratorium 1 | Laboratorium 2 | Laboratorium 3 | Laboratorium 4 |
Grupa 101 (N) | 5 XI 8-12 | 19 XI 8-12 | 17 XII 8-12 | 7 I 8-12 |
Grupa 102 (P) | 29 X 8-12 | 26 XI 8-12 | 10 XII 8-12 | 14 I 8-12 |
|
Zaliczenie Przedmiot jest zaliczany na podstawie wyników sprawdzianów, przeprowadzanych podczas wykładów
( punktacja 0 - 20pkt.) i wyników ćwiczeń laboratoryjnych (punktacja 0 - 20 pkt.).
Ocena końcowa jest określana na podstawie łącznej liczby punktów zgodnie z poniższą tabelą.
liczba punktów | ocena |
37 - 40 pkt | pięć |
33 - 36 pkt | cztery i pół |
29 - 32 pkt | cztery |
25 - 28 pkt | trzy i pół |
21 - 24 pkt | trzy |
0 - 20 pkt | dwa |
Do zaliczenia przedmiotu konieczne jest uzyskanie min. 10 pkt z laboratorium.
Bieżące oceny cząstkowe są uzupełniane na serwerze USOS
Konsultacje i kontakt z prowadzącymi
Patrz Baza Wiedzy Politechniki Warszawskiej
Przydatne materiały
Narzędzia (lista)
Literatura
- Andrew Hunt, David Thomas. Pragmatyczny programista. Od czeladnika do mistrza. Helion 2014
- Robert C. Martin. Czysty kod. Podręcznik dobrego programisty. Helion 2010
- Robert C. Martin. Mistrz czystego kodu. Kodeks postępowania profesjonalnych programistów. Helion 2013
- Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Wzorce projektowe. Helion 2010
- Martin Fowler. Refaktoryzacja. Ulepszanie struktury istniejącego kodu. Helion 2011
|