Seite 1 von 1

Buch für tieferes OOP Verständnis?

Verfasst: Mi Sep 07, 2016 6:13 pm
von Zenerid
Ich hoffe mal, dass ich hier im richtigen Bereich bin aber da es ja nicht nur um eine Programmiersprache geht und das vielleicht auch nicht ganz in den Offtopic Bereich passt und hier kein eigener Buch-Bereich vorhanden ist, habe ich mich für diesen hier entschieden. Wenn es nicht passt, dann bitte verschieben. :oops:

Irgendwie komme ich leider noch nicht so ganz mit der OOP Programmierung klar und mir ist auch noch nicht so ganz klar, wann man bspw. in Java ein Interface nehnen sollte oder eine Klasse und all solche Kleinigkeiten aber es geht vom Prinzip her eigentlich ja nicht nur um Java, sondern auch um C# oder C++. Deswegen suche ich jetzt ein Buch. welches die OOP auch ein wenig tiefer anschneidet und ich woltle hier einfach mal fragen, ob jemand vielleicht eine Empfehlung hat?

Ich habe auch mal kurz nach Büchern gesucht und dabei das gefunden:
https://www.amazon.de/Objektorientierte ... rammierung

Ich habe auch immer wieder öfter von MVC gehört, allerdings noch nie selbst nach dem Muster gearbeitet aber soweit ich weiß, wird das Muster auch sehr häufig verwendet? Daher wäre es ja warscheinlich auch nicht schlecht sich das mal anzuschauen und das ist auch sogar Teil des Buches, laut Inhaltsverzeichnis.

Soweit ich weiß gehören Entwurfsmuster ja auch zur OOP oder liege ich da falsch? Solche Muster würde mich ja auch sehr interessieren aber diese Muster scheinen ja nicht Teil des Buches zu sein, also hat da vielleicht auch noch jemand eine Empfehlung? Ich habe auch spontan das hier gefunden:
https://www.amazon.de/Entwurfsmuster-um ... rammierung

Würdet ihr mir die beiden Bücher wohl empfehlen oder habt ihr vielleicht eine Empfehlung für ein anderes Buch, welches vielleicht besser geeignet wäre? Da wäre mir natürlich auch Recht, falls ihr das besonders empfehlen könnt.

Re: Buch für tieferes OOP Verständnis?

Verfasst: Mi Sep 07, 2016 10:30 pm
von Xin
Zenerid hat geschrieben:Irgendwie komme ich leider noch nicht so ganz mit der OOP Programmierung klar und mir ist auch noch nicht so ganz klar, wann man bspw. in Java ein Interface nehnen sollte oder eine Klasse
Hmm.. ich denke, OOP wird grundsätzlich falsch vermittelt, denn eigentlich ist OOP ein relativ primitives und einfaches Konzept. Es wird allerdings mit Buzzwords überfrachtet und immer weiter aufgebläht. Um OOP vollständig zu beschreiben würden 10 Seiten in einem Buch vollständig ausreichen, Du verlinkst auf ein Buch von 668 Seiten, was sich als umfassend beschreibt. Ohne in das Buch geguckt zu haben - ich vermute, dass 650 Seiten davon Blabla ist, die entweder überflüssig sind oder nichts mit OOP zu tun haben - zum Beispiel weil ausführlich die Grundlagen erklären, die man braucht, bevor man mit OOP anfängt.

Wenn wir da also mal die Luft rauslassen, darf ich Dich kurz einladen aus dem C++-Tutorial die Kapitel
  • Klassenbasiertes Programmieren
  • Vererbung
  • Überladen
  • Objektorientierte Programmierung
