Ist es sinnvoll heute noch C++ anzufangen?



  • schwachsinn schrieb:

    Databoris schrieb:

    (Die WinAPI wird in mittelferner Zukunft Auslaufmodel und in ferner Zukunft gänzlich abgeschafft werden).

    Ganz sicher nicht, weil dann tausende Programme nicht mehr funktionieren würden.

    Aber sicher. Denkst du, Microsoft hat die ganze .Net Dudelei der letzten Jahre zum Spaß getrieben?! Das langfristige Ziel ist die komplette .Netisierung des Userspaces.

    schwachsinn schrieb:

    Und WinAPI hat auch nichts mit C++ zu tun.

    C++ Programme sind halt unmanaged. Und nun willst du ihm wohl nicht allen Ernstes diese unüberschaubare Monstrum von C++/CLI empfehlen, da ist er mit C# oder VB.Net hundert mal besser aufgehoben.



  • Databoris schrieb:

    schwachsinn schrieb:

    Databoris schrieb:

    (Die WinAPI wird in mittelferner Zukunft Auslaufmodel und in ferner Zukunft gänzlich abgeschafft werden).

    Ganz sicher nicht, weil dann tausende Programme nicht mehr funktionieren würden.

    Aber sicher. Denkst du, Microsoft hat die ganze .Net Dudelei der letzten Jahre zum Spaß getrieben?! Das langfristige Ziel ist die komplette .Netisierung des Userspaces.

    Google: Netisierung klar... 😃

    schwachsinn schrieb:

    Und WinAPI hat auch nichts mit C++ zu tun.

    C++ Programme sind halt unmanaged. Und nun willst du ihm wohl nicht allen Ernstes diese unüberschaubare Monstrum von C++/CLI empfehlen, da ist er mit C# oder VB.Net hundert mal besser aufgehoben.

    Zusammenhangsloses Blabla. Viel spass noch...



  • asc schrieb:

    +fricky schrieb:

    was immer du unter 'ernsthaften leuten' verstehst - die meisten davon werden sich wohl überhaupt nicht in irgendwelchen foren rumtreiben.

    Ah, und wo stellst du fragen wenn die Onlinehilfe nicht ausreicht und der Arbeitskollege nicht weiter weiß? Ich habe es schon in recht vielen Firmen erlebt das Internet gerade im Bereich Foren, Newsgroups usw. besonders gerne verwendet wird.

    ja, du hast natürlich recht. ich bin auch oft im internet unterwegs, um irgendwelche infos zusammenzusammeln, allerdings bemühe ich eher google u.ä. mit den richtigen suchbegriffen, anstatt fragen in foren zu stellen. nahezu alle allgemeinen themen wurden schon irgendwo gefragt und beantwortet. viele machen es wahrscheinlich ähnlich und sind, wie ich, parasiten des informationszeitalters, statt selbst hilfreiche beiträge in foren, newsgroups, usw. zu veröffentlichen.

    Databoris schrieb:

    Aber sicher. Denkst du, Microsoft hat die ganze .Net Dudelei der letzten Jahre zum Spaß getrieben?! Das langfristige Ziel ist die komplette .Netisierung des Userspaces.

    vielleicht war das ziel einfach nur, Java unter windows das wasser abzugraben. kann mir schon vorstellen, dass m$ durch Java reichlich genervt war/ist.
    🙂



  • Databoris schrieb:

    Wenn du Windows Desktop Anwendungen programmieren willst, würde ich nicht noch auf ein "sinkendes Schiff" wie C++ wechseln. Gerade wenn du Desktop Anwendungen entwickeln willst, ist C# sicherlich die weitaus bessere Wahl. Sowohl von der Sprache her als solcher, als auch von den Zukunftsaussichten (Die WinAPI wird in mittelferner Zukunft Auslaufmodel und in ferner Zukunft gänzlich abgeschafft werden).

    Das was ich ja wollte sind zusätzlich auch Anwendungen für Windows Mobile zu schreiben... Ich dachte deshalb an C++



  • Das Geflame ist doch sinnlos. Windows Mobile kann auch .NET, mit C# kann man 10000mal leichter Win-GUIs erstellen als mit Visual C++, also nimm C#!



  • ----



  • _matze schrieb:

    dass man schon eher von einer neuen Sprache sprechen müsste (vielleicht "C+#"? oder "C++++"? 😉 )

    Für den erfahrenen C++ Programmierer kommt natürlich nur ++C als neuer Name in Frage.



  • Noch schlimmer sieht der stinkende Müllberg Namens Java aus. Immer neue Features und Funktionen obwohl die Bugs der alten noch nichtmal gefixt sind. Nichtmal grundlegende Dinge wie identisches Verhalten der JVM unter Windows und Linux, den beiden Mainstream-OS ist umgesetzt. Wenn man die Entwicklungszeit kurz halten will soll man sich ordentliche Leute besorgen die "ihre" Sprache _wirklich_ beherrschen, dann kommt am Ende auch ein gutes Produkt raus. Und möglichst auf irgendwelche Buzzword-Technologien wie Java, Corba, XML-RPC und wie sie alle heissen verzichten. Da ist die Code-Decke inzwischen so gigantisch, ich wage einfach mal zu behaupten dass das in den nächsten Jahren noch zu einem enormen Sicherheitsalbtraum wird weil schlichtweg kaum noch einer da durchblickt / durchblicken kann.



  • Ad aCTa schrieb:

    Das Geflame ist doch sinnlos. Windows Mobile kann auch .NET, mit C# kann man 10000mal leichter Win-GUIs erstellen als mit Visual C++, also nimm C#!

    damit gehts auch: http://www.smorgasbordet.com/pellesc/
    🙂



  • hier ist noch was zum thema C vs. C++: http://pizer.wordpress.com/2008/10/29/c-versus-c/



  • Artchi schrieb:

    +fricky schrieb:

    der effekt ist aber witzig. hier noch was lustiges:

    string a("c++ get off my ass");   // konstruktoraufruf mit parameter  
      string b();               // konstruktoraufruf ohne parameter (oder doch nicht?)
    

    🙂

    Wieder der beweis, über etwas zu urteilen, obwohl man es nicht kennt. Und es zeigt, das du nicht mal C kannst obwohl du dich C-Fanboy nennst, sonnst wäre dir aufgefallen, das string b(); ein Funktions-Prototyp ist (was auch der Compiler mit einem ERROR anmeckert). Das ist nun wirklich Basiswissen, oder?

    Du bist leider vollkommen am Punkt vorbeigeschrammt 😉 C++ hat inkonsistente Syntax, was dazu führt, daß das Parsen von C++ unbegrenztes Lookup erfordert (du kannst zuweilen erst beim Semikolon entscheiden, ob du eine Deklaration, eine Definition oder einfach eine Anweisung behandelst) und zuweilen ohne Workarounds ( typename ) gar nicht wunschgemäß funktioniert.

    IIRC gab es mal irgendeinen Vorschlag für ein alternatives Syntax-Binding, das das Parsing von C++ rapide vereinfachen und derartige Ambiguitäten beseitigen würde. Praktisch ist es natürlich nicht, da dann die C-Kompatibilität draufgeht.

    databecker schrieb:

    Mich würde mal interessieren was ihr alle von Delphi haltet.

    Sehr schöne, mittlerweile auch wieder recht moderne Sprache, die IDE ist für die Entwicklung von Windows-UIs unerreicht. Laß dir keinen Unfug erzählen von Leuten, die Delphi nur daher kennen, daß sie im Schulunterricht darin GUIs zusammenklicken mußten 😉

    databecker schrieb:

    Ich bin nämlich am überlegen auch auf C++ umzusteigen, weil ich evtl. Programme für Windows Mobile schreiben wollte und dies in Delphi nicht so einfach oder überhaupt nicht möglich ist. Vor allem fehlt mir da noch die Unterstützung von 64Bit.

    Ja, für beides brauchst du andere Werkzeuge; Delphi hat seinen Fokus eben im Win32-GUI-Bereich. The right tool for the job.

    databecker schrieb:

    Mich wundert auch das hier so viele Java toll finden und das in einem C++ Forum^^

    In einem der "Off-topic"-Bereiche des C++-Forums, wohlgemerkt. Was meinst du, wie es aussähe, wenn der Thread im C++-Subforum liegen geblieben wäre? 😉

    Ad aCTa schrieb:

    Das Geflame ist doch sinnlos. Windows Mobile kann auch .NET, mit C# kann man 10000mal leichter Win-GUIs erstellen als mit Visual C++, also nimm C#!

    +1.



  • audacia schrieb:

    Praktisch ist es natürlich nicht, da dann die C-Kompatibilität draufgeht.

    ich glaub, drüber würde keiner eine träne vergiessen.

    audacia schrieb:

    databecker schrieb:

    Mich wundert auch das hier so viele Java toll finden und das in einem C++ Forum^^

    In einem der "Off-topic"-Bereiche des C++-Forums, wohlgemerkt. Was meinst du, wie es aussähe, wenn der Thread im C++-Subforum liegen geblieben wäre?

    hier ist erst letztens so'n ähnlicher thread aus dem c++-forum rübergeschoben worden. solche diskussionen gibts also auch da. und das zeigt wohl, dass sogar im lager der knallharten, scheuklappenbehafteten c++ fans eine rückbildung ihrer sprache bemerkt wird.
    🙂



  • +fricky schrieb:

    audacia schrieb:

    Praktisch ist es natürlich nicht, da dann die C-Kompatibilität draufgeht.

    ich glaub, drüber würde keiner eine träne vergiessen.

    Doch, ich! 😃



  • Ich auch.



  • Ich ebenfalls. 😃



  • Die Sprache hat zu viele mächtige Features, die den Leuten zu viel Freiheit an die Hand geben.

    Ja, nennt man erwachsen. Ich moechte keine Programmiersprache, die mich als Kind behandelt.

    Das ist die bekannte Geisteshaltung, die massenweise Buffer Over-/Underflos produziert. Man verliert absolut nichts, wenn man eine Sprache ohne Zeigerarithmetik nutzt!

    Bei mir nicht. Auch ist es eher ein C als ein C++ Problem. Ich nutze recht selten Zeigerarithmetik, aber wenn, dann bin ich froh, dass sie da ist.

    netter Fallstrick in C++ ist IMHO auch noch dieser Klassiker

    Den man leicht vermeiden kann ... Das sieht ja ein Blinder.

    C++0x gibt's auch noch 'ne dynamic-typing-light version durch das mutierte 'auto' keyword

    Dynamische Typisierung und auto haben nichts miteinander zu tun. Auch sind viele Skriptsprachen in C/C++ realisiert, die dynamische Typisierung anbieten. Dabei wird nicht alles nach void* gecastet, da dadurch die strictness verloren geht.

    +fricky schrieb:

    audacia schrieb:

    Praktisch ist es natürlich nicht, da dann die C-Kompatibilität draufgeht.

    ich glaub, drüber würde keiner eine träne vergiessen.

    Ich schon, da es recht einfach ist, Systembibliotheken in C++ zu benutzen und zu schreiben.

    solche diskussionen gibts also auch da. und das zeigt wohl, dass sogar im lager der knallharten, scheuklappenbehafteten c++ fans eine rückbildung ihrer sprache bemerkt wird.

    Bullshit. So koennte man die meisten Beitraege hier kommentieren. Das gilt sowohl fuer Java, C oder andere Sprachen.



  • knivil schrieb:

    +fricky schrieb:

    audacia schrieb:

    Praktisch ist es natürlich nicht, da dann die C-Kompatibilität draufgeht.

    ich glaub, drüber würde keiner eine träne vergiessen.

    Ich schon, da es recht einfach ist, Systembibliotheken in C++ zu benutzen und zu schreiben.

    language bindings (gibts dafür ein deutsches wort?) haste doch in vielen sprachen, um auf system-APIs zuzugreifen. das könnte's doch auch in C++ geben. nebenbei gibt's hier öfter mal zu lesen, dass die (liebevoll so genannten) 'C-altlasten' eine ständige quelle des ärgers für c++-progger sind. auch die immer mehr werdende, grausame umdeutung von C-syntaxelementen (letztens hier in einem pdf von 'dravere' gelesen, wie im neuen standard geschweiften klammern eine weitere bedeutung zukommen soll), ist absolut unlustig. ich glaube daher, wenn man das C aus C++ verbannen würde, wäre langfristig viel geholfen. und wer C machen will, kann ja immer noch 'echtes C' nehmen.
    🙂



  • language bindings (gibts dafür ein deutsches wort?) haste doch in vielen sprachen, um auf system-APIs zuzugreifen. das könnte's doch auch in C++ geben.

    Gibt es doch, ist halt build in. Und die Altlasten sind kein Problem, man braucht sie schlich nicht verwenden.



  • knivil schrieb:

    man braucht sie schlich nicht verwenden.

    ja, das lese ich oft. das ist killerargument und oberstes designprinzip von C++ zugleich: wir packen einfach alles erdenkliche in die sprache rein, so dass sich jeder seinen subset selber zusammenstellen kann.
    🙂



  • Und wie soll die Sprache dann heißen, wenn man die C-Altlasten aus C++ entfernt hat?

    [b]++[/bf] ? 😃

    Nein, im Ernst: Sprachfeatures aus einer Sprachdefinition nachträglich zu entfernen ist ganz schlecht, weil es im Fall von C++ abermillionen Codezeilen inkompatibel zu zukünftigen Compilern machen würde. Man sieht das Problem ja an python.


Anmelden zum Antworten