Abstract - Al12rs/RetiDiCalcolatori GitHub Wiki
INI Edit Manager (Progetto ingegneria del software)
Cos'è?
Una applicazione desktop munita di interfaccia grafica che si pone come obbiettivo la gestione avanzata delle modifiche a file .INI, ancora molto usati da applicazioni come videogiochi per persistenza delle impostazioni di configurazione.
Come funziona?
Dato un file vergine (senza cambiamenti), il programma permetterebbe all'utilizzatore di applicarvi una successione di edits (intesi come un insieme di chiavi aggiunte o modificate), visti come entità dotate di ordine e disattivabili tramite una semplice checkbox. L'applicazione si occuperebbe del merging automatico della successione di edits tenendo conto dell'ordine, modificabile dall'utente utilizzando drag&drop sulla lista. Configurazioni differenti di ordine possono essere salvate sottoforma di profili, che l'utente può selezionare per ottenere risultati differenti velocemente. Importante obbiettivo è quello di mostrare graficamente e intuitivamente i confitti tra edits, e conseguentemente offrire all'utente un metodo facile per risolverli. Il software dovrà inoltre offrire tutta una serie di altre funzionalià di comodità per la gestione di file di configurazione (non solo INI) tra cui degne di nota:
- Configurabilità per la gestione di tutte le possibili tipologie di file INI.
- Generazione e recupero di backup.
- Strumento di confronto sia specifico per INI che non (diff tool).
- Editor di testo adeguato per poter modificare edits e risolvere conflitti.
- Possibilità di commento degli edits e persistenza.
Cosa porta di nuovo?
Il programma mira a portare una visione orizzontale delle modifiche ai file, invece di una visione temporale di una sequenza di cambiamenti. Confrontata con un sistema di versioning come git, l'applicazione permette molto più facilmente di annullare cambiamenti non recenti ma soprattutto permette di modificare l'ordine di applicazione (e quindi soluzione di conflitti), sia modificando il profilo corrente, sia alternando tra profili creati.
User base:
L'idea del programma nasce da una esigenza presente nelle comunità di modifica di videogiochi (modding), attiva e presente su molte piattaforme web (comunità che conta più di 10 milioni di utenti). Questo, oltre a garantire un effettivo utilizzo del prodotto finale, permetterebbe anche il testing di beta software direttamente da parte di end user interessati, e raccolta di feedback durante lo sviluppo.