Riscrivi il codice precedente o continua a conviverci [duplicato]

-4

L'anno scorso ho deciso di creare un sistema di estensione SAP Business One basato sul web composto da una SPA JavaScript scritta con Aurelia che comunica con due backend REST scritti in Go e Java (Dropwizard).

Tuttavia, da ottobre 2016 all'inizio di questo mese ho lavorato solo otto ore alla settimana, mentre sto studiando ingegneria del software. La maggior parte di questo tempo è stata spesa per progetti più urgenti. Ora, ho finito gli altri progetti e il mio capo mi ha detto di continuare a lavorare sul sistema di estensione SAP.

Il problema principale è che Aurelia ha praticamente perso la sua trazione, ha alcuni fastidiosi bug e l'esperienza per gli utenti non è così stabile. Ad esempio, i componenti dell'interfaccia utente funzionanti non funzionano più con le versioni più recenti di Firefox e così via. Inoltre, dato che il progetto è iniziato piuttosto piccolo, ho deciso di dare a Go un ulteriore tentativo, ma ora rimpiango davvero questa decisione, poiché ho imparato sia a Ruby che a Scala quale stile è molto più attraente per me. Inoltre, il codice è abbastanza non documentato e quindi ho bisogno di scrivere molta documentazione. Inoltre, il codice Go viene distribuito principalmente su tre file che hanno ciascuno più di 1500 righe di codice e sono illeggibili. Sembra che / r / programmingcirclejerk avesse ragione su Go.

Ora, non so davvero se dovrei sostituire la parte Go che consiste principalmente nell'eseguire query SQL e analizzare i risultati con Ruby (Sinatra o Rails) o Dropwizard o se dovrei stare con Go, documentarlo ed estenderlo esso. Inoltre, ho bisogno di una soluzione per migliorare l'interfaccia web e renderla più stabile. Sto pensando a Ember o all'utilizzo di un framework lato server.

In ogni caso, il tempo trascorso nella mia azienda è limitato. Sono in grado di lavorare a tempo pieno solo fino alla fine di settembre, ma sembra che sia necessario estendere il progetto anche dopo l'inizio del prossimo semestre, quindi un ambiente stabile e strutturato sarebbe fantastico.

E so che le riscritture precedenti non hanno la migliore reputazione, ma non mi piace il sistema Frankenstein che ho creato.

    
posta Lukas 28.07.2017 - 11:11
fonte

1 risposta

1

Considera questo: le stesse forze che hanno causato il trasformarsi del codice esistente in un "sistema Frankenstein" causeranno a un sistema riscritto problemi simili.

    
risposta data 28.07.2017 - 12:59
fonte

Leggi altre domande sui tag