zu lesen. Da bist Du in zwei Stunden durch und dann gucken wir mal, ob Du überhaupt noch 50 Euro ausgeben willst.
Zenerid hat geschrieben:und all solche Kleinigkeiten aber es geht vom Prinzip her eigentlich ja nicht nur um Java, sondern auch um C# oder C++. Deswegen suche ich jetzt ein Buch. welches die OOP auch ein wenig tiefer anschneidet und ich woltle hier einfach mal fragen, ob jemand vielleicht eine Empfehlung hat?
Ich habe keine Empfehlung, da OOP zum Paradigma (grundlegender Aufbau einer Programmiersprache) aufgeblasen wird, aber eigentlich nur ein Design Pattern (eine Standard-Lösung für ein Standardproblem) darstellt, ähnlich wie eine Liste eine Standardlösung ist, um Daten zu verketten.
Zenerid hat geschrieben:Ich habe auch immer wieder öfter von MVC gehört, allerdings noch nie selbst nach dem Muster gearbeitet aber soweit ich weiß, wird das Muster auch sehr häufig verwendet? Daher wäre es ja warscheinlich auch nicht schlecht sich das mal anzuschauen und das ist auch sogar Teil des Buches, laut Inhaltsverzeichnis.
MVC ist ebenfalls ein Design-Pattern.
Wenn Du Dich für Design-Patterns interessiert, empfehle ich deutlich "Entwurfsmuster". Das Buch hat etwa 350 Seiten und da sind 20 oder 25 Pattern drin. OOP nicht, zu trivial. (meine Ausgabe ist schon älter, offenbar ist das inzwischen auch dicker)

https://www.amazon.de/Design-Patterns-E ... 241&sr=1-4
Zenerid hat geschrieben:Soweit ich weiß gehören Entwurfsmuster ja auch zur OOP oder liege ich da falsch?
Ich sage Dir jetzt, dass OOP eins von vielen Entwurfsmuster ist. Das wirst Du in der Regel anders lernen. Entwurfsmuster kann kombinieren.
Nicht jedes Entwurfsmuster setzt OOP voraus.

Ein Buch alleine für OOP halte ich gerade zum Lernen für Zeitverschwendung. Ein Buch über Entwurfsmuster halte ich für eine sehr gute Idee. Das von Dir vorgeschlagene Buch zu Design-Patterns kenne ich noch nicht, das von mir vorgeschlagene Buch ist ein Standardwerk und auch gut geschrieben. Um einen ersten Überblick zu bekommen

Re: Buch für tieferes OOP Verständnis?

Verfasst: Sa Aug 11, 2018 5:46 pm
von koshamo
Auch wenn das Posting doch schon etwas älter ist...
ich kann "Der Weg zum Java Profi" von Michael Inden empfehlen.

Das Buch beinhaltet 3 Teile:
1) Java Basics vertieft: u.a. mit Insights zum Thema OOP, also Klassen, Vererbung, Interfaces, uvm. aber auch Geschichten wie die verschiedenen Varianzen, Generics usw. recht kompakter und z.T. komprimierter Überblick. Aber eigentlich alles, was man braucht, um nach einem "Anfängerbuch" richtig einzusteigen. (Ich programmiere schon einige Jahre in Java und habe dort auch noch neues gefunden!)
2) eine Rundreise durch die Java Standard-Bibliothek. Den Teil fand ich persönlich sehr langweilig und langwierig, wer aber noch nicht viel mit Java gemacht hat, findet hier sicherlich einige nützliche Informationen
3) Code-Qualität: u.a. mit Junit-Testing, Entwurfsmuster, Refactorings, Bad Smells usw.

Das Buch ist für mich die perfekte Literatur, um nach einem Java-Einsteigerbuch tiefer in die Materie vorzudringen und sich viele Details zu erarbeiten. Also eines der wenigen Bücher, die die Lücke zwischen Anfängerbuch und spezialisierten Expertenbüchern zu Einzelthemen füllt. Hat rund 1400 Seiten und danach bleibt wenig offen ;-)

Ist jetzt zwar Java-spezifisch, aber es geht hier ja eh u.a. um Java. Und wenn man die OOP einmal gefressen hat, ist es nicht schwierig, die Grundkonzepte auf C++, C#, Delphi oder was auch immer zu übertragen