Back
Business

🚆 BrianzaTrainsObjects

Sistema di Biglietteria Ferroviaria con Architettura OOP Avanzata

📋 Panoramica del Progetto

Sistema completo di biglietteria ferroviaria che implementa un'architettura OOP avanzata con separazione tra entity models, service layers, view rendering e persistenza dati. Il progetto dimostra l'applicazione di design patterns e best practices nella programmazione orientata agli oggetti.

✨ Funzionalità Principali

🎫 Emissione Biglietti

Creazione di biglietti ferroviari con ID univoco, chilometraggio e classe di viaggio

💰 Calcolo Prezzi

Pricing dinamico basato su distanza (km) e classe (prima o seconda)

📄 Template Rendering

Sistema di rendering per output in formato testo e HTML

✅ Validazione Dati

Controlli di validità su ID, km e classe di viaggio

💵 Tariffe

Classe Tariffa al km
Prima Classe €0.20/km
Seconda Classe €0.10/km

🏗️ Architettura del Progetto

Entity Layer

View Layer

Main/Controller Layer

Library Utilities

💡 Concetti OOP Applicati

🎯 Flusso del Programma

  1. Input: L'utente inserisce ID, chilometri e classe
  2. Validazione: Il sistema verifica che i dati siano validi
  3. Calcolo: Viene calcolato il prezzo in base a km e classe
  4. Anteprima TXT: Mostra il biglietto in formato testo nella console
  5. Output HTML: Opzionalmente salva il biglietto in HTML

🔧 Tecnologie Utilizzate

📚 Cosa Ho Imparato

🔗 Link al Codice

View on GitHub