Original von Tom9811
Es geht nich tum den Sprachumfang. Es geht darum, wie du programmierst.
Wenn du in Objective-C auch nur annähernd so programmierst wie in C, machst du etwas vom Ansatz her falsch. Klar, das geht. Du kannst die Denke vollständig übernehmen. Es ist bloß nicht der Sinn der Sache OO.
Da gebe ich Dir recht - aber ich behaupte auch weder C++ noch ObjC zu können. Wenn ich die OO-Strukturen benutze (also Klassen etc.) dann meist nur als Wrapper für C-Code. Ich brauche aber auch nichts oberhalb von C, nur unterhalb - sprich Assembler. Dennoch bin ich über ObjC froh - dann brauch ich nicht mehr tiefer in C++ einsteigen. Wenn ich den Code von Kollegen anschaue, dann wird mir immer schwindelig.
Aber eigentlich ging es darum, wie er ein guter Programmierer werden kann. Außer "üben, üben und nochmals üben" war noch nichts hilfreiches dabei. Die Wahl der Programmiersprache überlassen wir mal ihm, aber da er Xcode nutzen will, hat er eh keine große Auswahl (Java, C-irgendwas und AppleSkript).
Was meines Erachtens gar nicht angesprochen wurde ist - man braucht eine Aufgabe. Damit meine ich nicht die Übungsaufgaben aus Büchern, sondern ein Projekt, dass er verwirklichen will. Das hat er ja - sehr gut. (Ich habe alle Programmiersprachen, die ich kenne, auch so gelernt - wenn ich die gebraucht habe, dann habe ich das eben gemacht).
Dann kommt der schwerste Teil: wie und womit verwirkliche ich das Projekt. Soll ich ehrlich sein - bei dem was er vor hat, liegt er mit Java nicht so verkehrt.
Ansonsten, bevor er viel Geld für Bücher ausgibt - was auf jeden Fall hilft ist eine ADC-Online Membership (kost nix) und die interne Dokumentation von Apple. Da sind auch Bücher über ObjC dabei, die gar nicht so schlecht sind. Dazu kommen dann noch die Samples und Code-Snippets, die Apple mit Xcode anbietet. Dazu kommen dann noch einige Maillinglisten, die bei Problemen helfen - so wie auch dieses Forum hier.
Nicht zu vernachlässigen - der englischen Sprache mächtig zu sein, ist sehr von Nutzen.
Noch wichtiger - Geduld, Zeit und einen eisernen Willen. Keine Ahnung wie viele Programme ich bisher NICHT geschrieben habe, weil ich nicht genug Antrieb dafür hatte.
Am Rande bemerkt: Tom9811, oC ist doch die Abkürzung für obfuscated C, oder?