C++ - Neueinsteiger



  • net schrieb:

    Glamdrink schrieb:

    [offtopic]Außerdem mag ich Java nicht! Es lebe die Freihet![/offtopic]

    deshalb coden auch viele c++ user 'c mit klassen'

    hat aber alles seine daseinsberechtigung.
    c -> maximale freiheit
    java -> maximale system-unabghängigkeit
    c++ -> von jedem etwas

    hö, bitte wie?



  • kingruedi schrieb:

    net schrieb:

    deshalb coden auch viele c++ user 'c mit klassen'

    hat aber alles seine daseinsberechtigung.
    c -> maximale freiheit
    java -> maximale system-unabghängigkeit
    c++ -> von jedem etwas

    hö, bitte wie?

    nicht? was meinst du denn?



  • Scheint hier wirklich etwas vom Topic abzudriften...



  • Hab mal was gelesen.

    Microsoft ist gegen Java und versucht das Windowsprogrammierung mit Java nich mehr möglich sein wird. Also Java einige Plattformen nur in Zukunft kein Windows mehr. Gerade anders rum C#. Ist speziell für die Windowsprogrammierung. C++ ist der lachende dritte da C++ glaub ich überall läuft.



  • @net
    Warum ist zum Beispiel C++ mehr Systemfreiheit als C? etc. ich versteh einfach nicht was du sagen willst



  • Facer schrieb:

    Hab mal was gelesen.

    Microsoft ist gegen Java und versucht das Windowsprogrammierung mit Java nich mehr möglich sein wird. Also Java einige Plattformen nur in Zukunft kein Windows mehr. Gerade anders rum C#. Ist speziell für die Windowsprogrammierung. C++ ist der lachende dritte da C++ glaub ich überall läuft.

    Das ist ja nicht nur OT sondern auch nocht Quatsch. 👎



  • Facer schrieb:

    Gerade anders rum C#. Ist speziell für die Windowsprogrammierung.

    theoretisch zwar nicht aber praktisch - ja

    Facer schrieb:

    C++ ist der lachende dritte da C++ glaub ich überall läuft.

    nee, c (ohne++) ist das schon immer gewesen. c gibt es für die schäbigsten controller



  • net schrieb:

    kingruedi schrieb:

    net schrieb:

    c -> maximale freiheit
    java -> maximale system-unabghängigkeit
    c++ -> von jedem etwas

    hö, bitte wie?

    nicht? was meinst du denn?

    Das Bild ist zu sehr vereinfacht. Klingt zwar logisch: C++ ist eine auf C basierende OOP-Sprache, muss also zwischen Java und C liegen. Ist aber nicht so. C++ ist genauso systemabhängig oder -unabhängig wie C (von exotischen Plattformen, µC usw. mal abgesehen). Was die Freiheit angeht, ist man in C++ theoretisch gegenüber C auch nicht eingeschränkt. Man schränkt sich IMO nur selbst ein, weil es in C++ sehr viel mehr Konventionen und Stilregeln gibt, an die man sich hält, weil man aufgrund der Komplexität der Sprache seine Entscheidungen und ihre Auswirkungen nicht in dem Maße überblicken kann wie in C.



  • kingruedi schrieb:

    @net
    Warum ist zum Beispiel C++ mehr Systemfreiheit als C? etc. ich versteh einfach nicht was du sagen willst

    c++ - von jedem etwas
    sollte heissen, oo aber auch prozedural wenn man will, nicht dass man in c weniger freiheiten hat als in c++.
    c++ verlangt halt mehr disziplin vom user um oo-paradigmen nicht auszuhebeln als andere oo-sprachen



  • Nicht gleich ausrasten wollte nur mal erwähnen was ich mal gelesen hab.



  • Bashar schrieb:

    C++ ist genauso systemabhängig oder -unabhängig wie C (von exotischen Plattformen, µC usw. mal abgesehen).

    klar, aber man kann mit c++ auch ein hohes mass an systemunabhängigleit erreichen, indem man libs einsetzt wie qt, sdl etc. man muss dann zwar für jede platform neu compilieren aber wenn man ausserdem keine exotischen compiler-features benutzt muss man wenig ändern.

    edit: ausserdem gibt's ja das gute #ifdef 🙂
    da hat java leider nix vergleichbares zu bieten (oder doch? das neue java 1.5 vielleicht?)



  • @net
    das kannst du in C auch ohne Probleme. Die SDL die du zB. ansprichst ist ja eine C Library.



  • Facer schrieb:
    Hab mal was gelesen.

    Microsoft ist gegen Java und versucht das Windowsprogrammierung mit Java nich mehr möglich sein wird. Also Java einige Plattformen nur in Zukunft kein Windows mehr. Gerade anders rum C#. Ist speziell für die Windowsprogrammierung. C++ ist der lachende dritte da C++ glaub ich überall läuft.

    Das ist ja nicht nur OT sondern auch nocht Quatsch.

    Sag nur nichts! Quatsch mit Sauce!

    Gut, abgsehen davon, mir wäre es recht, wenn M$ Java nicht mehr unterstützen würden. Dann würden sie ungemeinen Vorschub an Linux leisten, was ich äusserst begrüsssen würde. Ausserdem würden sie ihr eigenes Grab immer weiter ausheben, und, wer weiss, ob es noch viel braucht, bis sie dann mal reinfallen... :p

    - Adrian



  • kingruedi schrieb:

    @net
    das kannst du in C auch ohne Probleme. Die SDL die du zB. ansprichst ist ja eine C Library.

    ach? alles extern "C" oder wie?
    nix oo - schade.
    ist ja mit gtk genauso



  • net schrieb:

    [
    da hat java leider nix vergleichbares zu bieten (oder doch? das neue java 1.5 vielleicht?)

    Wieso auch? Bei entsprechendem Bytecode ist eine Java-Anwendung OHNE Neukompilierung sofort auf einem anderen OS ausführbar.



  • interpreter schrieb:

    Sind heute die Assemblerprogrammier die Elite? 😉

    Assembler ist eine völlig andere Welt. Schau mal in beliebige Statistiken die sich mit der Produktivität von Programmierern beschäftigen (Zeitaufwand, Fehlerrate...) dann wirst du feststellen, dass es nur marginale Unterschiede zwischen den einzelnen Hochsprachen gibt, aber diese haben einen RIESEN Vorsprung vor Assembler. Sprich: In Experimenten (z.B. in den "Coding War Games" von DeMarco und Lister) wurde nachgewiesen, dass ein guter Cobol-Programmierer in einer Liga spielt mit den Fortran, C, C++ usw. Programmierern dieser Welt (was Produktivität angeht). Ein Assembler-Programmierer hingegen hängt uneinholbar hinterher.

    Oder glaubt ihr ernsthaft, dass sich der Mainstream an Programmierern in 20 Jahren noch mit expliziten Pointern etc. rumplagen muss?

    Der Mainstream-Programmierer programmiert heute schon nicht mehr in C++.
    Der Mainstream-Programmierer hat, wenn man den Statistiken glaubt, nicht mal *ein einziges* Programmierbuch gelesen. Vergleicht man das mit der enormen Komplexität von C++ kann man nur hoffen, dass der Mainstream-Programmierer nie in die Verlegenheit kommt C++ programmieren zu müssen.

    C++ ist nach wie vor eine sehr wichtige Sprache wenn es um die Implementation von effizienten Bibliotheken geht. Bibliotheken die dann z.B. über C-Bindings in unendlich vielen verschiedenen Sprachen benutzt werden können (z.B. in Script-Sprachen). Der Einsatz von C++ nimmt im Embedded-Bereich langsam aber sicht zu. C++ ist derzeit und C++/CLI wird laut MS die Systemsprache der Windows-Platform.

    Fazit: Die Gerüchte vom Tod der Sprachen C und C++ sind furchtbar übertrieben. Es werden noch viele Jahre vergehen bis C++ von der Bildfläche verschwindet. Und bis dahin hat man Java wahrscheinlich so furchtbar aufgebläht, dass es sogar die Komplexität von C++ in den Schatten stellt 🙂



  • Hallo,

    net schrieb:

    nix oo - schade.

    man kann übrigens auch mit C OO programmieren.



  • CarstenJ schrieb:

    net schrieb:

    nix oo - schade.

    man kann übrigens auch mit C OO programmieren.

    Klar. Ich kann in Prolog ja auch prozedural programmieren. Kostet nur halt etwas Mühe und Schweiß und ist nicht im Sinne des Erfinders.

    Die Frage ist hier imo nicht so sehr ob man kann sondern vielmehr ob man sollte 🙂



  • interpreter schrieb:

    net schrieb:

    [
    da hat java leider nix vergleichbares zu bieten (oder doch? das neue java 1.5 vielleicht?)

    Wieso auch? Bei entsprechendem Bytecode ist eine Java-Anwendung OHNE Neukompilierung sofort auf einem anderen OS ausführbar.

    manchmal fehlt mir bei java sowas wie #ifdef um debug-ausgaben in der release-version nicht drin zu haben. ohne änderung ausführbar stimmt auch nicht immer: eine bekannte von mir hat mal eine mittelgrosse anwendung geschrieben und da war es tatsächlich eine! zeile, die geändert werden musste (irgendwelche inkompatibilitäten mit den layout-managern unter win32 bzw. xwindows)



  • Die Frage ist hier imo nicht so sehr ob man kann sondern vielmehr ob man sollte

    Schon klar, aber gerade GTK ist ja sehr schön objektorientiert, auch wenns C ist.


Anmelden zum Antworten