{"id":2714,"date":"2017-02-16T17:24:34","date_gmt":"2017-02-16T16:24:34","guid":{"rendered":"http:\/\/roboblog.fatal-fury.de\/?p=2714"},"modified":"2017-02-25T08:48:12","modified_gmt":"2017-02-25T07:48:12","slug":"c-ist-kein-object-oriented-sprache","status":"publish","type":"post","link":"http:\/\/roboblog.fatal-fury.de\/?p=2714","title":{"rendered":"C++ Guns - C++ ist kein object oriented sprache"},"content":{"rendered":"<p>Wie Arne Mertz schon in seinem Beitrag <a href=\"https:\/\/arne-mertz.de\/2015\/07\/c-is-not-an-object-oriented-language\/\">c-is-not-an-object-oriented-language\/<\/a> sage, ist C++ keine Objekt orientierte Sprache. Ich m\u00f6chte das aus meiner Sicht einmal verdeutlichen.<br \/>\nEine Definition ob eine Sprache eine Objekt orientiere Sprache ist, wenn damit Objekt orientiert programmieren kann. Doch was ist ein Objekt?<\/p>\n<p>Aus Objekt orientierter Sich ist ein Objekt eine Klasse, mit Funktionen und Attributen. Dabei kann sich das Verhalten des Objekts, also seine Funktionen, zur Laufzeit mittels Vererbung \u00e4ndern (c++: virtual).  Doch wann h\u00f6rt ein Objekt auf, ein Objekt zu sein? Das \u00e4ndern des Verhaltens zur Laufzeit ist IMO keine Voraussetzung. Auch muss ein Objekt IMO keine Funktionen besitzen oder von anderen Klassen erben. Ein Objekt mit nur Attributen hat auch oft eine Entsprechung mit einem realen Objekt in der Welt. Zum Beispiel kann jeder Gegenstand mit Koordinaten xyz versehen werden. Dieses Koordinaten-Objekt selbst ist aber wieder aus drei einzelnen Objekten zusammengesetzt. Eben die Variablen, welche die x, y und z Koordinate speichern. Aus meiner Sicht ist schon eine einfache Variable, welche sogar direkt von einer spezifischen Hardware abh\u00e4ngig sein kann (size_t), schon ein Objekt. <\/p>\n<p>So, C++ ist keine pure Objekt orientierte Sprache. Keine pure funktionale Sprache. Keine pure prozedural Sprache. Keine pure low level Sprache.<br \/>\nC++ ist eine multi paradigma Sprache. Und das ist auch gut so.<br \/>\nF\u00fcr jede Aufgabe gibt es eine gute L\u00f6sung. Aber reale Welt Probleme bestehen aus vielen einzelnen Aufgaben die jede f\u00fcr sich eine gute L\u00f6sung besitzt. Wie kann dann \u00fcberhaupt angenommen werden, dass eine Sprache, dir nur ein einzelnes, oder wenige Paradigmas unterst\u00fctzt, \u00fcberhaupt jemals echte Probleme gut l\u00f6sen kann?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wie Arne Mertz schon in seinem Beitrag c-is-not-an-object-oriented-language\/ sage, ist C++ keine Objekt orientierte Sprache. Ich m\u00f6chte das aus meiner Sicht einmal verdeutlichen. Eine Definition ob eine Sprache eine Objekt orientiere Sprache ist, wenn damit Objekt orientiert programmieren kann. Doch was ist ein Objekt? Aus Objekt orientierter Sich ist ein Objekt eine Klasse, mit Funktionen [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[17],"class_list":["post-2714","post","type-post","status-publish","format-standard","hentry","category-allgemein","tag-cpp"],"_links":{"self":[{"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/posts\/2714","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2714"}],"version-history":[{"count":3,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/posts\/2714\/revisions"}],"predecessor-version":[{"id":2718,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/posts\/2714\/revisions\/2718"}],"wp:attachment":[{"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2714"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2714"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2714"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}