Frage

Ich schreibe eine GUI-Anwendung, dass ich auf den Einsatz Schaukel und SWT wollen. Der Endbenutzer wird angegeben, irgendwie, die verwendet werden soll (es wird nicht beide gleichzeitig verwenden!). SWT ist, was ich im Allgemeinen bevorzugen, und ich habe bei JFace gesucht, aber es scheint, wie wenn ich seine mächtigsten Funktionen verwende ich die Kopplung zwischen der GUI und dem Modell erhöhen, und machen es viel schwieriger zu abstrahieren die GUI so Schwingen sein kann verwendet als gut.

Ist dies der Fall? Kann man verwenden JFace ohne GUI Details in das Modell oder umgekehrt zu binden?

War es hilfreich?

Lösung

Für das, was ich weiß, JFace Zuschauer ioffers ziemlich gute Trennung der Ansicht und Modell.

Die einzige eng hier Kopplung ist die Wahl des tatsächlichen Betrachter Implementierung (zum Beispiel im Vergleich zu Tableviewer TreeViewer mit Ihrem Modell zu binden entweder einer Tabelle oder einem Baum-Widget respektvoll).

In Bezug auf den ersten Teil der Frage TUN Sie aus irgendeinem Grunde zeigt mögen, dass Ihre Anwendung aus einer Auswahl von GUI-Framework zu entkoppeln, würde ich vorschlagen, dass Sie einen Blick auf uFace Projekt

UFace Projekt Ziele genau das, was Sie scheinen zu sein Ziel - eine einzelne UI-Implementierung, die gegen viele GUI-Backends ausführen können (es nennt Anbieter ):

UFace Projektseite zur Zeit des Schreibens dieses Artikels Listen für folgende Provider unterstützen:

  • JFace / SWT
  • Schaukel
  • GWT

(Ich habe auch Gerüchte über einige Arbeit gehört auf die Unterstützung von Qt Jambi-Provider als auch getan)

Andere Tipps

Sie können nicht dynamisch wechseln. JFace ruft SWT. Es kann nicht AWT gefragt werden, anstatt zu nennen.

Als ob JFace koppelt das Modell in die GUI, na ja, nein. Es hat eine Reihe von Modell-Schnittstellen, aber Sie können kleben, was Modell, das Sie sie mögen. Es liegt an Ihnen, diese sauber zu tun, wenn Ihr Kunde die Möglichkeit, herauszureißen JFace eines Tages will.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top