Der Martin: Mir fehlt glaube ich das Verständnis ...

Beitrag lesen

Hallo Christoph,

Das Problem scheint zu sein, daß manche meinen, in Ausschließlichkeiten denken zu müssen. Also: entweder OOP oder was andres - wobei das "andre" oftmals als weniger "elegant" oder "wertvoll" dargestellt wird. Eine solche Herangehensweise ist aber verkehrt.

Stimmt, erst eine ausgewogene Mischung im Sinne von "hier prozedural, dort OOP" macht's wirklich spannend.

Tatsächlich haben sich große "klassische" Sprachen wie C, Java und Perl sehr schwer getan, ...

Tatsächlich? Ich dachte immer, Java sei von Anfang an streng OO konzipiert gewesen. Mit C/C++ stimme ich allerdings zu; Perl kenne ich selbst nicht.

Und auch die Menschen, denen ich bisher Grundzüge der Programmierung vermitteln wollte, hielten den OO-Ansatz durchweg für komplizierter gehalten als die traditionelle prozedurale Denkweise
Ich übrigens auch (auch wenn _du_ mir da bisher nichts beizubringen gezwungen warst ;-)).

Das wäre vermutlich auch Eulen nach Athen tragen. ;-)
Obwohl ich mir vorstellen könnte, dass wir in völlig unterschiedlichen Bereichen wahrscheinlich viel voneinander lernen könnten.

vor allem gibt es Aufgaben, für die OOP geradezu prädestiniert ist.
Schön wärs, wenn du hier eine solche Aufgabe benannt hättest.

Oh, sorry - ich hatte da mal wieder das vielzitierte Beispiel eines fensterorientierten GUI vor Augen. Gerade für sowas gibt es ja eine ganze Reihe von OO-Klassenbibliotheken für die verschiedenen Compiler und Plattformen. Unter Windows dürfte vermutlich die MFC am bekanntesten sein.

Selbst ein Gästebuchscript in PHP verlangt nicht unbedingt, daß das zugrundeliegende Script OOP nutzt; ein PHP-Board dürfte das aber voraussetzen

Nein, "voraussetzen" würde ich das eben nicht, auch wenn es sicher sinnvoll erscheint. Dabei ist die Frage, ob man nicht viele traditionell programmierte Projekte irgendwie schon als OO einstufen sollte. Ich habe schon viele Win32-Applikationen in C auf API-Ebene gesehen, die waren so sauber und modular programmiert, dass man durchaus von OO sprechen könnte, auch wenn die speziellen Mechanismen von C++ nicht verwendet wurden und das Keyword "class" nirgendwo auftauchte.

Aber es ändert nichts daran, dass man zu einem hohen Grad an Abstraktion fähig sein muss
Ich würde es nicht "Abstraktion" nennen, sondern "strukturelles Denken".

Auch noch nicht optimal formuliert. Denn beides, Abstraktion und Struktur, kommt der traditionellen prozeduralen Programmierung ebenso zugute.

So long,
 Martin

--
Die Zeit, die man zur Fertigstellung eines Projekts wirklich braucht, ist immer mindestens doppelt so lang wie geplant.
Wurde dieser Umstand bei der Planung bereits berücksichtigt, gilt das Prinzip der Rekursion.