AlgoJudge 1000-SR-AlgoJudge
Kurs rozpocznie się od wprowadzenia studentów do problematyki systemu sprawdzającego automatycznie rozwiązania zadań programistycznych. Przedstawione zostaną podobne rozwiązania, ich zalety, wady i różnice.
Pierwsza część kursu w formie warsztatów wprowadzi studentów do pojęć i technologii używanych w nowoczesnych aplikacjach internetowych. Zostaną przedstawione również aktualne metodyki pracy w zespole.
Tematyka zajęć warsztatowych z przykładami problemów na przykładzie projektu AlgoJudge:
- Wprowadzenie do problemu systemu sprawdzającego automatycznie rozwiązania zadań programistycznych;
- Wprowadzenie do języka programowania C#, środowiska .NET 8.0 oraz narzędzi;
- Wprowadzenie do mapowania relacyjno-obiektowego;
- Wprowadzenie do języka programowania TypeScript, środowiska oraz narzędzi;
- Tworzenie aplikacji internetowych z użyciem bibliotek komponentów React;
- Uruchamianie oprogramowania w kontenerach Docker;
- System kontroli wersji kodu źródłowego Git;
- Metodyki pracy w zespole;
- Licencje otwartego oprogramowania;
- Wzorce projektowe oprogramowania;
- Testowanie oprogramowania.
W drugiej części kursu studenci będą pracować wspólnie nad zadaniami zgodnie z uzyskaną wiedzą z pierwszej części kursu. Praca w zespole nad wybranym projektem będzie się odbywać w tygodniowych Sprintach zgodnie z metodyką Scrum.
Tematyka zajęć praktycznych na przykładzie projektu o początkowej fazie rozwoju:
- Problemy koncepcyjne;
- Określenie wymagań systemu;
- Określenie funkcjonalności systemu i nadanie im priorytetów;
- Porównanie istniejących podobnych aplikacji, wykonanie analizy ich zalet i wad;
- Projektowanie interfejsów użytkownika;
- Przygotowywanie makiet ekranów aplikacji;
- Tworzenie nowego projektu;
- Wytworzenie bazy projektu;
- Opracowanie schematu bazy danych przy użyciu ORM;
- Przegląd dostępnych bibliotek programistycznych;
- Implementacja “proof of concept”.
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 podające
- wykład konwersatoryjny
Metody dydaktyczne poszukujące
- projektu
- studium przypadku
- doświadczeń
Rodzaj przedmiotu
Wymagania wstępne
Koordynatorzy przedmiotu
Kryteria oceniania
Zaliczenie na podstawie aktywności i wykonanych zadań na zajęciach lub testu wielokrotnego wyboru na Moodle.
Literatura
Materiały własne
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: