1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Das Prinzip von OOP für "Dummies"?

Dieses Thema im Forum "iOS-Developer" wurde erstellt von skueper, 12.02.10.

  1. skueper

    skueper Niederhelfenschwiler Beeriapfel

    Dabei seit:
    17.10.06
    Beiträge:
    847
    Hiho!

    Ich hab mal eine, vielleicht etwas blöde, Frage:

    Gib es einen guten Einstieg, der einem das Prinzip des OOP (Objekt Orientierten Programmierens) nahebringt?

    Warum ich das Frage? Ganz einfach: ich habe das Prinzip bis heute einfach nicht gerafft... obwohl ich mir schon das eine oder andere zu dem Thema durchgelesen habe. Irgendwann kommt immer der Punkt, an dem ich es einfach nicht mehr gedanklich nachvollziehen kann und ich mir denke "Hä? Was soll das denn bitte bringen?"

    Kurz mein Werdegang zum Thema Programmieren:
    Angefangen habe ich (wie wohl viele aus meiner Altersklasse) mit Basic auf dem C64. In Assembler hab ich damals auch reingeschnuppert, das war mir aber ehrlich gesagt etwas zu kryptisch.
    Richtig angefangen zu programmieren hab ich dann auf dem Amiga mit KickPascal und später auf dem PC (MS-DOS), mit Turbo Pascal 5.5 (und folgende). Ich war glücklich mit meinen Funktionen, Prozeduren, Includes und Units... damit habe ich eigentlich immer alles erschlagen können. Unter anderem hab ich ein Programm für Etikettendruck geschrieben und auch erfolgreich verkauft (war im Endeffekt eine Auftragsproduktion für eine Firma) und während des Abiturs im Informatik-Kurs eine Art Runtime für RPGs geschrieben. Bis dahin bin ich immer prima ohne OOP ausgekommen.
    Vielleicht kommt meine Abneigung gegen OOP daher, das zu DOS-Zeiten die OOP unter Turbo Pascal gelinde gesagt arschlangsam war. Ich erinner mich an einen Wettstreit mit einem Kumpel, einen Norton-Commander-Clone zu schreiben. Er hat OOP und die enstpr. Bibliotheken (Visual Pascal?) genutzt, ich hab es ohne OOP und mit eigenen Bibliotheken realisiert. Das Ergebnis war: sein Programm sah etwas schicker aus, meines war deutlich schneller und kleiner.
    Mit Windows 3.11 hab ich mich dann aus der Programmierung mehr oder weniger verabschiedet... ich hatte einfach keinen Bock, mehr "drum rum" zu programmieren als in das eigentliche Programm zu stecken.

    Inzwischen steht ja das iPad vor der Tür und ich würde gerne wieder anfangen, zu Programmieren und mich auf dem iPad "austoben". Das "Problem": Objective-C. Wie der Name schon sagt: OOP ohne Ende...

    Hat jemand einen guten Tip, wie jemand wie ich der so vernagelt auf "Nicht-OOP" ist, den Dreh zu OOP und Objective-C kriegen kann? Gibt es evtl. ein empfehlenswertes, möglichst deutsches, Buch zu dem Thema Objective-C, am liebsten mit speziellem Bezug auf iPhone-Programmierung?

    Schade, daß Apple keine Interpreter-Apps auf dem iPhone/iPad zulässt... ich glaube ein BASIC dürfte auf der Plattform durchaus ein Erfolg werden.
     
  2. helmi2k

    helmi2k Bismarckapfel

    Dabei seit:
    25.12.08
    Beiträge:
    142
  3. Pii

    Pii Rheinischer Krummstiel

    Dabei seit:
    25.06.07
    Beiträge:
    383
    Basic und Pascal hilft hier nicht weiter. Ich glaube Du solltest Dir erst mal dieses Buch anschauen: Objective-C 2.0. Es geht nicht primär um die Entwicklung für das iPhone, sondern behandelt erstmal Objective-C und OOP von der Pike auf. Ich denke damit legst Du ein gutes Fundament.
     
    #3 Pii, 12.02.10
    Zuletzt bearbeitet: 12.02.10
  4. AquariusBln

    AquariusBln Golden Delicious

    Dabei seit:
    15.02.10
    Beiträge:
    7
    Was willst Du Begreifen? Das Konzept bzw. Prinzip der Objektorientierten Softwareentwicklung oder das einer bestimmten Programmiersprache?

    Denn generell hat objektorientierte Programmierung nichts mit einer bestimmten Programmiersprache zu tun. Wenn Du erst einmal das objektorientierte "Denken" verinnerlicht hast, kannst Du selbst mit "C" hervorragend objektorientiert programmieren. Zugegeben, fordert das dem Programmierer eine Menge Disziplin ab. Aber, aus diesem Grund, gibt es ja Programmiersprachen wie Smalltalk, C++, ObjectiveC oder Java.

    Ich habe viele, viele Jahre prozedural programmiert und mich auch ständig gefragt: OOP was soll das? Wo ist der Unterschied? Beim Lesen des Buches:

    Objektorientierte C++ Anwendungen:
    Die Booch Methode
    von Robert C. Martin

    Prentice Hall Verlag
    ISBN 3-8272-9520-3

    Ist dann schließlich der Knoten geplatzt. Er führt dort einige Beispiele, aus der realen Welt auf und transportiert diese in die Welt der objektorientierten Programmierung. Plötzlich wird einem dann der Unterschied klar. Heute, fast 15 Jahre später, kann ich mir gar nicht mehr vorstellen, wie ich jemals nicht objektorientiert Programmiert habe. Ach Ja, anhand der 15 Jahre, kannst Du erkennen, dass das Buch schon etwas älter ist. Und Noch was: Ignoriere einfach das C++ in dem Titel, ist halt auch nur eine OO-Sprache. Wichtiger als der Beispiel-Code in dem Buch sind die Konzepte und die Modelle, die dort erläutert werden.
     
  5. Irgendein Held

    Irgendein Held Oberösterreichischer Brünerling

    Dabei seit:
    17.06.07
    Beiträge:
    714
    Das mit dem Beispielcode mag solange funktionieren, bis man zur Mehrfachvererbung kommt, o.Ä. - zumal die Beispiele wenig zum Obj-C lernen beitragen.

    Ich wuerde dir Empfehlen nach einem guten Einstiegsbuch fuer Obj-C ausschau zu halten, da findet sich sicherlich etwas - es geht viel weniger darum ob sich das Buch jetzt an Programmiereinsteiger oder an alte Hasen orientiert sondern ob du es fuer angemessen betrachtest.

    Zum einen kann ich Java ist auch eine Insel (Kapitel 3 Klassen und Objekte) empfehlen, evtl ist aber Objektorientierte Programmierung sinnvoller. Die beiden Buecher sind openbooks vom Galileo-Verlag. D.h. du kannst sie dir kaufen, oder online lesen(html), oder die HTML-Variante runterladen.

    Viel Spaß und Erfolg! :)
     
  6. skueper

    skueper Niederhelfenschwiler Beeriapfel

    Dabei seit:
    17.10.06
    Beiträge:
    847
    Erstmal danke für die Antworten... hatte vergessen, "mein" Thema auch zu abonnieren und daher ist es mir etwas aus dem Blick geraten :oops:

    Ich muß erst mal das Prinzip der objektorientierten Softwareentwicklung verstehen. Wenn ich das erstmal verinnerlicht habe, ist das Erlernen einer Programmiersprache IMO das kleinere Problem. Wie gesagt - OOP ist bis heute für mich ein Buch mit sieben Siegeln, ich kann "die Denke" einfach nicht nachvollziehen. Irgendwie ist mir das einfach zu abstrakt... aber ich werde mal ein Blick in das eine oder andere hier empfohlene Buch werfen.

    Vielleicht schaff ich es endlich mal den Knoten im Kopf zu lösen. Nur hab ich das dumme Gefühl, daß das Programmieren nie mehr so schlicht und "einfach" wird wie zu den seligen Pascal-Zeiten ;)
     
  7. nelfisch

    nelfisch Carola

    Dabei seit:
    15.03.08
    Beiträge:
    108
    Ja, also ich kann dir auch nur wärmstens das Buch von Amin Negm-Awad empfehlen, heißt glaube ich "Objective-C und Cocoa" oder so ähnlich, kann leider grade nicht nachgucken. Beachte aber auf jeden Fall, dass das meist verwendete Cocoa-Framework nicht dem Cocoa-Touch Framework entspricht, dass man für die iPhone/iPod-Touch verwendet. Die Grundfunktionen und das Prinzip an sich ist zwar gleich, aber vor allem was die Klassen und Methoden angeht, bestehen da doch einige Unterschiede.
    Wenn es dir nur um das reine Prinzip der Objektorientierten Programmierung geht, dann kann ich dir zum einen den entsprechenden Wikipedia-Artikel dazu empfehlen und (meinen) Artikel, ich finde der ist mir ganz gut gelungen...das gilt generell für OOP das hier gilt besondere im Bezug auf Objective-C, ist aber nur seehr grob angerissen....:)
    So far
     

Diese Seite empfehlen