• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

XCode im Allgemeinen

osfreak

Zuccalmaglios Renette
Registriert
19.12.04
Beiträge
262
Hallo,

sagt mal, wer findet eigentlich XCode wirklich gut?

Ich find das Programm erst mal recht unübersichtlich, völlig anders als andere Entwicklungsumgebungen, und vor lauter Menüs und Untermenüs findet man sich gar nicht richtig durch. Das ist so eine Art allernotwendigste Schale um gcc+Objective-C+Java so dass man sagen kann man hat ein Aqua-Programm und braucht kein Terminal. Die Compiler sind von Sun und der GPL dazugelinkt. Der einzige Pluspunkt ist dass weiter nichts da ist und dass es nichts kostet. Aber das ist weit davon entfernt, wirklich gut zu sein oder so intuitiv und Apple-like wie iLife. Da war ThinkC/Think-Pascal mit dem 68k-Prozessor vor 15 Jahren wohl doch schon ein Stück weiter?

Oder mögt ihr das Programm etwa alle?

Thomas
 

seb2

Gast
Alles eine Frage der Gewöhnung. Nachdem ich Xcode jetzt eine Weile nutze stehen mir jedes Mal die Haare zu Berge wenn ich Eclipse nutzen muß, da finde ich überhaupt nichts mehr; war früher mal andersrum.

Ein Wochenende lang habe ich mal mit Visual C arbeiten müssen -- kann also nicht behaupten, damit groß Erfahrung zu haben -- aber fand da beispielsweise die Navigation im Quellcode katastrophal.

Alles in allem bin ich mit Xcode zufrieden.
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
Die Kritik kann ich nicht verstehen, hätte seb2 nicht das mit eclipse gesagt, wäre es von mir gekommen. Für mich ist XCode fast ein Musterbeispiel an Übersichtlichkeit. Es würde zwar noch besser gehen, aber da hoffe ich auch XCode 3.0.

Im Arbeitsalltag darf ich mit eclipse arbeiten und es ist immer wieder schön, wenn ich dann in XCode rumwerkel. Kein nervender Editor, keine häßliche SWT-Oberfläche, keine Speicherverschwendung.

Die Java implementation von XCode ist zwar nicht soooo der bringer, aber selbst da ziehe ich oft XCode eclipse vor.
 

pepi

Cellini
Registriert
03.09.05
Beiträge
8.740
Bloß weil Xcode anders aussieht als andere IDEs ist er noch nicht schlecht. Der Mensch ist ein Gewohnheitstier und muß manchmal eben seinen inneren Schweinehund überwinden.

Ich persönlich finde Xcode recht aufgeräumt und angenehm. YMWV. Xcode 3.0 ist eine deutliche gute Weiterentwicklung davon. Sepziell mit Xray (Sun dtrace) kommen da wirklich sonnige Zeiten für Mac-Entwickler.

Andererseits, wenn Du Xcode nicht magst, niemand zwingt Dich dazu ihn zu verwenden. Es gibt eine Menge anderer Sachen. vi und gcc im Terminal is ja auch nicht schlecht, oder? :-D
Gruß Pepi
 

Senior Sanchez

Damasonrenette
Registriert
08.09.06
Beiträge
491
Eclipse ist doch eh schmarn ;)

Zugegeben, ich bin (noch) Windows Nutzer und mein Favorit war für die Java-Entwicklung früher der JBuilder. Jetzt darf ich auf Arbeit fleißig mit Eclipse arbeiten, was mir nicht wirklich gefällt. Viel zu langsam und ach ich weiß auch nicht, ist nicht so pralle.

Was ich bei eclipse aber loben muss ist die CVS/SVN Integration (zT über subclipse): Das ist richtig Sahne und bisher habe ich da auch noch nix gefunden, was da ran kommt.

Mein absoluter Liebling in Sachen Java-Entwicklung ist aber IntelliJ IDEA. Aus meiner Sicht die beste Java-IDE die es gibt, wenn nicht sogar eine der besten allgemein, was man auch daran merkt, dass die international sehr beliebt ist, hier aber mehr unbekannt.

In Sachen Performance, Usability und Komfort unschlagbar. Nur die SVN-Integration könnte besser sein, aber das kommt sicher noch ;)
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
Ich arbeite recht gern mit Xcode, vor allem seitdem ich mich mal tiefer mit der Struktur und Konfigurierbarkeit auseinander gesetzt habe. Schön ist da die Integration mit einem Versionskontrollsystem und endlich habe ich auch herausgefunden, wie man ihm Syntax-Highlighting für PHP (vollständig) beibringt und ähnliches. Aber ich freue mich auch auf Xcode 3.
 

Senior Sanchez

Damasonrenette
Registriert
08.09.06
Beiträge
491
Kann Xcode auch den Code analysieren und potenzielle Fehler, Codeverbesserungen oder Performanceoptimierungen entdecken?
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
JBuilder spielt aber nicht ganz in der Liga wie eclipse.

Es stimmt, dass IDEA der Hammer ist, allerdings ist auch der Preis Hammer.

Und was meinst Du mit "Code-Optimierung"? Ich hab strickt etwas dagegen wenn mir die IDE im Code rumpfuscht.
 

seb2

Gast
Und was meinst Du mit "Code-Optimierung"? Ich hab strickt etwas dagegen wenn mir die IDE im Code rumpfuscht.
Naja, dann müßtest Du in Xcode in den Build-Settings für die Release-Configuration auch aus "Os" "O0" machen und das will keiner.
Gewisse Code-Optimierungen sind schon sehr sinnvoll.
 

MacMark

Jakob Lebel
Registriert
01.01.05
Beiträge
4.874
Redeten wir nicht von Quellcode-Optimierung, seb2? Du meinst Optimierung von compiliertem Code.
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
Die -On-Schalter betreffen die Kompilierung. Wenn ich Senior Sanchez aber richtig verstanden hab, meint er den Obj-C-Code.
 

Senior Sanchez

Damasonrenette
Registriert
08.09.06
Beiträge
491
Dann schaut euch mal IDEA an ;)

Erstens, bei nen paar tausend Zeilen gibts immer etwas, was man besser machen kann ;)
Zweitens macht das IDEA nicht automatisch.
Es analysiert das ganze Projekt und listet dann sortiert potenzielle Verbesserungen auf:
Zum Beispiel hat es bei mir öfters festgestellt dass eine Schleife durch eine "foreach"-Schleife ersetzt werden kann oder das eine if-Abfrage eines Wertes auf 0 unnötig ist, weil er niemals 0 werden kann.

Gestern hatte ich auch fremden Code da. Habs mal checken lassen von IDEA und es hat sofort potenzielle Bugs gefunden, weil Strings dort aus Versehen nicht mit equals sondern mit dem Vergleichsoperator verglichen wurden.

IDEA achtet da auch auf Javadoc Comments und ob die @Override Annotation gesetzt ist, was für Fehlersuchen recht wichtig sein kann.

@MacMark: Schreibst du immer optimalen Java-Code? Da wäre ich mir nicht sicher!
Zum Beispiel hatte IDEA als Performanceverbesserung eine Zeile gefunden gehabt, wo jemand an einen StringBuilder etwas in der Art (blastring + " ") per append drangehangen hat. Daraufhin meinte es, dass die Konkatenation ineffizient sei, und man es lieber durch eine Concatenationchain a la append(blastring).append(" "); ersetzen soll.
 

MacMark

Jakob Lebel
Registriert
01.01.05
Beiträge
4.874
Solche Hilfestellungen sind für Noobs sicher hilfreich :p
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
Gestern hatte ich auch fremden Code da. Habs mal checken lassen von IDEA und es hat sofort potenzielle Bugs gefunden, weil Strings dort aus Versehen nicht mit equals sondern mit dem Vergleichsoperator verglichen wurden.

Wo ist das bitte "Codeoptimierung"???

