Pergunta

Estou escrevendo um aplicativo GUI que quero usar o swing e o swt. O usuário final especificará de alguma forma que deve ser usado (ele não usará os dois ao mesmo tempo!). SWT é o que eu prefiro em geral e tenho olhado para o JFFFE, mas parece que, se eu usar seus recursos mais poderosos, aumentarei o acoplamento entre a GUI e o modelo, e tornarei muito mais difícil abstrair a GUI, então o swing pode ser usado também.

É este o caso? Pode-se usar o jface sem vincular detalhes da GUI no modelo ou vice-versa?

Foi útil?

Solução

Para o que eu sei, usando os visualizadores do JFPED Ioffers, uma boa separação de visão e modelo.

O único acoplamento apertado aqui é a escolha da implementação real do visualizador (por exemplo, usando a TableViewer versus TreeViewer para vincular seu modelo a uma tabela ou um widget de árvore com respeito).

Quanto à sua primeira parte da pergunta que o TAT indica que você deseja por algum motivo para dissociar sua aplicação de uma escolha da GUI, sugiro que você dê uma olhada Projeto UFace

Projeto UFace pretende fornecer exatamente o que você parece estar buscando - uma única implementação da interface do usuário que pode ser executada contra muitos back -ends da GUI (ele chama Fornecedores):

Página do projeto UFace No momento deste escrito, listas de suporte para os seguintes fornecedores:

  • Jface/swt
  • Balanço
  • Gwt

(Também ouvi rumores de algum trabalho sendo feito para apoiar o fornecedor do QT Jambi também)

Outras dicas

Você não pode mudar dinamicamente. O JFFFE chama SWT. Não se pode pedir para ligar para a AWT.

Quanto a Jface acopla o modelo à GUI, bem, não. Ele possui um conjunto de interfaces de modelo, mas você pode colar qualquer modelo que quiser. Cabe a você fazer isso de maneira limpa se o seu cliente quiser a opção de arrancar o JFFFE algum dia.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top