Frage

Ich möchte einige Objective-C-Code für die Verteilung schreiben. Was ist der beste Weg, um die Ausgabe zu verpacken. In Java können Sie Ihren Code in einer JAR-Datei verpacken und verteilen. Was wäre das Äquivalent in Objective-C?

Der folgende Link ist in der Nähe, aber scheint die Namespace-Probleme zu lösen, die ich nicht besorgt bin. Ich bin vor allem besorgt über den Code bis zur einfachen Verteilung einstellen.

Objective-C-Äquivalent von Java-Pakete?

War es hilfreich?

Lösung

Ein Rahmen ist mit ziemlicher Sicherheit der Weg zu gehen. Eines der wirklich nette Dinge über Frameworks auf OS X ist, dass sie die ausführbaren Code bündeln können, headers, Metadaten, Bilder, Symbole usw. in einem einzigen Paket. Ferner können Gerüste in */Library/Frameworks/ enthalten sein oder sogar in Ihrem App Bündel vollständig Abhängigkeit von einer bestimmten Version des Frameworks von jedem anderen App zu entkoppeln.

Apples Rahmen Programming Guide ist der beste Ort, um mit Rahmen zu beginnen.

einen Rahmen zu schaffen, ist einfach. Im Grunde genommen in Xcode Sie wählen Datei> Neues Projekt ... und wählen Sie Framework dann Cocoa Framework. Dadurch wird ein neues Projekt mit Rahmen Ziel einzurichten und alles automatisch verpacken für Sie, wenn Sie zu bauen.

Vergessen Sie nicht, dass die Dokumentation und Unit-Tests eine gute Sache ™ sind, vor allem für Gerüste, die von Natur aus eher zu von mehreren Clients verwendet werden, als die meisten Endbenutzer-Code. Sie können mehrere Ziele zu Ihrem Rahmen Xcode Projekt hinzufügen zu dokumentieren und zu testen.

Da Sie für Beispiele suchen, Besuche CHDataStructures.framework (ein Projekt, das ich entwickle) und PSMTabBarControl.framework (was viele zusätzliche Ressourcen im Rahmen umfasst). Beide sind Open-Source, und sollten geeignete Beispiele geben für Ihre eigenen Rollen.

Ein Wort der Beratung Ihnen einig Kopf-Kratzen zu speichern: Ihre Header-Dateien werden nicht auf den eingebauten Rahmen kopiert werden, wenn Sie auf dem Rahmen Ziel klicken und ändern Sie die Rolle auf „Public“ (oder "Privat").

Andere Tipps

Sie möchten einen Rahmen schaffen. Es ist ein Ausgangspunkt in Xcode für ein neues Projekt einer von dieser zu erstellen. Es gibt ein paar Einschränkungen und gotchas, aber im Großen und Ganzen der Prozess ist sehr einfach.

Edit: Zur Klarstellung: Wenn Sie planen, es als FOSS zu verteilen; Verpackung in einem Rahmen bis vielleicht zu viel des Guten; den Quellcode nur verteilen könnte eine sinnvollere und einfachere Option sein. Aber wenn Sie die Quelle für sich behalten möchte oder es mit einer Sammlung von relevanten Ressourcen zu verteilen, könnte ein Rahmen auf jeden Fall eine gute Idee sein.

reedit: Eine Einführung finden Sie unter http://developer.apple.com / Dokumentation / MacOSX / Conceptual / BPFrameworks /

Du hast nicht sagen, ob es für das iPhone ist oder nicht. Auf dem iPhone, braucht es eine .sa (statisch gelinkte Bibliothek) zu sein - aber ich denke, die Normalverteilung würde durch ein .dylib oder .so

Sie es als Rahmenzusammenstellen könnten oder als statische Bibliothek (.so ich glaube).

Java-Programme im Rahmen einer virtuellen Maschine ausgeführt. Jar enthält abstrakte Bytecode, die in nativen Maschinencode durch die VM umgewandelt werden müssen.

Objective-C, wie C, in nativen Maschinencode kompiliert, wie eine Win Exe-Datei, direkt runnable durch das Betriebssystem.

Die meisten Programme von beliebiger Komplexität bestehen aus mehr als einer einzigen Datei und schließen DLLs, Icon-Dateien usw. Die Konfiguration Ihrer Dateien für die Verteilung würde in der Regel durch ein Setup-Programm behandelt werden.

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