Divisione logica, dati, layout e "Hacks"

4

Certo, tutti abbiamo sentito parlare di schemi di programmazione come MVVM, MVC e simili.

Ma non è quello che sto cercando in quanto Layout, Data e Logic è già abbastanza suddiviso (markup XML-Layout, Database, inserisci qui la tua lingua preferita ).

La piattaforma che sto sviluppando è difficile da mantenere rispetto alle versioni aggiornate e ai sistemi operativi meno recenti. Il progetto è cresciuto significativamente negli ultimi mesi e affrontare diverse versioni della piattaforma è davvero un problema.

Ad esempio, disabilitare semplicemente un controllo dell'interfaccia utente per tutte le versioni esistenti mi ha portato a circa 40 righe di codice nel livello logico, a litigare con invocazione, delega, singoletti che forniscono la gestione dell'interfaccia utente e così via.

C'è un modo pulito per tenere traccia di questi "hack" escludendoli magari in classi separate o addirittura in pacchetti? Devo sovrascrivere il codice framework esistente per gestire correttamente i miei requisiti? In tal caso, questo concetto ha un nome?

    
posta fjdumont 10.01.2012 - 14:38
fonte

1 risposta

2

L'inversione di controllo potrebbe essere d'aiuto in combinazione con attiva / disattiva . Prova a inserire i tuoi hack in classi derivate che sovrascrivano determinati bit. In alternativa, a volte puoi fare con un'interfaccia che potresti implementare in un modo alternativo. Tramite l'iniezione delle dipendenze puoi "configurare" qualsiasi codice client per utilizzare inconsapevolmente il tuo (temporaneo) trucco.

Per esempio quando si usa un pattern MVC si potrebbe derivare da un certo controller. Sostituisci un metodo e rendilo restituisce una vista diversa che normalmente farebbe.

    
risposta data 12.05.2012 - 02:31
fonte

Leggi altre domande sui tag