Amin Negm-Awad
Süsser Pfaffenapfel
- Registriert
- 01.03.07
- Beiträge
- 665
Und du auch, Brutus?...![]()
Für die verkaufte Seele bekam ich dafür aber ne Nummer mit Gretchen
Und du auch, Brutus?...![]()
Weil ein Objective-C-String erzeugt wird. Ohne wird ein C-String erzeugt. So wie stehst ein @ vor Objective-C-Eigenheiten steht. Scheint eine einfache Regel zu sein.
*räusper* Irgendwelche Tippfehler erst zur Laufzeit zu bemerken, hält deutlich länger auf – es sei denn man programmiert nach dem "ich probiere es einfach einmal"-Prinzip. Also nach gar keinem Prinzip.
Du meist leichter, als mit dem Cursor auf das Wort gehen und in den bereits auf dem Bildschirm befindlichen Assistenten zu scheuen? Das kann ich mir eigentlich nicht vorstellen. Ist aber auch egal, was das keine Spracheigenschaft ist, sondern eine der IDE.
Ja, die kenne ich von php.org. Die sind sehr wertvoll. Sieht dann so aus:
Nein, ein konzeptionelles, syntaktisches und gedankliches Chaos. Leute mit klarem Verstand müssen das hassen.
Du findest in Xcode überhaupt keine Hilfe zu Schlüsselwörtern. Die paar Stück hat man auch im Kopf.
Du findest in Xcode indessen Hilfe zum Framework. Denn das ist riesig.
Das eine ist ein schnöder String. Das andere ist ein Objekt der Klasse NSString.Und das ist jetzt besonders schlüssig? Warum zwei Sorten Strings? Wenn Obj-C die C-Strings nicht will, hätte man sie auch gleich ersetzen können. Ich verstehe nicht, was die Vermischung soll.
Die Dokumentation ist doch ein Traum. Noch umfassender geht es kaum. Sogar jede Menge Beispielcode und Videotutorials gibt es im Dev Center.Meiner Ansicht nach gehört zu einer Sprache auch eine gute Dokumentation und Referenz. Ob jetzt in der IDE oder nicht. Bei Apple selber wird man ja auch nicht fündig.
Ist doch doppelt gemoppelt, wenn vorher detailliert erklärt wird, wie man etwas macht.Nun, selbst das sinnlose Beispiel zeigt, wie man es einsetzt.
Irgendwie überflüssig, oder?add(int a, int b) - Addiert a und b.
Beispielt: ergebnis=add(1,2)
Das eine ist ein schnöder String. Das andere ist ein Objekt der Klasse NSString.
Siehe: http://developer.apple.com/mac/libr...ntroStrings.html#//apple_ref/doc/uid/10000035
NSString *beginning = @"beginning";
NSString *alphaAndOmega = [beginning stringByAppendingString:@" and end"];
beginning = "beginning"
alphaAndOmega = beginning + " and end"
Die Dokumentation ist doch ein Traum. Noch umfassender geht es kaum. Sogar jede Menge Beispielcode und Videotutorials gibt es im Dev Center.
Ist doch doppelt gemoppelt, wenn vorher detailliert erklärt wird, wie man etwas macht.
Irgendwie überflüssig, oder?
Objective-C importiert einfach vollständig C. Ohne Ausnahmen, ohne Spezialfälle, ohne Bedingungen. Das ist besonders klar und einfach.Und das ist jetzt besonders schlüssig? Warum zwei Sorten Strings? Wenn Obj-C die C-Strings nicht will, hätte man sie auch gleich ersetzen können. Ich verstehe nicht, was die Vermischung soll.
Ein paar Zeilen funktionieren nicht korrekt oder nicht. Ich weiß ja nicht, was du programmieren willst. Aber deine Skripte scheinen so etwas zu machen wie zwei Dateien zu kopieren. Mit programmieren hat das nichts zu tun.Mist, ertappt.Natürlich will ich sofort überprüfen, ob etwas korrekt funktioniert und nicht erst stundenlang alles Mögliche tippen und dann hinterher den Fehler in einer großen Menge von Möglichkeiten suchen.
Meines Wissens existiert nur einer.Welchen Assistenten meinst du?
Du bist echt geil.Bei Quick Help steht nur Symbol not found.
Stellt sich nur die Frage, was du eine vernünftige Dokumentation nennst.Zudem nervt der, weil der Xcode ausbremst. Meiner Ansicht nach gehört zu einer Sprache auch eine gute Dokumentation und Referenz. Ob jetzt in der IDE oder nicht. Bei Apple selber wird man ja auch nicht fündig.
Ja, einen x-beliebigen Wert in die Parameterliste setzen. Geil, das hilft dir also. Wobei gleich noch? Zu erfahren, dass man Parameter in die Parameterliste setzen kann? Na ja, wenn man nur hin und wieder programmiert, vergisst man das ja leicht, nicht wahr?Nun, selbst das sinnlose Beispiel zeigt, wie man es einsetzt.
Mir ist eigentlich ziemlich egal, woran das völlig vercrappte Chaos liegt. Es ändert ja nichts daran, dass es völlig vercrapptes Chaos ist. Du klingst wie ein Windowsler, der erklärt, warum Windows so mies ist. Interessiert mich nur nicht.Was bringt es Dinge zu Hassen, denen man nicht ausweichen kann? Leider ist es ja so, das PHP bei vielen Hostern am performantesten an Apache angebunden ist. Der Rest wird ja meist nur per CGI angebunden.
Ja, das ist so wie die Parameter in der Parameterliste. Das kann man leicht vergessen.Klar, wenn man da täglich mit arbeitet.
Natürlich fragen sich Leute, die keine Ahnung vom Programmieren haben, was das bedeutet. Und?Ja, das habe ich gemerkt. Ein paar zusätzliche Seiten zu den paar Stück Schlüsselwörtern und kryptischen Zeichen hätten aber sicher nicht geschadet. Bei Google wird ja schnell klar, dass nicht wenige sich beim ersten Kontakt damit fragen, was das bedeutet.
Was soll daran nicht gehen? Es wird die Funktion Return mit dem Parameter @"String" aufgerufen. steht da doch. Wo liegt das Problem?Vermutlich muss man echt dafür geboren sein, endlos Zeit besitzen oder darf keinen Kontakt zu Skriptsprachen gehabt haben. Ich könnte mich wohl nie daran gewöhnen, dass ein Return(@"String") nicht gehen soll.
Amin, hattest du gerade zu scharfes Chili? Das ist doch ein Niveau was ich von dir nicht erwartet hätte.
Objective-C importiert einfach vollständig C. Ohne Ausnahmen, ohne Spezialfälle, ohne Bedingungen. Das ist besonders klar und einfach.
Aber du scheinst auf Klarheit ja keinen Wert zu legen.
Ein paar Zeilen funktionieren nicht korrekt oder nicht. Ich weiß ja nicht, was du programmieren willst. Aber deine Skripte scheinen so etwas zu machen wie zwei Dateien zu kopieren. Mit programmieren hat das nichts zu tun.
Eine vernünftige Dokumentation führt bei verschiedenen Herangehensweisen zum Ziel. So sollte bei der Suche nach einem Schlüsselwort auch fündig werden.Stellt sich nur die Frage, was du eine vernünftige Dokumentation nennst.
Da Beispiel war natürlich sehr simpel. Ich weiß, dass man bei ObjC in der glücklichen Situation ist, dass man sich z. B. keine Parameterreihenfolge mehr merken muss. Aber wenn ich z. B. bei Javascript wissen möchte wo offsetWidth abgefragt werden kann, sind auch simple Beispiele hilfreich.Ja, einen x-beliebigen Wert in die Parameterliste setzen. Geil, das hilft dir also. Wobei gleich noch? Zu erfahren, dass man Parameter in die Parameterliste setzen kann? Na ja, wenn man nur hin und wieder programmiert, vergisst man das ja leicht, nicht wahr?
Meine Erwartung resultiert schlicht aus Erfahrung mit anderen Sprachen, bei den meisten kann ich jedes Schlüsselwort direkt nachschlagen.Erwartest du eigentlich auch einen Schreibmaschinenkurs. Das ist deutlich nützlicher.
Niemand zwingt dich. Aber nur weil dir Linksverkehr besser gefällt, musst dich trotzdem mit Rechtsverkehr arrangieren. Ich habe ja auch nicht gesagt, dass die Nötigung PHP verwenden zu müssen dessen Chaos relativiert, sondern nur, dass die Erkenntnis des Chaos in der Praxis nicht weiterhilft.Mir ist eigentlich ziemlich egal, woran das völlig vercrappte Chaos liegt. Es ändert ja nichts daran, dass es völlig vercrapptes Chaos ist. Du klingst wie ein Windowsler, der erklärt, warum Windows so mies ist. Interessiert mich nur nicht.
Sie würden vermutlich nicht fragen, wenn es direkt in der Doku stehen würde.Natürlich fragen sich Leute, die keine Ahnung vom Programmieren haben, was das bedeutet. Und?
Was heißt soll, es wird doch in der Mac-Hilfe erläutert.Es gibt auch Leute, die sich fragen, was eine Menüleiste ist. Soll das auch erläutert werden? Wenn du einen Computerführerschein benötigst, musst du nen VHS-Kurs besuchen.
Was soll daran nicht gehen? Es wird die Funktion Return mit dem Parameter @"String" aufgerufen. steht da doch. Wo liegt das Problem?
Das ist doch ein Troll, der uns hier veralbern will.
Mir erschließt sich die Klarheit momentan noch nicht. Warum wird ObjC auf normales C aufgepfropft und zweigleisig gefahren, statt einfach ein einheitliche Sprache zu verwenden?
Du kannst C Programme einfach in Objective C Programme konvetrieren.Mir erschließt sich die Klarheit momentan noch nicht. Warum wird ObjC auf normales C aufgepfropft und zweigleisig gefahren, statt einfach ein einheitliche Sprache zu verwenden?
... Bzw wird ObjektiveC im Build Prozess in ein C Programm gewandelt
Es gibt eine ObjC Runtime:Achso, ich verstehe. Also ist ObjC auch quasi nur ein Framework was schlicht die Arbeit mit C erleichtert? Also quasi eine Funktionssammlung? Ich dachte immer, es soll eine eigene Sprache sein, also quasi eine Neuentwicklung auf Basis von C?
[object addObject:foo];
objc_msgSend(object,6, foo)
Achso, ich verstehe. Also ist ObjC auch quasi nur ein Framework was schlicht die Arbeit mit C erleichtert? Also quasi eine Funktionssammlung? Ich dachte immer, es soll eine eigene Sprache sein, also quasi eine Neuentwicklung auf Basis von C?
Es gibt eine ObjC Runtime:
http://developer.apple.com/mac/libr...rence/ObjCRuntimeRef/Reference/reference.html
Das sind alles C typische Funktionen.
Da wird zum Beispiel aus:
Code:[object addObject:foo];
Wobei 6 der Selektor für die Methode addObject: in diesem Beispiel ist.Code:objc_msgSend(object,6, foo)
Objective-C ist schon eine Sprache, da sie offensichtlich ihre eigene Syntax hat und einen Objective-C-Compiler braucht. Wenn auch keine komplett neue Sprache, sondern eben eine Erweiterung von C, so dass ein Objective-C-Programm teilweise „herkömmlichen“ C-Code und teils speziellen Objective-C-Code enthält.
Stell Dir einfach vor, dass der Objective-C-Compiler die Objective-C-Anteile eines Programms nach C übersetzt, bevor dann der C-Compiler daraus ein Binary erzeugt.
(So dürfte das doch, ggf. etwas vereinfacht, stimmen. Wenn nicht, werden mich die Experten sicher berichtigen)
Wir verwenden essentielle Cookies, damit diese Website funktioniert, und optionale Cookies, um den Komfort bei der Nutzung zu verbessern.
Für die Ihnen angezeigten Verarbeitungszwecke können Cookies, Geräte-Kennungen oder andere Informationen auf Ihrem Gerät gespeichert oder abgerufen werden.
Anzeigen und Inhalte können basierend auf einem Profil personalisiert werden. Es können mehr Daten hinzugefügt werden, um Anzeigen und Inhalte besser zu personalisieren. Die Performance von Anzeigen und Inhalten kann gemessen werden. Erkenntnisse über Zielgruppen, die die Anzeigen und Inhalte betrachtet haben, können abgeleitet werden. Daten können verwendet werden, um Benutzerfreundlichkeit, Systeme und Software aufzubauen oder zu verbessern.
Durch das Klicken des Buttons "Zustimmen" willigen Sie gem. Art. 49 Abs. 1 DSGVO ein, dass auch Anbieter in den USA Ihre Daten verarbeiten. In diesem Fall ist es möglich, dass die übermittelten Daten durch lokale Behörden verarbeitet werden.