Gernot wrote:
> Danke für die schnelle Antwort.
>
> D.h. also das man Klassen vor allem zur Übersichtlichkeit verwendet
> oder?
Letztenendes geht es bei allen höheren Programmiersprachen darum
den Entwicklungsprozess zu vereinfachen und Fehler (auch Designfehler)
bereits im Vorfeld loszuwerden.
Alle höheren Programmiersprachen sind Turing-komplett. Das bedeutet
dass man mit ihnen alles berechnen kann was prinzipiell berechenbar
ist. Es ist also nicht so, dass man mit einer Sprache etwas machen
kann, was man mit einer anderen nicht kann. In ihrer Mächtigkeit sind
all diese Programmiersprachen gleich. Nur gibt es Problemstellungen die
man mit bestimmten Sprachen eleganter lösen kann als mit anderen.
Und dann gibt es noch die Universalsprachen, wie C C++ Java C#
Fortran Pascal ..., die sich auf keine spezielle Aufgabe konzentrieren
und quasi für alles zu gebrauchen sind. Die einen haben vielleicht
in einem bestimmten Teilbereich einen kleinen Vorteil andere wieder
in anderen Teilbereichen.
>
> Was ich noch fragen wollte: Sind Klassen auch in C oder nur in C++
> definiert? Würde mich deswegen interessieren weil ich viel für µC
> programmiere.
C kennt keine Klassen. Auf einem µC ist das auch normalerweise
nicht so schlimm. Objektorientiertes Programmieren spielt seine
Vorteile eher bei größeren Projekten aus, wo es ein gutes Mittel
ist, ein überschaubares System hochzuziehen, welches aus Komponenten
besteht, die möglichst wenig voneinander abhängig sind und sich auf
dubiose Weise gegenseitig beeinflussen. Klar kann man das auch ohne
Klassen erreichen. Dann muss aber der Programmierer diszipliniert
arbeiten während bei einem Klassenkonzept im Grunde der Compiler
bereits auf die Einhaltung gewisser Regelungen pocht (pochen kann).