• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

interface builder und Eclipse?

  • Ersteller Ersteller Mitglied 7643
  • Erstellt am Erstellt am

Mitglied 7643

Gast
Ich finde den interface Builder einfach genial, aber komme mit Xcode nicht klar, da ich lieber Eclipse bevorzuge. Gibt es eine Möglichkeit den interface builder mit Eclipse zu kombinieren, d.h. die Endprogrammierung in Eclipse vorzunehmen?
 
Wollte noch anmerken, dass ich in java Programmieren möchte...
 
Klar geht das. Aber Du musst dann (höchstwahrscheinlich) Cocoa für Java nehmen, und dann kann man es auch direkt in Objective-C machen.

Alex
 
Kann leider kein Objective-C! Lohnt es sich ein Programm in Java mit Cocoa für Java unter OS X zu schreiben. Ich stehe jetzt vor der Wahl, entweder das "einfache" Swing aus der Java API zu benutzen oder Cocoa für Java. Was würdet ihr vorschlagen? Das Programm soll nur unter OS X laufen.
 
"Don't use Java to Write Cocoa Applications
[...]
If you are going to write Java applications, use Swing.
[...]
Some people say: "But no one knows Objective-C." Programmers learn new languages all the time. Objective-C takes an afternoon to learn. If you are writing a Cocoa application, learning Objective-C is the least of your worries. Learning the frameworks that make up Cocoa will take much, much longer"
Aaron Hillegass, Cocoa Programming for Mac OS X, 1. Auflage, Seite 341

Dem habe ich nichts hinzuzufügen.

Alex
 
Kann leider kein Objective-C!
Das kann man ändern, und das solltest Du auch tun. Below hat ja schon ein wichtiges Zitat angeführt. Aktuell hat sich die Sache noch mehr verschlechtert. Apple unterstützt zukünftig die Java Cocoa Bridge nicht mehr, d.h. erstmal keine neuen Funktionen und früher oder später fliegt's aus dem System.
 
Das ist eigentlich schade, da ich die Java-Cocoa Lösung elegant finde. Java ist eine mächtige Programmiersprache und ich kann es nicht verstehen, dass Mac OS X diese Brücke in Zukunft abschaffen möchte...
 
P.s.

Ich werde das Programm trotzdem in Java-Cocoa schreiben, da ich gerne in Xcode einsteigen möchte. Habe bis jetzt in Eclipse programmiert, seitdem ich aber den Interface Builder und andere Tools kenne, bin ich von Xcode überzeugt. Ich bin auch davon überzeugt, dass Xcode 3.0 der Knaller wird und ich früher oder später mit Objectiv-C anfangen werde...
 
Wie gesagt: "It takes an afternoon to learn Objective-C" und die wirklich grosse Stärke von Java ist die Platformunabhängigkeit.

Genau dass gibts Du aber mit Cocoa auf.

Alex
 
Um zu deiner ursprünglichen Frage zurückzukommen:
http://www.nib4j.com/
Dadurch bewahrst du dir anscheinend die Plattformunabhängigkeit.

Allerdings kostet das etwas (über 150 $), so dass man sich wirklich 2 mal überlegen sollte, ob man sich dafür nicht ein nettes Buch über Cocoa und Obj-C anschafft, um sich schnell einzuarbeiten. Falls dein Projekt auf längere Zeit noch funktionieren soll, wäre dies halt dringend zu empfehlen.
 
It takes an afternoon to learn Objective-C
Man kann an einem Nachmittag die Syntax einer OO Programmiersprache lernen, aber die Semantik erforder viel Praxis und Theorie - das geht nicht gerade in ein paar Stunden. Solange Apple die Cocoa-Java Brige anbietet, werde ich sie auch nutzen. Ich sehe nicht ein, dass ich jetzt eine neue Sprache lernen soll. Objective-C scheint mir zudem auch etwas komplizierter und undurchdringlicher zu sein....
 
P.s.

Noch was. Da Java auch in zukünftigen Generationen von OS X on-board sein wird, glaube ich nicht, dass Apple auf diese Brücker mit der Zeit verzichten wird. Java wird immer mächtiger und ich kann es mir nicht vorstellen, dass es irgendwann aus dem Rennen ist...
 
Ich sehe nicht ein, dass ich jetzt eine neue Sprache lernen soll. Objective-C scheint mir zudem auch etwas komplizierter und undurchdringlicher zu sein....

Java und Objective-C sind Impertative OO Sprachen: Kennse eine, kennse alle.

Und natürlich wird Java auch bei OS X bleiben, aber die Anwendung von Java ist eine andere!
Du kannst machen, was Du willst, aber sag nicht, wir hätten Dich nicht gewarnt! Die Cocoa-Java Bridge ist Deprecated, und das bedeutet, dass es sich irgendwann nicht mehr gibt.

Lern mal eine neue Sprache, das ist gut für Dich :D

Alex
 
