Quando si crea un'applicazione non banale, è meglio concentrarsi su come far funzionare le cose rapidamente e prendere scorciatoie nel codice come mescolare la logica del modello con le proprie viste, rompere l'incapsulamento - odori tipici del codice? Oppure, stai meglio prendendo il tempo in anticipo per costruire più architettura, costruirla nel modo giusto, ma correndo il rischio che tutto questo codice extra possa non essere utilizzato poiché il tuo design è abbastanza fluido e potresti doverlo buttare via se il feedback ti causa andare in una direzione diversa?
Per il contesto, sto creando un'applicazione desktop. Sono l'unico sviluppatore e lo faccio part-time da quando ho un lavoro giornaliero. Ora, per lavoro, provo a fare le cose nel modo giusto, se il programma lo consente. Ma per questo progetto, che mi aspetto si trasformerà quando riceverò feedback dalle persone, non sono sicuro che sia l'approccio giusto. Ho trascorso diverse ore questa settimana a mettere in atto un libro di testo Model View Controller design per comunicare i cambiamenti nel modello alla vista. Questo è fantastico in generale, ma non sono sicuro di aver bisogno di più viste per visualizzare i dati e so che avrei potuto visualizzare le cose più rapidamente senza l'architettura aggiuntiva. Con forse 10-15 ore settimanali da dedicare al progetto, credo che ci vorranno anni per realizzare qualcosa che posso dimostrare se seguo le buone pratiche del software. So che i miei utenti hanno vinto " non importa se ho usato MVC internamente, vogliono solo qualcosa che risolva il loro problema. Ma mi sono anche trovato nella situazione in cui hai subito un così grande debito tecnico da scorciatoie che il codice è incredibilmente difficile da mantenere e aggiungere nuove funzionalità. Mi piacerebbe sapere come le altre persone affrontano questo tipo di problema.