Sono uno sviluppatore C # che non ha ancora avuto il privilegio di apprendere WPF. Tuttavia, di recente ho avviato la fase di architettura di un nuovo progetto che, a mio avviso, utilizzerà eventualmente WPF (probabilmente, sebbene ASP.Net sia ancora un'opzione), ma lo sviluppo della GUI non inizierà per diversi mesi. (Dobbiamo ottenere un buy-in su un proof-of-concept basato su WinForm prima di procedere con lo sviluppo full-grade.) Quando siamo pronti per iniziare a implementare la GUI, imparerò WPF da solo o assumerò qualcuno con esperienza (preferibilmente entrambi).
Quindi la mia domanda è: quali sono i fondamenti chiave (schemi di progettazione, elementi essenziali della lingua, ecc.) che potrei impiegare fin da subito per facilitare una migrazione più fluida lungo la strada? Ad esempio, il mio codice è un modello di simulazione che conterrà un numero molto grande di entità che alla fine dovranno essere "visualizzate", con controlli utente interattivi. Esistono alcune tecniche che, se implementate da zero, renderebbero cablati questi oggetti con WPF meno doloroso in seguito? (Come le proprietà di dipendenza, o quant'altro.) Allo stesso modo, se mi fido dell'approccio MVC che conosco per ora, sarà immediato trasformarlo in una strategia MVVM in seguito? Ci sono alcuni concetti semplici che potrei applicare ora che renderebbero la migrazione più facile, ma non ci vorranno due settimane dal mio attuale ciclo di sviluppo per padroneggiare?
In sostanza, sto cercando di seguire consiglio dello zio Bob per rimandare le decisioni architettoniche (in questo caso, il livello della GUI) fino a quando non devo assolutamente realizzarle. Ma voglio sapere se ci sono costi di migrazione inutili che potrei evitare se li anticipo in anticipo.