Cosa consiglieresti per lo sviluppo OS X di un'applicazione grafica come quelle possibili in WPF?
Il mio background specifico è in Smalltalk e Java, ma attualmente lavoro principalmente in DHTML / .NET (ASP.NET/C#).
risposte:
15 per risposta № 1Cacao. Considerato da molti il miglior framework applicativo di sempre. Il linguaggio è Objective-C, un linguaggio simile a SmallTalk che ha ispirato i creatori di Java.
In realtà, non esiste un'alternativa ragionevole a Cocoa per lo sviluppo di OS X, a meno che tu non abbia esigenze specifiche come voler essere multipiattaforma.
4 per risposta № 2
A parte Interface Builder che è incluso comeparte degli strumenti Xcode, puoi anche usare QT, GTK +, AWT e SWING (per lo sfondo Java), Tk, Squeak (per lo sfondo di Smalltalk), Scarpe (molto interessante piccolo toolkit Ruby GUI), FXRuby (più Ruby), wxWidgets, XULRunner e altri sono sicuro di averlo dimenticato. Per le app più native, tuttavia, Interface Builder è la soluzione migliore.
2 per risposta № 3
Il cacao è la struttura principale da utilizzare su Mac OS X. È ciò che usa Apple, è ciò che la maggior parte dei nuovi usi di sviluppo, ed è dove vengono aggiunte principalmente nuove funzionalità.
Se vieni da WPF, penso che potresti trovarealcuni concetti di Cocoa sono familiari. (Nonostante il fatto che Cocoa sia solo un po 'più vecchio.) È costruito interamente intorno a MVC, ci sono notifiche di modifica delle proprietà e legami, il supporto dell'animazione c'è, c'è una struttura di gestione del persorso e degli oggetti grafici, e così via .
(Inoltre, potresti voler aggiungere "mac" ai tag.)
2 per risposta № 4
Con il tuo background Java, non farti sviaredal ormai obsoleto ponte Cocoa-Java. All'inizio della storia di OS X, Apple forniva un'interfaccia Java (laboriosamente gestita manualmente) per le librerie Cocoa. A causa delle differenze semantiche tra Java e Objective-C, molte delle più potenti funzionalità di Cocoa, tra cui il valore Key-binding (su cui sono costruite molte altre caratteristiche) è molto difficile, portando alla divergenza delle capacità di Objetive-C e Java e l'eventuale deprecazione del ponte. Tutto lo sviluppo di Cocoa è fatto meglio con Objective-C o uno dei tanti ponti (generati automaticamente) in linguaggi dinamici come Python o Ruby.
Con il tuo background in smalltalk, mi aspetto che tu possa raccogliere Objective-C in un giorno o due.
1 per risposta № 5
Non sono sicuro di cosa sia WPF, ma della maggior parte dello sviluppoper la piattaforma OSX è fatto in Objective-C con Cocoa. Puoi usare le deprecate API di Carbon con altri linguaggi come Java, ma le nuove applicazioni per OSX dovrebbero essere sviluppate in Objective-C. Puoi iniziare con Guida di Apple con XCode come IDE.
0 per risposta № 6
Per dirla in modo diverso rispetto ai precedenti poster: se non stai progettando la tua interfaccia in InterfaceBuilder e manipolandola con Objective-C, allora ti ritroverai con un'applicazione che non ha l'aspetto, la sensazione, l'azione o il modo in cui deve funzionare un'applicazione Macintosh, e rimarrà fuori come un pollice dolente per gli utenti. Sarà un'esperienza spiacevole per l'utente rispetto ad altre app, e probabilmente vorranno un'applicazione diversa a causa di esso.
Toolkit come QT sono accettabili se il tuol'applicazione usa già QT e vuoi portarlo velocemente, ma se stai scrivendo una nuova applicazione (o una GUI separata), allora scrivilo in Cocoa usando ObjC o ObjC ++.
0 per risposta № 7
Potresti dare un'occhiata a PyObjc che è un ponte tra il linguaggio di programmazione Python e Objective-C, compresi i collegamenti per i componenti di Mac OS X, incluso Cocoa.
0 per risposta № 8
Con uno sfondo Smalltalk, consiglierei direttamente Cocoa e Objective-C. Tuttavia, se ti stai inclinando verso un linguaggio dinamico, RubyCocoa ti permetterà di usare Ruby, che penso che troverai più facile da prendere rispetto a Python.