Narzędzia programistyczne 0800-NPR
Zajęcia maja na celu zapoznanie studentów z podstawami wykorzystania współczesnych narzędzi przydatnych w procesie tworzenia oprogramowania. Zajęcia pomagają w wyborze odpowiedniego narzędzia oraz jego konfiguracji i efektywnym użytkowaniu. W czasie zajęć studenci maja sposobnośc zapoznania się z praktycznym aspektem użycia aplikacji, usług oraz technologii wykorzystywanych w tworzeniu i wdrażaniu wysokiej jakości oprogramowania oraz w prowadzeniu i nadzorowaniu zespołów programistycznych. Narzędzia i technologie omawiane na zajęciach rozwijają się bardzo dynamicznie a w kolejnych latach pojawiają się nowe trendy i technologie wykorzystywane w procesie tworzenia oprogramowania, dlatego szczegółowa lista zagadnień poruczanych na zajęciach jest aktualizowana i dostosowywana każdego roku w ten sposób aby prezentować jak najnowocześniejsze rozwiązania stosowane w branży informatycznej.
W ramach laboratoriów prezentowany jest wybór narzędzi wspierających programistę lub zespoły programistyczne w następujących zadaniach:
- tworzenie i zarządzanie projektami programistycznymi, wsparcie pracy zespołowej w metodologiach zwinnych i DevOps, podział zadań w grupach programistycznych, nadzór nad postępem rozwoju projektów, analiza ryzyka i kosztów
- wersjonowanie kodu w repozytoriach,
- zgłaszanie i raportowanie błędów
- planowanie architektury oprogramowania, projektowanie obiektowe, tworzenie diagramów UML
- edycja przejrzystego kodu, generowanie i refaktoryzacja kodu
- kompilowanie kodu oraz konsolidacja (linkowanie) programów, optymalizacja kodu i automatyzacja procesu budowania, testowania i wdrażanie aplikacji (Contignous Integration)
- wykrywanie błędów, statyczna i dynamiczna analiza kodu oraz programów, profilowanie kodu, analiza wydajności, detekcja i usuwanie wycieków pamięci
- testowanie kodu oraz działania aplikacji,
- tworzenie dokumentacji technicznej
- wdrażanie aplikacji
Główny nacisk na zajęciach położony jest na zaprezentowanie zalet wykorzystania narzędzi wspomagających zespoły programistyczne w procesie wytwórczym, zapewniające automatyzację procesów wytwórczych (np. Azure DevOps) oraz zintegrowanych środowisk programistycznych IDE (np. Visual Studio).
Całkowity nakład pracy studenta
Efekty uczenia się - wiedza
Efekty uczenia się - umiejętności
Efekty uczenia się - kompetencje społeczne
Metody dydaktyczne
Metody dydaktyczne eksponujące
Metody dydaktyczne poszukujące
- studium przypadku
- referatu
- seminaryjna
Rodzaj przedmiotu
Wymagania wstępne
Koordynatorzy przedmiotu
Kryteria oceniania
Zaliczenie odbywa się na podstawie:
- kolokwium weryfikującego nabyte w czasie zajęć umiejętności posługiwania się wybranymi narzędziami programistycznymi (W1-W4, U1-U4, K1)
- przygotowanej demonstracji wybranego (uzgodnionego z prowadzącym) narzędzia programistycznego lub technologii informatycznej (W1-W3, U1, U2, K1, K4)
- projektu przygotowanego samodzielnie lub w zespole programistycznym z wykorzystaniem wybranych narzędzi programistycznych (W1-W4, U1-U4, K1)
Skala ocen:
- za prezentację i demonstrację projektu 50%
- wynik kolokwium zaliczeniowego 50%
Laboratoria: kolokwia, prezentacje i projekty
od 30% - ocena: 3
od 40% - ocena: 3+
od 50% - ocena: 4
od 65% - ocena: 4+
od 80% - ocena 5
Literatura
Literatura podstawowa:
- S. Chacon, B. Straub, Pro Git, https://git-scm.com/book/pl/v2
- Dokumentacja MSDN, http://msdn.microsoft.com/pl-pl
- Mike Snell, Lars Powers , „Microsoft Visual Studio 2010 : księga eksperta”, Helion, Gliwice, 2011.
- Ian Sommerville, Inżynieria oprogramowania, WNT, Warszawa, 2003.
- Eric S. Raymond, „UNIX. Sztuka programowania”, Helion, Gliwice, 2004
Literatura uzupełniająca:
Szczegółowy dobór literatury uzależniony jest od tematyki poszczególnych projektów realizowanych przez studentów oraz wyboru zagadnień realizowanych w danym roku. Zagadnienia te ulegają corocznie modyfikacjom tak aby odzwierciedlić aktualne trendy i obecny stan rozwoju najważniejszych narzędzi programistycznych.
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: