Spostare GUI in libreria e interagire con essa tramite interfacce

di il
4 risposte

Spostare GUI in libreria e interagire con essa tramite interfacce

Buonasera, chiedo se è possibile creare un'eseguibile desktop che carichi l'interfaccia utente a runtime.

L'idea è fare in modo che l'eseguibile principale contenga il codice non dipendente dalla GUI, e comunichi con la GUI tramite delle interfacce che astraggono il concetto di finestra (ad esempio definendo una interfaccia IGenericWindow che esponga metodi come Show, Close, ecc.).

Lo scopo di tutto, è fare in modo che l'eseguibile principale possa essere indipendente dalla tecnologia usata per la GUI, come WinForms, Wpf, ecc.

E' fattibile?

4 Risposte

  • Re: Spostare GUI in libreria e interagire con essa tramite interfacce

    SI e NO

    SI: per potere essere indipendente dalla libreria che implementa l'interfaccia utente, DEVI IDENTIFICARE 
    una serie di funzionalita' COMUNI a TUTTE le librerie usate per creare una UI.

    QUINDI devi scrivere il tuo condice BASANDOTI su tali funzionalita
    QUINDI per ogni libreria DEVI IMPLEMENTARE il wrapper che MAPPA le tue funzionalita' a quelle della libreria schelta.

    Si puo' fare, ma forse buttarsi giu' dall'ultimo piano della Freedom Tower (che E' accessibile al pubblico ma comunque sei dentro un ambiente TOTALMENTE chiuso) risulterebbe PIU' FACILE ;-)

    NO: non ha senso farlo perche' ci sono ALTRI MODI per approcciare il problema.

    SE il problema e' usare la libreria L1 o L2 per lo STESSO sistema operativo, la richesta NON HA SENSO: non c'e' nessuna ragione per decidere a “runtime” il tipo di UI da usare, visto che le UI sono COMPLESSE da implementare, e chi te lo fa fare ad implementare DUE VOLTE la stessa cosa?

    SE il problema e' essere indipendente dal sistema operativo, ci sono le librerie CROSS-PLATFORM che ti semplificano la vita.

  • Re: Spostare GUI in libreria e interagire con essa tramite interfacce

    26/03/2024 - migliorabile ha scritto:

    SE il problema e' usare la libreria L1 o L2 per lo STESSO sistema operativo, la richesta NON HA SENSO: non c'e' nessuna ragione per decidere a “runtime” il tipo di UI da usare, visto che le UI sono COMPLESSE da implementare, e chi te lo fa fare ad implementare DUE VOLTE la stessa cosa?

    Si, più che altro è per capire come integrare una sorta di sistema di “skin”.

  • Re: Spostare GUI in libreria e interagire con essa tramite interfacce

    26/03/2024 - Antologiko ha scritto:


    L'idea è fare in modo che l'eseguibile principale contenga il codice non dipendente dalla GUI, e comunichi con la GUI tramite delle interfacce che astraggono il concetto di finestra (ad esempio definendo una interfaccia IGenericWindow che esponga metodi come Show, Close, ecc.).

    Quello che cerchi è sostanzialmente una buona implementazione di un pattern MVVM.

  • Re: Spostare GUI in libreria e interagire con essa tramite interfacce

    Le skin sono un'altra cosa. Ad esempio si puo' fare in Java, con le Swing, la libreria per realizzare le UI. 

    le skin NON SONO un'altra libreria, MA un file di configurazione che indica, per ogni componente della UI, come questo debba essere disegnato.

    C'e' un plug-in per Eclipse che ti permette di cambiare i colori dell'intera UI dell'IDE. 

    MA la libreria e' sempre la stessa. 

    SE la libreria non supporta le skin nativamente, spesso trovi ‘estensioni’ che aggiungono tale funzionalita', oppure puo' essere implementata. MA la libreria di partenza e' una sola.

Devi accedere o registrarti per scrivere nel forum
4 risposte