Programowanie zespołowe z zespołowym projektem studenckim 1100-2BN23
Zajęcia są podzielone na dwie części. W części pierwszej przedstawione zostaną:
1. Wstęp do projektowania obiektowego
2. Specyfika Pythona jako języka obiektowego
3. Środowiska wirtualne i zarządzanie wersjami w Pythonie
4. Dobre praktyki w Pythonie: PEP-8, docstringi, typowanie, strukturyzowanie kodu
5. Skrypty vs moduły, parser argumentów
6. Kontrola wersji (git) oraz usługi chmurowe (gitlab, github)
7. Zarządzanie pracą zespołową: code review, podział pracy
8. Ciągłe testowanie, ciągła integracja, ciągłe dostarczanie
W części drugiej studenci w grupach będą realizować wybrany projekt programistyczny, zgodnie z omówionymi dobrymi praktykami i przy wykorzystaniu omówionych narzędzi. Projekt może być wybrany spośród proponowanych przez prowadzącego, bądź zaproponowany przez studentów.
Tryb prowadzenia
Założenia (opisowo)
Koordynatorzy przedmiotu
Efekty kształcenia
Student potrafi:
1. Zaprojektować program działając w paradygmacie obiektowym
2. Dzielić duży projekt programistyczny na podzadania
3. Współpracować z zespołem przy realizacji projektu programistycznego, w tym wykorzystując narzędzia do kontroli wersji
4. Zapewniać ciągłe testowanie, integrację oraz dostarczanie opracowywanego kodu
Kryteria oceniania
1. 25% oceny – kolokwium na papierze
2. 25% oceny – efekt końcowy projektu programistycznego (czy spełnia założenia i poprawnie działa)
3. 50% oceny – jakość pracy podczas tworzenia projektu programistycznego (regularność commitów, dokumentowanie kodu, prowadzenie code review, podział pracy, ciągłe testowanie, trzymanie się dobrych praktyk itd)
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: