Anfänger

  • Hallo,

    ich würde gerne anfangen mit cocoa Programmieren zu lernen. Jetzt wollte ich euch fragen ob es irgendwo eine Seite gibt auf der ne komplette Beschreibung ist sowas zu lernen oder komme ich nicht drumherum mir ein Buch zu kaufen? Für Links wäre ich sehr dankbar. Und bitte Nur Seiten auf Deutsch da meine Englich Kentnisse nicht so die besten sind.

    Gruß pseuss
  • RE: Anfänger

    Original von pseuss
    Jetzt wollte ich euch fragen ob es irgendwo eine Seite gibt auf der ne komplette Beschreibung ist sowas zu lernen oder komme ich nicht drumherum mir ein Buch zu kaufen?


    Naja, ein Buch zu kaufen ist nicht so schlimm wie viele glauben - ich habe das auch schon mal gemacht...

    Nimm's mir nicht krumm, aber: Ja, es gibt eine Seite, auf der das alles steht - sogar mehrere. Eine davon ist diese - lies' einfach mal die zig anderen Threads, in denen jemand genau das gleiche gefragt hat. Das ist übrigens m.E. das erste, das man lernen sollte: Suchen. Sehr viele Fragen werden im Netz und in frei verfügbaren Dokumentationen beantwortet und ein Großteil davon sogar äußerst gut erklärt. Man muss nur etwas Geduld bei der Suche mitbringen und sich nicht scheuen, etwas zu lesen - manchmal auch mehrfach.
    Multigrad - 360°-Produktfotografie für den Mac
  • RE: Anfänger

    Original von pseuss
    Jetzt wollte ich euch fragen ob es irgendwo eine Seite gibt auf der ne komplette Beschreibung ist sowas zu lernen oder komme ich nicht drumherum mir ein Buch zu kaufen?


    Ich verstehe deine Frage grad nicht sooo ganz...
    Erwartest du, eine Internetseite zu lesen und dann alle deiner Ideen im Handumdrehen in Cocoa programmiert zu bekommen?

    Falls ja: Da hilft dir nicht einmal eine Bibliothek.

    Fragen zu spezifischen Problemen können dir beantwortet werden.
    Spezifische Probleme wie 'Ich möchte diesunddas mit meinem Array anstellen' meine ich damit.
    Kein 'Ich will mir ne Alternative zu Photoshop bauen, wer zeigt mir wie es geht?'
    «Applejack» "Don't you use your fancy mathematics to muddle the issue!"

    Iä-86! Iä-64! Awavauatsh fthagn!

    kmr schrieb:

    Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P
  • Eventuell mal diese Postings lesen:

    Posting 1
    Posting 2
    Posting 3

    Darin nach Squeak suchen, sieht auf den ersten Blick wie Kinderkram aus ist es aber
    nicht. Dort findest du einen Link unter dem du eine Deutsche Einführung findest, gut geeignet um die Grundlagen der Objekte zu verstehen. Und ist angeblich auch eine Apple-Technologie.

    Um Cocoa zu lernen empfiehlt es sich dann im Wiki an den Frameworks Beschreibungen von Cocoa Mitzuschreiben.

    cu
    Josef
  • Ich denke, dass es am Besten ist, wenn du zuerst eine Programmiersprache lernst (z.B. C) und dann mit Cocoa anfängst. Cocoa selber ist ja keine Programmiersprache, sondern ein Paket von Klassen und Funktionen. Man kann einen Button in einer Minute programmieren, da dafür schon viele vorgefertigte Sachen in Cocoa vorhanden sind.
    Wenn du aber noch nie mit einer Programmiersprache zu tun hattest, solltest du zuerst mit einfachen Sachen anfangen, also kleine Programme, bei denen man alles selber machen muss.
    Z.B. was bedeutet include, Text ein-/ ausgeben, was ist eine Funktion, Pointer kennenlernen, Arrays,...

    Tobi
  • Ich will ja nicht wieder eine Grundsatzdiskussion losbrechen, aber sein letztiches Ziel ist eine Cocoa-Appliaktion. Wozu muss er da wissen, wie die Text-Ein-/Ausgabe funktioniert, was ein Pointer ist und was ein Array (Ich nehme an, du meinst ein C-Array)?
    Es hat noch nie etwas gefunzt. To tear down the Wall would be a Werror!
    25.06.2016: [Swift] gehört zu meinen *Favorite Tags* auf SO. In welcher Bedeutung von "favorite"?
  • Oh, das würde ich auch nach wie vor behaupten.

    Allerdings halte C-Arrays auch nicht für die Grundlage von Objective-C, sondern eher OOP.

    Und ob ein Anfänger sich als erstes mit Pointern beschäftigen sollte, weil er dann im Debugger den Stack-Backtrace besser versteht (Wozu er eigentlich nicht einmal Pointer kennen muss), ich weiß nicht ... Also, wenn schon denn schon. Es gibt sicher grundlegende Artikel im Internet über Schaltalgebra, damit er Floating-Point-Arithmetik besser versteht.
    Es hat noch nie etwas gefunzt. To tear down the Wall would be a Werror!
    25.06.2016: [Swift] gehört zu meinen *Favorite Tags* auf SO. In welcher Bedeutung von "favorite"?
  • Ich denke, dass C als Grundlage sehr zu empfehlen ist. Man muss es aber auf keinen Fall bis in alle Einzelheiten kennen.
    Für den Anfang sind so kleine Programme wie z.B. Primzahlen berechnen sehr lehrreich. Wenn man sofort mit Cocoa anfängt, besteht die Gefahr, dass man nur das Buch oder Tutorial abtippt, ohne alles zu verstehen.
    Warum heißt es z.B.
    NSArray *tollesArray;
    und nicht
    NSArray tollesArray;
    Oder was ist der Unterschied zwischen if (x = 1) und if (x == 1)?
    Das sind halt C-Grundlagen.
  • Original von Josef
    Eventuell mal diese Postings lesen:

    Posting 1
    Posting 2
    Posting 3

    Darin nach Squeak suchen, sieht auf den ersten Blick wie Kinderkram aus ist es aber
    nicht. Dort findest du einen Link unter dem du eine Deutsche Einführung findest, gut geeignet um die Grundlagen der Objekte zu verstehen. Und ist angeblich auch eine Apple-Technologie.

    Um Cocoa zu lernen empfiehlt es sich dann im Wiki an den Frameworks Beschreibungen von Cocoa Mitzuschreiben.

    cu
    Josef


    ja von squeak habe ich schon was gehört und ich hatte es als ich meine windose noch hatte auch drauf nur ich habe null gechekt was man da machen kann und machen muss. Mich haben diese blöden Augen generft die da immer der Maus folegn und für mich was das einfach kinderkack. Naja ich werde mir es dann nochmal anschauen.

    Gruß pseuss
  • Es heißt so, weil NSArray* eine ID eines Objektes ist, nicht das Objekt selbst, so wie die Personalausweisnummer eine ID einer Person ist, nicht die Person selbst. So erkläre ich das auch im Buch. Dann kommt "kleingedruckt" ein Hinweis "Basiswissen", in dem ich erläutere, dass das technisch als Zeiger implementiert ist. Für die, die es wissen wollen. Man muss das aber nicht wissen. Deshallb heißt der Datentyp id auch id und nicht pointer.

    Dass du das als Pointer begreifst, liegt ledigllich daran, dass du von C kommst. Notwendig ist das nicht und schon gar nicht für einen Anfänger.

    Um den Unterschied zwischen einer Zuweisung und einem Vergleich zu lernen, muss ich kein C können. Das kann man auch in einem Objective-C-Buch erläutern. Und dein erstes Beisppiel sollte ein Anfänger erst gar nicht lernen.

    Wichtiger bei der Programmierung mit Objective-C scheint mit der Unterschied zwischen der Kopie einer ID und eines Objektes zu sein, also

    anObject = anotherObject;

    und

    anObject = [anotherObject copy];

    Das lernst du nun aber wieder nicht in einem C-Buch.

    Es ist doch einfach:
    Was du von C für Objective-C benötigst, steht auch in einenm Objective-C-Buch. Dazu musst du kein C-Buch anfassen.

    Was du von C nicht für Objective-C benötigst (gerade als Anfänger), steht nicht in einem Objective-C-Buch. Du musst dafür aber auch kein C-Buch anfassen, weil du es in Objective-C nicht benötigst.

    Dass ein erfahrener Programmierer sich dann mal C anschaut, um die RTE zu verstehen, ist richtig und gut. Es ist aber nichts für einen Anfänger.

    Und überhaupt? Was heißt hier, dass C die Grundlage ist? C ist eine Hochsprache. Die Grundlage ist B, äääh, BNPL, ääähhhh, Assembler. Soll man das auch alles lernen als Anfänger -- weil es die Grundlage ist?
    Es hat noch nie etwas gefunzt. To tear down the Wall would be a Werror!
    25.06.2016: [Swift] gehört zu meinen *Favorite Tags* auf SO. In welcher Bedeutung von "favorite"?