/PrestoManager

"Semplice gestore di ristorante" per Metodologie di Programmazione 2021-2022 (Quattrociocchi - Etta), Università la Sapienza

Primary LanguageJava

PrestoManager

Di Valerio Colella <1951557>

Per Metodologie di Programmazione 2021-2022 (Quattrociocchi - Etta)

Istruzioni per la compilazione

Prerequisiti

  • Java ≥ 17
  • Maven

Librerie

(già incluse nel pom.xml del progetto, quindi scaricate automaticamente da Maven):

  • FlatLaf
  • FlatLaf-extra
  • svgSalamander
  • Jackson
  • SLF4J
  • SLF4J-SimpleLogger

Nota

  • Maven potrebbe non usare la versione corretta di Java quando due o più versioni sono installate contemporaneamente.
    Per verificare con quale versione sta girando Maven eseguire mvn --version.
    La versione di Java usata da Maven è quella specificata dalla variabile di ambiente JAVA_HOME

Creare il JAR

Per compilare il progetto eseguire, in base alla piattaforma desiderata:

  • mvn package -Plinux

Oppure

  • mvn package -Pwindows

Note

  • L'output si trova in (cartella progetto)/target/PrestoManager_(piattaforma)
  • È necessario eseguire il progetto tramite i file launcher launch.sh o launch.bat, altrimenti Java non imposta correttamente la cartella corrente, e piatti e impostazioni vengono lette e scritte in /home o C:
  • Sono inclusi un dishes.json e un settings.json di default per dimostrare lo stato tipico del programma. È possibile cancellarli entrambi per provare l'esperienza di primo avvio (schermata di benvenuto, ecc.)

Test

Il progetto viene automaticamente testato quando viene eseguito mvn package -Ppiattaforma. Per eseguire solo i test senza generare un .jar, mvn test

Limitazioni

La finestra di PrestoManager è liberamente ridimensionabile, ma è fortemente consigliata una risoluzione minima di 1280x720, alcune parti dell'interfaccia potrebbero risultare nascoste in alcune pagine se si usano risoluzioni minori. Alcuni caratteri unicode potrebbero non essere stampati correttamente nello scontrino.

Altri strumenti

Strumenti usati per lo sviluppo e la stesura della relazione, non necessari alla compilazione:

  • Eclipse IDE
  • Eclipse m2e (integrazione con Maven)
  • GIMP - GNU Image Manipulation Program
  • Inkscape
  • Overleaf e TeXstudio
  • PlantUML
  • Visual Studio Code

NON è stato usato WindowBuilder, tutte le interfacce grafiche presenti sono state fatte direttamente da codice "a mano"