Strings mit Vergleichsoperator zu vergleichen ist durchaus eine legale Sache... es kommt ganz darauf an, was Du mit dem Vergleich erreichen willst!
 

Senior Sanchez

Damasonrenette
Registriert
08.09.06
Beiträge
491
Solche Hilfestellungen sind für Noobs sicher hilfreich :p

Wenn du meinst ;)
Soll ich mir deinen Java-Code mal anschauen um dein noob-rating zu bestimmen? :D

Wo ist das bitte "Codeoptimierung"???

Strings mit Vergleichsoperator zu vergleichen ist durchaus eine legale Sache... es kommt ganz darauf an, was Du mit dem Vergleich erreichen willst!

Ich habe nirgendwo was mit Codeoptimierung geschrieben, sondern Verbesserungen. Und aus meiner Sicht sind das Codeverbesserung, zum Teil gibts ja auch Tipps was sich wirklich auf die Laufzeit auswirkt. Ich meine exzessive String-Konkatenation mit StringBuilder ist ja auch nur 40 mal schneller als per überladenem + Operator ;) Aber das kann man sicher vernachlässigen *g*

Natürlich kann man Strings mit Vergleichsoperator vergleichen, nur dieser Vergleich war in dieser Weise eben nonsens!
String tmp = "bla";
Weil if(tmp == "bla") {}

schlägt ansich immer fehl.
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
Ich habe nirgendwo was mit Codeoptimierung geschrieben, sondern Verbesserungen. Und aus meiner Sicht sind das Codeverbesserung, zum Teil gibts ja auch Tipps was sich wirklich auf die Laufzeit auswirkt. Ich meine exzessive String-Konkatenation mit StringBuilder ist ja auch nur 40 mal schneller als per überladenem + Operator ;) Aber das kann man sicher vernachlässigen *g*

Natürlich kann man Strings mit Vergleichsoperator vergleichen, nur dieser Vergleich war in dieser Weise eben nonsens!
String tmp = "bla";
Weil if(tmp == "bla") {}

schlägt ansich immer fehl.

Gerade das zusammenkloppern von Strings mit + sollte einem schon in der ersten Klasse ausgeredet werden!

Und das mit dem Stringvergleichsbeispiel .... also wer sowas macht.... errmmm... errmm... kein Kommentar! Oder siehe MacMarks Worte :-D
 

Senior Sanchez

Damasonrenette
Registriert
08.09.06
Beiträge
491
Gerade das zusammenkloppern von Strings mit + sollte einem schon in der ersten Klasse ausgeredet werden!

Und das mit dem Stringvergleichsbeispiel .... also wer sowas macht.... errmmm... errmm... kein Kommentar! Oder siehe MacMarks Worte :-D

Ja, eben, aber manche wissen es halt nicht oder übernehmen im Affekt (weil sie kurz zuvor mit ner anderen Sprache gearbeitet haben) diese Vergleichsvariante.


Das mit dem + stimmt auch, aber wie man sieht passiert es trotzdem ;)
Und ich muss ehrlich gestehen, dass ich das auch öfters mache, aber wenn ichs einmal mache ist das nicht so dramatisch als wenns inner Schleife 10.000 mal passiert *g*

Gibt aber noch andere Dinge die IDEA da erkennen kann.
 

Peter Maurer

Pommerscher Krummstiel
Registriert
16.03.04
Beiträge
3.077
Und das mit dem Stringvergleichsbeispiel .... also wer sowas macht.... errmmm... errmm... kein Kommentar! Oder siehe MacMarks Worte :-D
Naja, das ist halt eine Sprachkonvention in Java und ein paar anderen Sprachen. Unter AppleScript zum Beispiel fuehrt es zum Ziel:

Code:
set testString to "test"
if testString = "test" then
	get "bestanden"
else
	get "durchgefallen"
end if
Zum eigentlichen Thema: Ich komme mit XCode sehr gut zurecht. Danke der Nachfrage. :)