Skład: Mateusz Brzozowski, Konrad Wojda, Mikołaj Kuranowski
Projekt ma na celu ułatwienie przedsiębiorstwu komunikacyjnemu układanie rozkładu jazdy.
- Wprowadzanie podstawowych informacji o przedsiębiorstwie komunikacyjnym
- Tworzenie przystanków
- Tworzenie różnych dni kursowania
- Tworzenie linii
- Tworzenie tras (w ramach linii)
- Tworzenie kursów (w ramach linii i dni kursowania)
- Wyświetlanie siatek rozkładów (w ramach linii i dni kursowania)
- Generowanie tabliczek przystankowych
- Eksport do pliku GTFS
- Aplikacja desktopowa
- Napisana w języku Java z wykorzystaniem środowiska Maven
- Interfejs graficzny z wykorzystaniem biblioteki Swing lub JavaFX
- Dane przechowywane w centralnej bazie danych
Każda osoba odpowiedzialna jest za jedną część aplikacji, zgodnie z wzorcem MVC:
- Model: Mikołaj Kuranowski
- Widoki: Mateusz Brzozowski
- Kontrolery: Konrad Wojda
- wykorzystanie pętli for-each
- wykorzystanie jednego z następujących elementów:
- typ wyliczeniowy
- własny typ generyczny
- zmienna liczba parametrów metody
- własna adnotacja
- wyrażenie lambda
- wykorzystanie strumieniowego przetwarzania danych w kolekcjach (część 1) (część 2)
- zdefiniowanie testów jednostkowych dla metod publicznych w modelu (zakładając, że stosujemy MVC):
- definiowanie i rzucenie własnego wyjątku w modelu i jego obsługa w kontrolerze
edu.iipw.pap.db.model
- modeledu.iipw.pap.db
- połączenie z bazą danychedu.iipw.pap.controller
- kontroleryedu.iipw.pap.exceptions
- własne wyjątkiedu.iipw.pap
- punkt wejściowy do aplikacji oraz pozostałe pomocnicze klasy
Widoki zdefiniowane są w plikach fxml w katalogu resources.view
Diagram klas w modelu:
classDiagram
Database o-- Agency
Database o-- Line
Database o-- Stop
Database o-- Calendar
Agency o-- Line
Line o-- Pattern
Pattern o-- PatternStop
Pattern o-- Trip
Calendar o-- Trip
Stop o-- PatternStop
Trip o.. StopTime
Stop o.. StopTime
class ObjectPool {
<<interface>>
}
Database ..|> ObjectPool