News: Skeptische Betrachtungen zu C++ und Objective C



  • [edit=ruediger]Bitte keine ganzen Artikel kopieren! Das verstößt gegen das Urheberrecht! Ein Link reicht doch vollkommen.[/edot]

    http://www.zdnet.de/anwendungsentwicklung_skeptische_betrachtungen_zu_c__und_objective_c_story-20000201-41547016-1.htm

    Wie seht Ihr das?

    Gruß.


  • Mod

    HELPVISTAWIN7 schrieb:

    Wie seht Ihr das?

    Es handelt sich größtenteils um einen historischen Tatsachenbericht mit ein paar Spekulationen im Stil "Vielleicht, vielleicht aber auch nicht". Meiner Meinung nach gibt es da nichts anders zu sehen. Die historischen Daten sind meines Wissens nach korrekt.



  • Komischer Artikel, er schreibt da, dass C++ ein Nischenprodukt ist, dass viele Nachteile hat, welche er nicht nennt/nennen kann. Historisch ist es wohl eher korrekt. Es gibt aber genug Firmen, die auf C++ nicht verzichten werden 😃



  • Naja. So viele Fakten werden da ja nun nicht genannt, und die, die genannt werden, sind schon etwas fragwürdig. Dass ALGOL beispielsweise C++ beeinflusst habe, nicht aber Objective C, ist schon eine merkwürdige Behauptung, wo doch üblicherweise ALGOL als Vorläufer von BCPL verstanden wird, aus welchem sich über B schließlich C entwickelte - Objective C trägt dieses Erbe genau so wie C++.

    Ansonsten steht da eigentlich nicht viel mehr drin, als dass der Autor Objective C lieber mag als C++. Das mag zwar der Fall sein, ist aber für einen Artikel doch etwas dünn.



  • Der Artikel ist zu subjektiv.



  • Der Wikipedia-Artikel über Objective-C nennt daher nur diese beiden Einflüsse für das Design der Sprache und betont dadurch, wie offensichtlich diese Einflüsse sind.

    Was ist das denn für ein inhaltsleerer Satz? Hört sich fast wie eine Analyse eines Texts im Deutschunterricht an. Wahrscheinlich sind die Autoren beide Praktikanten bei ZDNet.

    Für mich hört sich das eher so an, als hätten die Autoren sich die Wikipedia-Artikel zu beiden Sprachen durchgelesen, dann noch vielleicht irgendeine C++ vs. Objective-C Seite im Internet und daraus ihren Artikel zusammengeschustert.

    Zum Glück erkennt jeder, der nicht alles was geschrieben steht glaubt, dass die Autoren ahnungslos sind. Vielleicht ist C++ nicht die allerschönste Sprache, aber es hat schon seine Gründe, dass es so weit verbreitet ist (und die sind nicht, dass es 3 Jahre früher als Objective-C veröffentlicht wurde)...



  • Objective Caml wird regelmäßig als Beispiel für eine hochgradig leistungsfähige Sprache zitiert, die C++ in Benchmarktests oft weit hinter sich lässt, einen kürzeren und besser organisierten Quellcode bietet und den Entwicklern viel übersichtlichere und interessantere Entwicklungsmodelle bereitstellt

    Na klar 🤡



  • HELPVISTAWIN7 schrieb:

    Skeptische Betrachtungen zu C++ und Objective C

    Wie seht Ihr das?

    Objective-C vereint die negativen Aspekte von C und Smalltalk in sich. Es ist definitiv kein Ersatz für C++, da man mit Objective-C nicht in der Lage ist LowLevel zu programmieren. Wenn man dies tun will ist man auf reines C limitiert und braucht Objective-C erst gar nicht. Die OOP-Fähigkeiten von Objective-C sind eher auf höherer Ebene angesiedelt. Weshalb man sich dabei aber mit C herumärgern muß, daß kann niemand glaubhaft begründen. Früher gab es mal den Grund, daß Bytecode Programme (Smalltalk) nicht schnell genug waren. Mittlerweile ist das kein Thema mehr. Objective-C verhindert durch sein Design (C-Anteil) Rapid Prototyping, aber genau dafür wäre es dank der OOP-Features prädestiniert. Schnell sind Objective-C Programme aber auch nicht, da immer dynamisches Dispatching benutzt wird. Wenn man schnelle Programme will, muß man wieder reines C programmieren.

    Diese Sprache ist weder Fisch noch Fleisch. Wer eine OO Sprache mit dynamik Dispatching will sollte Smalltalk, Ruby oder Python oder eine andere Sprache wählen (z.B. C# auf Windows). Wer eine Sprache für schnelle compilierte Programme will, sollte sich was aus der folgenden Liste aussuchen: Ada(für sichere Programme), C, C++, Fortran

    Auf MacOS X (und iOS fürs iPhone) ist man zu Objective-C mehr oder minder gezwungen, das ist auch der einzige Grund es zu nutzen.



  • Wie seht Ihr das?

    Bullshit. Nach so viel kopiertem Text ist das Frage? Troll!



  • Dieser Thread wurde von Moderator/in pumuckl aus dem Forum C++ (auch C++0x) in das Forum Rund um die Programmierung verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Ein objektorientiertes System im Sinne des Erfinders entsteht so jedenfalls nicht.

    C und Simula (-> C++) sind zwei Algol-Abkömmlinge, also ideell nicht unendlich weit voneinander entfernt. Aber C und Smalltalk ... 😮



  • Die Verbreitung der jeweiligen Sprache hat weniger mit Erscheinungsdatum als mit Einsatzmöglichkeiten zu tun.

    Apple als Nischenprodukt bringt eine eigene Sprache für sein Produkt raus, andere OS Hersteller versuchen Kompatibilität zu vorhandenen und genutzten Sprachen herzustelllen.

    MS z.b. hat Apis für ASM, Pascal, C und auch C++, Linux ist da auch glaub ziemlich breit aufgestellt.

    Ja und mit objektive C kann man Programme für den Mac schreiben. Apple hat aber einen geringen Marktanteil, der beschränkt sich auf Creative Berufe und Lifestyle Produkte. Im Serverumfeld sowie in Firmennetzwerken ist Mac fast gar nicht vertreten.

    Selbst wenn objetive C x mal besser wäre ( mal hypothetisch betrachtet ) ändert sich die Verbreitung nicht ohne das sich die Marktanteile von Apple verändern. Zumal einige Frameworks wie z.b. Qt auch mit C++ gut geeignet sind um Programme für den Mac zu schreiben.



  • da ist was dran. Programmiersprachen zündeten in der Popularität in der Vergangenheit oftmals
    entweder,
    wenn sie auf einer Plattform Huckepack zum Erfolg reiten (C mit *n*x, C++ mit win, java + Js mit dem web, obj C mit Mac ...),
    oder
    zusammen mit einem neuen Einsatzgebiet (C mit *n*x, Tcl mit Tk, Ruby mit RoR ...)



  • Der Artikel liest sich meiner Meinung nach wie ein Witz. Die Formulierungen wirken sehr merkwürdig, als sei das ganze in Eile oder automatisiert aus dem Englischen übersetzt worden. Die Fakten und die Darstellung ist einfach unhaltbar. zB der Teil über OCaml (was keiner mehr Objective Caml nennt, weil das OO-System Schrott ist und daher wenig benutzt wird) oder der Teil mit den Kerneln. Gerade Objective C bietet doch keine Vorteile wenn es um das vermeiden von typischen C-Fehlern geht, weil das meiste im Endeffekt ja doch C ist. Bei C++ kann man da immerhin viel vermeiden und sauberere Klassen nehmen. Auch das sie den Witz mit dem IEEE-Interview als ernst darstellen.

    Dean schrieb:

    Apple als Nischenprodukt bringt eine eigene Sprache für sein Produkt raus, andere OS Hersteller versuchen Kompatibilität zu vorhandenen und genutzten Sprachen herzustelllen.

    Objective C stammt nicht von Apple!

    Dean schrieb:

    MS z.b. hat Apis für ASM, Pascal, C und auch C++, Linux ist da auch glaub ziemlich breit aufgestellt.

    Da Objective C abwärtskompatibel zu C ist, ist das ganze kein Problem. Bei Linux gibt es zB GNUStep was zum Teil kompatibel ist mit Cocoa.

    edit: oh der Artikel ist wirklich aus dem Englischen übersetzt: http://www.techrepublic.com/blog/programming-and-development/a-skeptics-history-of-c-/3379



  • Dean schrieb:

    Zumal einige Frameworks wie z.b. Qt auch mit C++ gut geeignet sind um Programme für den Mac zu schreiben.

    Ich empfehle die Plattform, die man so beurteilt, auch mal länger (1/2 Jahr oder so) als sein Hauptcomputer innerhalb nicht zuweit zurückliegender Vergangenheit benutzt haben, bevor man so Behauptungen von sich gibt. Alternativ zumindest mal die Apple Human Interface Guidelines durcharbeiten.

    Ich halte das für Kompletten Schwachsinn. Qt-Programme fühlen sich auf dem Mac einfach nur Fremd an. Qt's Userinterfacekonzept kommt von Windows. Und der Unterschied zwischen Windows und Mac im Userinterface ist sehr groß (erheblich größer als Windows/Gnome oder Windows/KDE).

    (Ich verstehe sowieso nicht wieso so viel über den Mac geredet wird. Hat maximal einen Marktanteil von 5% wo Windows >90% hat und (gefühlt) niemand (in diesem Forum) hat wirklich Erfahrung in damit.) 🙄



  • !rr!rr_. schrieb:

    Ein objektorientiertes System im Sinne des Erfinders entsteht so jedenfalls nicht.

    C und Simula (-> C++) sind zwei Algol-Abkömmlinge, also ideell nicht unendlich weit voneinander entfernt. Aber C und Smalltalk ... 😮

    Tja, aehm es gibt viele Objektsysteme. Beispielsweise das prototypenbasierte von Javascript, CLOS, ... die sind alle nicht im Sine des Erfinders.



  • der Erfinder hat sich ja geäußert:

    OOP to me means only messaging, local retention and protection and
    hiding of state-process, and extreme late-binding of all things. It
    can be done in Smalltalk and in LISP.

    Quelle: http://www.purl.org/stefan_ram/pub/doc_kay_oop_en

    ein prototypenbasiertes Objektsystem mit object-message passing und late binding ist z.B. Self.

    http://de.wikipedia.org/wiki/Self_(Programmiersprache)


Anmelden zum Antworten