Ist man mit der Programmiersprache D 2.0 anstatt C++ (C++11) schneller am Ziel?



  • volkard schrieb:

    Ethon schrieb:

    Och, ist schon angenehmer nicht jede dynamische Speicherallokation irgendwie wrappen zu müssen.
    Wenn man dann bedenkt dass der GC in vielen Szenarien performanter ist als das new/malloc/delete/free Gedöns ist das schon ein netter Vorteil. 👍

    *gahn*, das höre ich nun auch schon seit java noch aufstrebend war.

    Ist auch kein Zufall dass Java 100x relevanter ist als C++, egal ob man Java mag oder nicht.



  • Ethon schrieb:

    Ist auch kein Zufall dass Java 100x relevanter ist als C++, egal ob man Java mag oder nicht.

    So wichtig, daß ich kein Java auf dem PC habe. Naja, ich bin aber auch kein Zocker, sonst müßte ich ja wegen der vielen modernen 3d-Spiele Java drauf haben. Mit Minecraft ist Java auf einmal vorn in die Spielewelt eingebrochen, nun gibt es nur noch Browser, Server, Compiler, Office-Suiten, Datenbankmaschinen, Numbercrunching und wissenschaftliche Simulationen, die klar von Java frei oder unbrauchbar sind.



  • Ich benutze auch nicht wirklich Java.
    Trotzdem kommen auf 1 Stellenausschreibung für C++ locker 99 Stellenausschreibungen für Java. Oder C#.

    Wir haben hier an der Uni ein gewaltiges schwarzes Brett mit Ausschreibungen. C++ liest man alle Jubeljahre mal und dann ist es embedded.



  • Ethon schrieb:

    Ich benutze auch nicht wirklich Java.
    Trotzdem kommen auf 1 Stellenausschreibung für C++ locker 99 Stellenausschreibungen für Java. Oder C#.

    Wir haben hier an der Uni ein gewaltiges schwarzes Brett mit Ausschreibungen. C++ liest man alle Jubeljahre mal und dann ist es embedded.

    Kann ich mir so direkt nicht erklären. Sind Java-Programmierer so austauschbar wie Putzfrauen? Entwickeln die überhaupt was oder machen nur Scriptanpassungen?

    Also bei uns in der Tageszeitung liest man viel mehr C++ als Java.



  • ich denke, C++ hat seine beste Zeit erst noch vor sich.

    C++11 ist ein ganz großer Wurf. Für mich der größte Fortschritt seit Einführung der STL.

    Mir fällt im Moment kein Grund ein, warum ich D oder java benutzen sollte.

    on topic: Ganz allgemein ist man aber wahrscheinlich in derjenigen Sprache mit am schnellsten am Ziel, die man am besten beherrscht, und für die es die für das jeweilige Problem hilfreichsten Bibliotheken(-bindings) gibt.



  • Ethon schrieb:

    Wir haben hier an der Uni ein gewaltiges schwarzes Brett mit Ausschreibungen. C++ liest man alle Jubeljahre mal und dann ist es embedded.

    Okay, komische Uni, ist bei uns eher ausgeglichen.



  • großbuchstaben schrieb:

    ich denke, C++ hat seine beste Zeit erst noch vor sich.

    C++11 ist ein ganz großer Wurf. Für mich der größte Fortschritt seit Einführung der STL.

    Mir fällt im Moment kein Grund ein, warum ich D oder java benutzen sollte.

    on topic: Ganz allgemein ist man aber wahrscheinlich in derjenigen Sprache mit am schnellsten am Ziel, die man am besten beherrscht, und für die es die für das jeweilige Problem hilfreichsten Bibliotheken(-bindings) gibt.

    Soso, und in welchem Bereich der Zukunft glänzt C++ denn? Im Web? Bei Apps? Bei Desktop-Programmen?
    Sogar im Spielesektor verliert C++ nach und nach an Bedeutung.

    D ist definitiv ein verbessertes C++ aber da auch C++ am absteigenden Ast ist und D nicht viel mehr Berechtigung hat benutzt zu werden + den Malus mitschleppt dass es keine guten IDEs + es viel weniger Libs gibt sieht die Zukunft halt düster aus.



  • volkard schrieb:

    Ethon schrieb:

    Ist auch kein Zufall dass Java 100x relevanter ist als C++, egal ob man Java mag oder nicht.

    So wichtig, daß ich kein Java auf dem PC habe. Naja, ich bin aber auch kein Zocker, sonst müßte ich ja wegen der vielen modernen 3d-Spiele Java drauf haben. Mit Minecraft ist Java auf einmal vorn in die Spielewelt eingebrochen, nun gibt es nur noch Browser, Server, Compiler, Office-Suiten, Datenbankmaschinen, Numbercrunching und wissenschaftliche Simulationen, die klar von Java frei oder unbrauchbar sind.

    Ähm eigentlich ist Java in der Geschäftswelt heimisch und nicht in der Spielewelt.

    Dutzende Auftragsentwicklungen werden in Java realisiert, Spiele werden kaum welche geschrieben und Minecraft ist übrigens ein guter Punkt für die Frage.
    Als Indie Entwickler der das am Anfang alles alleine stemmen musste, kam er mit Java sicherlich wesentlich schneller ans Ziel.
    Dafür ist Minecraft nun langsamer, aber Kohle hat es ihm trotzdem ohne Ende eingebracht und falls es mal ein Minecraft 2 geben sollte, dann bin ich zuversichtlich, dass er es mit einem > 50 Mann Team dann in C++ oder ähnliches realisieren wird.



  • Okay, vergleichen wir mal:

    /* fussschuss.cpp */
    
    #include <iostream>
    
    using namespace std;
    
    int main(){
      bool kaputt = false;
    
      if (!kaputt){
        cout << "okay\n";
      }
    
      // aber C++ erlaubt es auch, mit schlechtem Stil sich in den Fuss zu schiesen:
      if (kaputt == false){
            cout << "okay\n";
      }
      // soweit noch okay, aber:
      if (kaputt = false){
            cout << "okay\n";
      } else {
        cout << "BUMMM!!!\n";
      }
    
      return 0;
    }
    

    Dazu zum Vergleich:

    /* Ich benutze mal das C Tag, weil es im Forum noch kein Tag für D gibt. */

    /* nix_fussschuss.d */
    
    import std.stdio;
    
    void main()
    {
      bool kaputt = false;
    
      if (!kaputt){
         writeln("okay\n");
      }
    
      // so weit okay, aber 
      if (kaputt == false){  // BUMM, Compilererror + Warnung, da nicht erlaubt
             writeln("okay\n");
      }
    
      // Wegen BUMM von oben kann das erst gar nicht passieren:
      if (kaputt = false){ // gibt alleine ebenfalls nen Compilererror
             writeln("okay\n");
      } else {
         writeln("BUMM!!!\n");
      }
    
      return 0;
    }
    

    Fazit:

    D vermeidet schlechten Stil, man läuft dadurch weniger Gefahr sich in den Fuss zu schiessen und ist somit schneller mit der Arbeit fertig.



  • Mal ein Beispiel schrieb:

    Okay, vergleichen wir mal:

    /* fussschuss.cpp */
    
    #include <iostream>
    
    using namespace std;
    
    int main(){
      bool kaputt = false;
    
      if (!kaputt){
        cout << "okay\n";
      }
      
      // aber C++ erlaubt es auch, mit schlechtem Stil sich in den Fuss zu schiesen:
      if (kaputt == false){
            cout << "okay\n";
      }
      // soweit noch okay, aber:
      if (kaputt = false){
            cout << "okay\n";
      } else {
        cout << "BUMMM!!!\n";
      }
      
      return 0;
    }
    

    Dazu zum Vergleich:

    /* Ich benutze mal das C Tag, weil es im Forum noch kein Tag für D gibt. */

    /* nix_fussschuss.d */
     
    import std.stdio;
     
    void main()
    {
      bool kaputt = false;
      
      if (!kaputt){
         writeln("okay\n");
      }
      
      // so weit okay, aber 
      if (kaputt == false){  // BUMM, Compilererror + Warnung, da nicht erlaubt
             writeln("okay\n");
      }
    
      // Wegen BUMM von oben kann das erst gar nicht passieren:
      if (kaputt = false){ // gibt alleine ebenfalls nen Compilererror
             writeln("okay\n");
      } else {
         writeln("BUMM!!!\n");
      }
      
      return 0;
    }
    

    Fazit:

    D vermeidet schlechten Stil, man läuft dadurch weniger Gefahr sich in den Fuss zu schiessen und ist somit schneller mit der Arbeit fertig.

    Compiler-Warnungen einschalten.



  • Meine Meinung schrieb:

    volkard schrieb:

    Ethon schrieb:

    Ist auch kein Zufall dass Java 100x relevanter ist als C++, egal ob man Java mag oder nicht.

    So wichtig, daß ich kein Java auf dem PC habe. Naja, ich bin aber auch kein Zocker, sonst müßte ich ja wegen der vielen modernen 3d-Spiele Java drauf haben. Mit Minecraft ist Java auf einmal vorn in die Spielewelt eingebrochen, nun gibt es nur noch Browser, Server, Compiler, Office-Suiten, Datenbankmaschinen, Numbercrunching und wissenschaftliche Simulationen, die klar von Java frei oder unbrauchbar sind.

    Ähm eigentlich ist Java in der Geschäftswelt heimisch und nicht in der Spielewelt.

    Dutzende Auftragsentwicklungen werden in Java realisiert, Spiele werden kaum welche geschrieben und Minecraft ist übrigens ein guter Punkt für die Frage.
    Als Indie Entwickler der das am Anfang alles alleine stemmen musste, kam er mit Java sicherlich wesentlich schneller ans Ziel.
    Dafür ist Minecraft nun langsamer, aber Kohle hat es ihm trotzdem ohne Ende eingebracht und falls es mal ein Minecraft 2 geben sollte, dann bin ich zuversichtlich, dass er es mit einem > 50 Mann Team dann in C++ oder ähnliches realisieren wird.

    Hirn einschalten!



  • Ethon schrieb:

    Sogar im Spielesektor verliert C++ nach und nach an Bedeutung.

    *lach*
    Hab Dich mit Minecraft in eine Falle gelockt. Du argumentierst wie deine Mutter. Mit erfunden "Fakten" oder gar nicht und die wenigen beobachtbaren Tatsachen ordnet sie merkbefreit ein.



  • Ethon schrieb:

    Soso, und in welchem Bereich der Zukunft glänzt C++ denn? Im Web? Bei Apps? Bei Desktop-Programmen?

    Du weißt schon, daß es noch sehr viel mehr Gebiete mit Software gibt?



  • volkard schrieb:

    Meine Meinung schrieb:

    volkard schrieb:

    Ethon schrieb:

    Ist auch kein Zufall dass Java 100x relevanter ist als C++, egal ob man Java mag oder nicht.

    So wichtig, daß ich kein Java auf dem PC habe. Naja, ich bin aber auch kein Zocker, sonst müßte ich ja wegen der vielen modernen 3d-Spiele Java drauf haben. Mit Minecraft ist Java auf einmal vorn in die Spielewelt eingebrochen, nun gibt es nur noch Browser, Server, Compiler, Office-Suiten, Datenbankmaschinen, Numbercrunching und wissenschaftliche Simulationen, die klar von Java frei oder unbrauchbar sind.

    Ähm eigentlich ist Java in der Geschäftswelt heimisch und nicht in der Spielewelt.

    Dutzende Auftragsentwicklungen werden in Java realisiert, Spiele werden kaum welche geschrieben und Minecraft ist übrigens ein guter Punkt für die Frage.
    Als Indie Entwickler der das am Anfang alles alleine stemmen musste, kam er mit Java sicherlich wesentlich schneller ans Ziel.
    Dafür ist Minecraft nun langsamer, aber Kohle hat es ihm trotzdem ohne Ende eingebracht und falls es mal ein Minecraft 2 geben sollte, dann bin ich zuversichtlich, dass er es mit einem > 50 Mann Team dann in C++ oder ähnliches realisieren wird.

    Hirn einschalten!

    Du widersprichst mir bei dieser Aussage:

    Ähm eigentlich ist Java in der Geschäftswelt heimisch und nicht in der Spielewelt.

    ????

    Dann weise ich das "Hirn einschalten!" mit Recht an dich zurück.



  • Meine Meinung schrieb:

    volkard schrieb:

    Meine Meinung schrieb:

    volkard schrieb:

    Ethon schrieb:

    Ist auch kein Zufall dass Java 100x relevanter ist als C++, egal ob man Java mag oder nicht.

    So wichtig, daß ich kein Java auf dem PC habe. Naja, ich bin aber auch kein Zocker, sonst müßte ich ja wegen der vielen modernen 3d-Spiele Java drauf haben. Mit Minecraft ist Java auf einmal vorn in die Spielewelt eingebrochen, nun gibt es nur noch Browser, Server, Compiler, Office-Suiten, Datenbankmaschinen, Numbercrunching und wissenschaftliche Simulationen, die klar von Java frei oder unbrauchbar sind.

    Ähm eigentlich ist Java in der Geschäftswelt heimisch und nicht in der Spielewelt.

    Dutzende Auftragsentwicklungen werden in Java realisiert, Spiele werden kaum welche geschrieben und Minecraft ist übrigens ein guter Punkt für die Frage.
    Als Indie Entwickler der das am Anfang alles alleine stemmen musste, kam er mit Java sicherlich wesentlich schneller ans Ziel.
    Dafür ist Minecraft nun langsamer, aber Kohle hat es ihm trotzdem ohne Ende eingebracht und falls es mal ein Minecraft 2 geben sollte, dann bin ich zuversichtlich, dass er es mit einem > 50 Mann Team dann in C++ oder ähnliches realisieren wird.

    Hirn einschalten!

    Du widersprichst mir bei dieser Aussage:

    Ähm eigentlich ist Java in der Geschäftswelt heimisch und nicht in der Spielewelt.

    ????

    Dann weise ich das "Hirn einschalten!" mit Recht an dich zurück.

    - Wundere Dich nicht, daß ich auch mal ganze Texte abweise, die nur zu 95% Unfug sind.
    - Ich weiß, wo Java wohnt und warum.

    Soll ich Dir Satz für Satz beibringen, wo Du unrecht hast oder irrelevant sprichst? Nee, hab's aufgegeben, denn tausend Wissenschaftler können nicht widerlegen, was ein Überzeugungsnarr raushauen kann. Darum reicht es mir vollauf, gelegentlich kenntlich zu machen, welche Richtung Zonentaxonomie ist.



  • Ethon schrieb:

    D ist definitivIMHO ein verbessertes C++

    FTFY.



  • kkaw schrieb:

    Ethon schrieb:

    D ist definitivIMHO ein verbessertes C++

    FTFY.

    Was ist denn in C++ besser gelöst als in D?
    Mal die "Mimimi, die Std-Lib funktioniert größtenteils ohne GC nicht"-Problematik ausgenommen?



  • was ist eigentlich der grund wieso mehrfachvererbung in D nicht erlaubt wurde?



  • Ethon schrieb:

    großbuchstaben schrieb:

    ich denke, C++ hat seine beste Zeit erst noch vor sich.

    C++11 ist ein ganz großer Wurf. Für mich der größte Fortschritt seit Einführung der STL.

    Soso, und in welchem Bereich der Zukunft glänzt C++ denn? Im Web? Bei Apps? Bei Desktop-Programmen?

    meiner Erwartung nach dort, wo Eigenschaften wie OOP + generische Programmierung + zero overhead + Libraries wichtig sind. Resourcenkritische Großprojekte. Number crunching. Libraries.



  • asfdlol schrieb:

    was ist eigentlich der grund wieso mehrfachvererbung in D nicht erlaubt wurde?

    Multiple inheritance. It's a complex feature of debatable value. It's very difficult to implement in an efficient manner, and compilers are prone to many bugs in implementing it. Nearly all the value of MI can be handled with single inheritance coupled with interfaces and aggregation. What's left does not justify the weight of MI implementation.

    http://dlang.org/overview.html


Anmelden zum Antworten