/ / Rich GUI OS X Frameworks? - wpf, interface de usuário, macos, frameworks

Rich GUI OS X Frameworks? - wpf, interface de usuário, macos, frameworks

O que você recomendaria para o desenvolvimento do OS X de uma aplicação gráfica como as possíveis no WPF?

Meu background específico está em Smalltalk & Java, mas atualmente trabalho principalmente em DHTML / .NET (ASP.NET/C#).

Respostas:

15 para resposta № 1

Cacau. Considerado por muitos como o melhor framework de aplicativos de todos os tempos. A linguagem é Objective-C, linguagem semelhante a SmallTalk que inspirou os criadores de Java.

Realmente, não há alternativa razoável ao desenvolvimento do Cocoa para OS X, a menos que você tenha necessidades específicas, como querer ser multi-plataforma.


4 para resposta № 2

Além do Interface Builder, que é incluído comoComo parte das ferramentas do Xcode, você também pode usar QT, GTK +, AWT e SWING (para o seu background Java), Tk, Squeak (para o seu fundo Smalltalk), Shoes (muito legal pequeno Ruby GUI toolkit), FXRuby (mais Ruby), wxWidgets, XULRunner e outros Eu tenho certeza que me esqueci. Para os aplicativos mais nativos, no entanto, o Interface Builder é sua melhor aposta.


2 para resposta № 3

O Cocoa é a estrutura principal para usar no Mac OS X. É o que a Apple usa, é o que a maioria dos novos desenvolvimentos usa, e é onde os novos recursos são adicionados principalmente.

Se você está vindo do WPF, eu acho que você pode encontraralguns dos conceitos do Cocoa são familiares. (Apesar do fato de que o Cocoa é um pouco mais antigo). Ele é construído inteiramente em torno do MVC, há notificações e ligações de alteração de propriedade, há suporte a animação, há uma estrutura de gerenciamento de persistência e gráfico de objeto e assim por diante. .

(Além disso, você pode querer adicionar "mac" às tags.)


2 para resposta № 4

Com o seu fundo Java, não se desviepela agora obsoleta ponte Cacau-Java. No início da história do OS X, a Apple forneceu uma interface Java (laboriosamente mantida à mão) para as bibliotecas Cocoa. Devido às diferenças semânticas entre Java e Objective-C, muitos dos recursos mais poderosos do Cocoa, incluindo ligação de valor-chave (sobre os quais muitos outros recursos são construídos) são muito difíceis, levando à divergência dos recursos Objetive-C e Java e a eventual depreciação da ponte. Todo o desenvolvimento do Cocoa é melhor feito com Objective-C ou uma das muitas pontes (geradas automaticamente) para linguagens dinâmicas como Python ou Ruby.

Com o seu background em smalltalk, eu esperaria que você pudesse pegar o Objective-C em um dia ou dois.


1 para resposta № 5

Eu não tenho certeza do que WPF é, mas a maioria dos desenvolvimentopara a plataforma OSX é feito em Objective-C com Cocoa. Você pode usar as APIs de carbono reprovadas com outras linguagens como Java, mas novas aplicações para o OSX devem ser desenvolvidas em Objective-C. Você pode começar com Guia da Apple com o XCode como seu IDE.


0 para a resposta № 6

Para colocar de uma maneira diferente do que os posters anteriores: se você não está projetando sua interface no InterfaceBuilder e manipulando-a com Objective-C, então você vai acabar com um aplicativo que não aparente, sinta, aja ou trabalhe como um aplicativo Macintosh deveria, e ele se destacará como um polegar dolorido para os usuários. Será uma experiência desagradável para o usuário em comparação com outros aplicativos, e eles provavelmente desejarão um aplicativo diferente por causa disso.

Toolkits como QT são aceitáveis ​​se o seuaplicação já usa QT e você quer portá-lo rapidamente, mas se você está "re escrevendo uma nova aplicação (ou uma GUI separada) então escreva-a em Cocoa usando ObjC ou ObjC ++.


0 para resposta № 7

Você pode dar uma olhada PyObjc que é uma ponte entre a linguagem de programação Python e o Objective-C, incluindo ligações para componentes do Mac OS X, incluindo o Cocoa.


0 para a resposta № 8

Com experiência em Smalltalk, eu recomendaria cacau direto e Objective-C. No entanto, se você estiver inclinado a uma linguagem dinâmica, RubyCocoa permitirá que você use Ruby, que eu acho que você achará mais fácil de entender que o Python.