Sto lavorando a un progetto in questo momento che mi sta facendo calcolare gli interessi mensili su un conto bancario. Il modo in cui l'interesse dovrebbe essere calcolato è il seguente:
Utilizza la media giornaliera per calcolare gli interessi. Il saldo medio giornaliero di un account viene calcolato prendendo la media del saldo finale del giorno per ogni giorno del mese. Quindi, alla fine di ogni mese, calcola il saldo medio giornaliero per quel mese e utilizzalo per calcolare l'interesse.
L'essenza di base del mio software è la seguente: è un'applicazione Desktop Java con una GUI Swing e un file di testo serializzato per archiviare informazioni sui conti bancari quando il software non è in esecuzione.
Qual è un buon modo per calcolare questa media giornaliera e applicare l'interesse al momento giusto?
NOTA: se possibile, davvero non voglio dover implementare una sorta di database centralizzato con SQL o qualcosa di simile. Questo mi richiederebbe di riscrivere un sacco di codice, e non so davvero nulla di SQL così com'è ..
Informazioni aggiuntive
Userò Joda-Time per tenere traccia dell'ora / data.
Ho pensato solo a fare una sorta di calcolo sull'ora, la data e l'equilibrio ogni volta che chiudo / apro il programma. Ma cosa succede se il software viene lasciato in esecuzione, diciamo 15 giorni di seguito?
Diciamo che volevo solo implementare del codice per calcolare il saldo medio del mese ogni volta che si apre il programma, e non preoccuparsi del programma che viene eseguito per giorni alla volta. Come potrei andare a fare questo? Stavo pensando di avere una sorta di campo lastAccessed
che memorizzerebbe la data dell'ultima volta in cui il programma è stato aperto. Quindi calcola la media ogni volta che il software è stato aperto utilizzando l'ultimo campo accessibile in qualche modo.