Noch was. Da Java auch in zukünftigen Generationen von OS X on-board sein wird, glaube ich nicht, dass Apple auf diese Brücker mit der Zeit verzichten wird.
Naja, diese Vermutung stimmt so nicht: http://developer.apple.com/documentation/Cocoa/Conceptual/LanguageIntegration/index.html
Aber wie QuickDraw wird Apple dies wahrscheinlich noch im System behalten. Man muss dann aber jederzeit damit rechnen können, dass die sich darauf stützenden Programme nicht mehr gescheit funktionieren.
Du musst dich halt selbst fragen, wie wichtig dir deine Software ist. Willst du dein Programm beispielsweise verkaufen könnte es beim nächsten Systemupdate nicht mehr funktionieren, du bekommst Beschwerden deiner Benutzer und wirst dann umstellen müssen. Falls du dein Programm nur privat oder auf fest installierten Rechnern benutzen willst dürfte dir dies allerdings egal sein.
 
Java und Objective-C sind Impertative OO Sprachen: Kennse eine, kennse alle.

So ein Schwachsinn! Du kannst dich zwar schneller einarbeiten, aber das bedeutet nicht, dass du um eine intensive Einarbeitung herum kommst. Also, um das mal klarzustellen. Ich möchte ungern eine neue Programmiersprache lernen, wenn sich das vermeiden lässt. Ich würde gerne bei Java bleiben.
 
Die Sprache der Wahl sollte dem Problem, dass Du lösen möchtest angepasst sein, und nicht umgekehrt.

Und wenn das Problem "Erstellung von Mac OS X Anwendungen mit bestmöglicher Ausnutzung der von Apple zur Verfügung gestellten Frameworks" ist, dann ist Objective-C die einzig richtige Antwort.

Wie gesagt, ich mach Dir keine Vorschriften. Und klar, die tiefen einer Sprache gibt es nicht an einem Nachmittag. Aber die musst Du am Anfang gar nicht kennen.
Das hier soll nur ein freundlicher Tip von einem alten Sack sein.

Alex
 
Ich möchte ungern eine neue Programmiersprache lernen, wenn sich das vermeiden lässt.
Wenn Du für MacOS X Programme schreiben willst, wirst Du um Carbon oder Cocoa als FrameWorks nicht herumkommen. Cocoa ist für neue Projekte zu präferieren. Damit ist auch die Programmiersprache Objective-C festgelegt, man kann C und C++ Bestandteile in dieses Programm integrieren mit anderen Programmiersprachen geht das nicht.
 
Um zu deiner ursprünglichen Frage zurückzukommen:
http://www.nib4j.com/
Dadurch bewahrst du dir anscheinend die Plattformunabhängigkeit.

Allerdings kostet das etwas (über 150 $), so dass man sich wirklich 2 mal überlegen sollte, ob man sich dafür nicht ein nettes Buch über Cocoa und Obj-C anschafft, um sich schnell einzuarbeiten. Falls dein Projekt auf längere Zeit noch funktionieren soll, wäre dies halt dringend zu empfehlen.

Kann mir mal jemand nen Link zu einem Tutorial geben oder ne kleine Schritt-für-Schritt Anleitung zukommen lassen :-) (hab auf deren Seite nichts gefunden)
Ich nutze zur Zeit Xcode für meine (absolut kleinen) Java-Sachen, wenn ich jetzt noch den IB für Java nutzen könnte wär das echt spitze .

nib4j is completely free for non-commercial use -- das hört sich doch gut an ;-)
 
So ein Schwachsinn! Du kannst dich zwar schneller einarbeiten, aber das bedeutet nicht, dass du um eine intensive Einarbeitung herum kommst. Also, um das mal klarzustellen. Ich möchte ungern eine neue Programmiersprache lernen, wenn sich das vermeiden lässt. Ich würde gerne bei Java bleiben.

Ich bin seit ca. 5 Jahren Java-Programmierer und finde die Sprache für bestimmte Sachen sehr gut. Sobald es aber um GUI geht (vor Java6 zumindest) und das Programm nur etwas komplexer wird, würde ich sagen "Finger weg von Java!". Der einzige Grund für ein Java-GUI-Programm ist die Plattformunabhängigkeit..... oder ganz bestimmte Spezialfälle (JDBC wäre so einer)

Wenn Du also für OS X was entwickeln willst, dann nimm Cocoa/ObjC .. meine effektive Einlernphase hat max. 1 Woche gedauert (eher wesentlich weniger) es gibt nur drei "Anfangsschwierigkeiten" :

1. MemoryManagement (fällt mit ObjC 2.0 weg!)
2. Auf den ersten Blick merkwürdige Syntax ( zig []-Klammern.. fällt aber uach mit ObjC 2.0 weg)
3. Leicht andere Methodennamen-logik... teils besser, teils verwirrender... aber gewöhnt mensch sich schnell dran)

Davon das Java "mächtig" ist habe ich mich schon länger verabschiedet. Mir geht es sogar im Moment öfters so, dass es mir vor Java graust und ich immer wieder froh bin, wenn ich Cocoa/ObjC machen kann )