Xcode Einsteiger Frage

ostfriese

ostfriese

Aktives Mitglied
Thread Starter
Dabei seit
08.12.2003
Beiträge
1.851
Reaktionspunkte
44
Nachdem ich ich bereits einiges auf den Apple Dev Seiten gelesen habe, sind bei mir trotz der Unmengen an verfügbaren Infos einige Fragen offen geblieben.
Die Menge an Infos ist einfach überwältigend.
Meine Erfahrungen im Coden: Basic, Visual Basic und grundlegend (wenig) C sowie Pascal.

Wäre nett, wenn ihr mir weiterhelfen könntet:

Ist es möglich mit der Xcode Suite Cocoa Applikationen (ObjC) zu erstellen, welche auf Windows Systemen laufen? Wenn nein, gibt es einen Weg, meine Mac Apps auf Win zu portieren? (Oder ist das ne blöde Frage ...:confused:) Was ich bisher gefunden habe, bezog sich nur auf plattformübergreifendes Java.
 
Zuletzt bearbeitet:
Nein und nein.
Windows => exe
apple => app
 
Plattformübergreifend geht schwierig.

Aber es gibt bspweise Qt von TrollTech (google mal).. damit kannst Du GUIs erstellen und Code schreiben der normalerweise ohne großen Aufwand unter Mac/Win/Linux läuft.

Allerdings fehlen dann soweit ich weiss die Vorteile von Xcode (Interface Builder usw.)
 
Nein und nein.
Windows => exe
apple => app

Das ist mir schon klar.
Hätte ja sein können, dass man mit Xcode auch .exe erzeugen kann (und alles Notwendige in einem Installer hinzugefügt wird). Vermutlich habe ich da einfach eine falsche Vorstellung der Möglichkeiten.
Trotz meiner recht umfangreichen Visul Basic Erfahrung unter Win, musste ich mich noch nie damit auseinandersetzen.

Das bedeutet also, dass ich nur sinnvoll plattform-übergreifend entwickeln kann, wenn ich entweder Java verwende oder über Parallels und Win alles noch einmal entwickle...
Naja, dann gibts mein Prog halt nur für Macuser...da ich auf den Interface Builder von Xcode nicht verzichten kann und ich bisher noch keine Java Applikation gesehen habe, die nicht total träge rüberkommt.

Ok Danke.
 
Zuletzt bearbeitet:
Hätte ja sein können, dass man mit Xcode auch .exe erzeugen kann.

Natürlich geht das. Allerdings ist die Installation einer gcc Toolchain für Windows auf OS X etwas für Masochisten mit viel Zeit.

Alex
 
Danke für den Buchtipp, werde ich mir mal näher ansehen.
 
Ist es möglich mit der Xcode Suite Cocoa Applikationen (ObjC) zu erstellen, welche auf Windows Systemen laufen? Wenn nein, gibt es einen Weg, meine Mac Apps auf Win zu portieren? (Oder ist das ne blöde Frage ...:confused:) Was ich bisher gefunden habe, bezog sich nur auf plattformübergreifendes Java.
Cocoa Applikationen können nicht nach Windows portiert werden, falls Du allerdings einen Objective-C Kern hast, welcher Dein Modell und Daten verwalten kann, könntest Du diesen mit der GNU Collection unter Windows komplilieren und ausführen als EXE ... eine GUI für Windows-Plattformen könnte dann von Trolltech (Qt) kommen und kann ebenfalls mit der GNU Collection kompliliert werden. Wie sich die Mischung verhält kann ich Dir allerdings nicht sagen :kopfkratz: :hum:
 
Hallo,

das Thema "plattformübergreifende Entwicklung" wird tatsächlich stiefmütterlich behandelt.

Du brauchst zunächst einen Compiler, der für alle Zielplattformen zu bekommen ist. Das sollte für C bzw. C++ nicht das Problem sein. Du entwickelst das Programm dann z.B. auf dem Mac und übersetzt Dein Programm in ein für den Mac zu nutzendes Programm. Den Code kannst Du dann auch z.b. unter Windows einsetzen und in ein dort lauffähiges Programm übersetzen. Das Ergebnis dieser Übersetzungen (.exe bzw. app) ist dann an die jeweilige Plattform gebunden - die eigentliche Arbeit (= der Code) ist übergreifend nutzbar.

Da Du nicht bei Adam und Eva anfangen willst, brauchst Du Bibliotheken, die Du in Deine Programme einbinden kannst. Das ist für Standardbibliotheken (z.B. für mathematische Routinen) nicht das Problem - die gehören zumeist zum Lieferumfang des jeweiligen Compilers.

Der Kern des Problems liegt bei der grafischen Benutzeroberfläche und den vielen Hilfsroutinen (für das Datenmanagement, Audio- und Videowiedergabe, Datei- und Netzwerkzugriffe, ...). Sowohl Windows wie auch Mac OS X liefern für den Programmierer viele solcher Bibliotheken mit. Sie erleichtern das Programmieren - aber nur auf dem System, für das sie geschrieben wurden.

Eine Lösung sind die Qt-Bibliotheken, die hier ja schon mehrfach angesprochen wurden. Mit ihrer Hilfe lassen sich viele Probleme prinzipiell lösen. Ein gutes Beispiel, was machbar ist, bieten OpenOffice (ohne Eingriffe in den Code, jedoch unter X11) bzw. NeoOffice (die Benutzeroberfläche wurde in Java auf dem Mac entwickelt; der Kern stammt direkt aus dem OpenOffice-Projekt) und z.B. Gimp - die Bildbearbeitung aus der Linux-Welt.

