Disaccoppia la GUI e la logica del programma

1

Ho un codice windows c ++ (puro winapi c ++, nessun MFC, ecc.) che mi piacerebbe creare una GUI per. Il mio codice non è a conoscenza della GUI di Windows, è completamente disaccoppiato da qualsiasi tipo di interfaccia utente.

La domanda: come posso costruire un'interfaccia utente attorno al codice esistente. Idealmente, sto immaginando qualcosa del genere:

GUI < - > Mediatore < - > MyExistingCode

Ad esempio,

MyExistingCode.showmsg(char* msg) chiamerebbe Mediator.MessageBox(0, 0, msg, 0);

Sono bloccato su come progettare la classe Mediator (Se questo è il modo corretto di andare su questo). Il Mediatore è un'interfaccia ?, Classe astratta ?, Altro? Un modello MVC è il modo migliore per andare?

    
posta ChaseTheSun 02.02.2014 - 04:22
fonte

2 risposte

3

La soluzione che funziona meglio per me al giorno d'oggi è quella di creare la mia applicazione come una libreria ( lib o dll ) e quindi creare la mia console o l'applicazione GUI. Ad esempio, su Visual Studio funziona con almeno due progetti nella stessa soluzione. Un progetto è la tua libreria e l'altro è il consumatore di quella libreria. Devi solo fornire un'interfaccia ragionevole e non preoccuparti di chi e come utilizza la tua libreria. In questo modo, la mia console o GUI userebbero il mio codice come qualsiasi altra normale libreria di terze parti.

Vedi alcune opinioni su questa domanda SO: Cosa pensi di sviluppare per la riga di comando prima?

    
risposta data 02.02.2014 - 07:04
fonte
0

Inizia con uno dei MVC, Modelli MVP o MVVM . Tutti questi sono dimostrati e hanno i loro vantaggi e svantaggi. C'è molta letteratura là fuori e anche qui su SO / SE.

    
risposta data 03.02.2014 - 00:02
fonte

Leggi altre domande sui tag