Eine andere Lösung sind Programmierumgebungen, die von Hause aus für verschiedene Plattformen entwickelt wurden. Mir ist da z.B. RealBasic bekannt - habe aber keine praktischen Erfahrungen damit.

Eine weitere Lösung ist Java bzw. .NET. Java hat inzwischen ein Entwicklungsstadium erreicht, in dem tatsächlich unternehmenskritische Anwendungen plattformübergreifend entwickelt werden können. Auch hier steckt der Teufel im Detail - doch es funkt. Ich habe praktische Erfahrungen mit NetBeans 5.0 und Java 1.4.x in Zusammenarbeit mit MySQL auf Mac OS X und Windows. Das funktioniert grundsätzlich problemlos. Kleinere Ungereimtheiten tauchen bei der Gestaltung der grafischen Oberfläche auf - es sind bei mir jedoch nur optische Mängel, die Funktionalität ist ohne Einschränkung. .NET bzw. C# ist nach meinem Eindruck auf dem Mac (wie unter Linux und anders als unter Windows) noch in einem frühen Experimentierstadium. Praktische Erfahrungen in einem größeren Projekt habe ich jedoch nicht.

Hoffe, diese grundsätzlichen Hinweise helfen Dir ein wenig weiter.

Peter
 
  • Gefällt mir
Reaktionen: Gelzomino
Moin, danke für die ausführliche Beschreibung.
Hat mir durchaus geholfen Grundsätzliches zu verstehen.

Ich habe mich jetzt entschieden, das Projekt unter Xcode/Cocoa zu verwirklichen. Im Wesentlichen, da es bei OSX mitgeliefert wird, "nativ" läuft und der Support recht gut zu sein scheint. Mit irgendetwas muss ich ja auch anfangen, um ObjC zu lernen. Ich denke danach sollte es recht einfach sein sich auch mal nach rechts und links umzusehen, um auf anderen Plattformen zu entwickeln.

Danke nochmal an alle.
 
Es gibt auch eine Möglichkeit Cocoa-Programme zu Portieren und zwar kann man unter Windows OpenStep verwenden. Aber wie Problemlos/Problembehaftet das ist, kann ich dir nicht sagen, ich habs noch nie ausprobiert.

Gruss D
 
Mit CodeWarrior lassen sich Mac- und Windows-Programme entwickeln (also auch .EXEn erzeugen). Um die Portierung von einer Plattform auf die andere muß man sich natürlich selbst kümmern, also zweigleisig fahren.
 
Mit CodeWarrior lassen sich Mac- und Windows-Programme entwickeln (also auch .EXEn erzeugen). Um die Portierung von einer Plattform auf die andere muß man sich natürlich selbst kümmern, also zweigleisig fahren.

Lieber AltiVec,

hast Du da nicht ein winzig kleines Detail vergessen?

Sag dem TE doch gerade mal, wo er CodeWarrior bestellen kann ...

Alex
 
Hallo,

der Hauch einer Idee und viel Konfusion:

Wie leicht nachzulesen ist, ist OpenStep keineswegs eine Portierung von Mac-Cacoa, sondern beide haben dieselben Eltern. Mit GnuStep gibt es ein Framework für verschiedene Systeme, mit dessen Hilfe sich Programme für die verschiedenen Zielsysteme entwickeln lassen. Also quasi eine Alternative zu Qt.

@below hat ja auf den Hauptaspekt hingewiesen. In unserem Zusammenhang noch wichtig: mit CodeWarrior ließen sich die Mac-API und die Windows-API nutzen, jedoch nicht mixen. Denn das eine steht auf dem anderen System nicht zur Verfügung.

Peter
 
Lieber AltiVec,

hast Du da nicht ein winzig kleines Detail vergessen?

Sag dem TE doch gerade mal, wo er CodeWarrior bestellen kann ...

Alex

Alex, stimmt, da war irgendein Problem, hatte ich schon verdrängt... :D

Bei Freescale gibt es ja diese CW10 2-Wochen-Evaluierungsversion, zumindest war die vor einigen Monaten noch auf dem Server. Ich bekomme zwar beim Starten eine Meldung, man möge die Vollversion kaufen (was aus den bekannten Gründen gar nicht mehr möglich ist), aber der CW läuft trotzdem...
Das war nur so eine Beobachtung, keine Ahnung, ob es evtl. doch irgendwelche Einschränkungen gibt, weil ich eigentlich (für ein mit dem CodeWarrior begonnenes Projekt) CW9 benutze.
Zur Beruhigung: Xcode wird inzwischen auch verwendet ;)
 
Hallo,

wenn du schon Erfahrungen mit Basic hast, schau dir doch mal RealBasic an. Das kann in der Pro-Version Binaries für Mac, Windows und Linux bauen.

Gruß, Flo
 
Danke für den Tipp.
Werde ich mal machen.
Habe jetzt so lange in VB programmiert und da dachte ich mal
eine höhere Programmiersprache auszuprobieren.
Wenn ich allerdings mit RB mehrere Plattformen bedienen kann,
sollte es einen Blick wert sein.

Nachtrag:
Nochmal 400 öre auszugeben ist mir glaube ich zu viel...
 
Hi leute hoffe das thema is noch nich abgeschlossen hab nähmlich noch ne frage dazu.
Nähmlich wollte ich nochmal genau wissen wie ich jetz mein mit XCODE fertig programmiertes C++ skript in eine .exe umwandeln kann???
Und wo ich sowie so schon ne frage gestellt hab hab ich noch eine ziehmlich blöde und zwar: wie kann ich meine eigenes thema auf machen???
 
Zurück
Oben Unten