Ergebnis 1 bis 20 von 21

Thema: Let's D

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Zitat Zitat von Kyuu Beitrag anzeigen
    Abgesehen davon, dass Ds Zielgruppe offiziell als intermediate und advanced bezeichnet wird (Who D Is Not For), die Sprache sich aber dennoch viel besser für Neulinge eignet als C++, da viel konsistenter und fehlersicherer, würde mich dann doch interessieren, welche Nachteile sich D bei C++ sonst abgeguckt haben soll?
    Naja, "besser geeignet als C++" ist nicht wirklich so schwierig. XD Aber ja, sonst fällt mir eh nicht wirklich was ein. ^^" Von Java kommend hat mich wohl einfach gestört, dass sich die Sprache mehr an C++ als an Java hält. Und aufgrund der Einstiegsschwierigkeiten habe ich mich dann auch nicht so sonderlich lang damit beschäftigt.
    Zitat Zitat
    Du scheinst da mehr zu wissen als ich. Darf ich fragen wieso es unwahrscheinlich ist?
    Frag' mal Mog, der hat mir damals einen halbstündigen Vortrag darüber gehalten. XD
    Aber grundsätzlich imo einfach, weil die Informatik so nicht funktioniert, "es kommt eine bessere Sprache und wird benutzt". Vielleicht bei Skript-Sprachen noch eher, aber in dem Feld? C ist in sehr vielen Bereichen noch immer am weitesten verbreitet, selbst außerhalb von Systemprogrammierung, obwohl mit C++ schon längst eine deutliche bessere Alternative verfügbar ist.
    Aber ist natürlich nur mein Tipp. *shrug*

  2. #2
    Zitat Zitat von drunken monkey Beitrag anzeigen
    Naja, "besser geeignet als C++" ist nicht wirklich so schwierig. XD Aber ja, sonst fällt mir eh nicht wirklich was ein. ^^" Von Java kommend hat mich wohl einfach gestört, dass sich die Sprache mehr an C++ als an Java hält. Und aufgrund der Einstiegsschwierigkeiten habe ich mich dann auch nicht so sonderlich lang damit beschäftigt.
    Um nochmal den Unsinn deines Argumentes zu betonen (ohne dich persönlich angreifen zu wollen ), kann man es folgendermaßen zusammenfassen: "D hat sich bei C++ abgeguckt keine Einstiegssprache zu sein!"
    Also bitte...

    Mich würde aber trotzdem noch interessieren wieso D "von Java kommend" ist und was du in D vermisst, was in Java vorhanden ist. Ich möchte pauschale Aussagen soweit es geht vermeiden, deshalb solltest du schon konkreter werden, damit die Leser auch wissen was genau du meinst.

    Zitat Zitat von drunken monkey Beitrag anzeigen
    Frag' mal Mog, der hat mir damals einen halbstündigen Vortrag darüber gehalten. XD
    Na dann leite ich die Frage weiter an Mog.

    Zitat Zitat von drunken monkey Beitrag anzeigen
    Aber grundsätzlich imo einfach, weil die Informatik so nicht funktioniert, "es kommt eine bessere Sprache und wird benutzt". Vielleicht bei Skript-Sprachen noch eher, aber in dem Feld? C ist in sehr vielen Bereichen noch immer am weitesten verbreitet, selbst außerhalb von Systemprogrammierung, obwohl mit C++ schon längst eine deutliche bessere Alternative verfügbar ist.
    Aber ist natürlich nur mein Tipp. *shrug*
    Erstens: Ich denke nicht, dass jede neue Sprache sofort zum Standard erklärt wird, da gibt es wohl ein Missverständnis.
    Fakt ist, dass D bis jetzt sehr gut ankam, was nicht selbstverständlich ist.
    Fakt ist, dass eine neue Sprache gewünscht wird, die C++ ersetzen kann und da bietet sich D in jedem Aspekt an.
    Fakt ist, dass D als eine ernstgemeinte, moderne, industriefähige Systemsprache entwickelt wird und kein Gag ist.
    Fakt ist, dass D bereits eine stabile Version erreicht hat, was wiederum essentiell ist, um die Sprache überhaupt professionell gesehen zu erwägen.
    Fakt ist, dass schon zum jetzigen Zeitpunkt Interesse gezeigt wird. An meiner Hochschule gibt es bereits interessierte Professoren, die es erwägen D bei ihren Arbeiten einzusetzen. Ich denke, dass es an anderen ähnlich ist.
    C++ ist veraltet (und selbst C++0x wird nicht dauerhaft zufriedenstellen) und kann ohne viel Erfahrung sehr grauenhaft werden. Es gibt Leute, die halten die Sprache sogar für einen Rückschritt im Vergleich zu C.
    All das berücksichtigt, denke ich, dass D sehr gute Chancen hat C++ als Industriestandard zu ersetzen. Wann das passieren wird, können ich und du und Mog nicht sagen, da ein Wechsel von C++ zu D nicht von einem Tag auf den anderen passieren kann und Interessenten erst gut abwägen werden, ob sich ein Wechsel so schnell lohnt. Wahrscheinlich werden sie erst noch einige Jahre abwarten, bis D sich noch weiter etabliert hat und es die ersten kommerziellen Präzedenzfälle gibt. Ds Entwickler räumen selbst ein, dass es realistisch gesehen Unsinn ist Millionen Zeilen C/C++-Code nach D zu konvertieren, alte Projekte also kaum davon profitieren werden. Bis genügend neue Projekte komplett in D entstehen, kann noch eine Weile dauern.

    Zweitens: C++ lohnt sich nicht in allen Bereichen, weswegen heute noch C stattdessen eingesetzt wird, ist also nicht wirklich eine "deutlich bessere Alternative". Dann ist da noch das Wartungsproblem: Einmal C, immer C. Das gleiche Problem findest du auch bei anderen Programmiersprachen.
    C komplett zu ersetzen ist also ein weitaus schwierigeres Unterfangen, als es vergleichsweise bei C++ der Fall ist. Glücklicherweise versucht D aber nicht C vom Thron zu stürzen, im Gegenteil, D hat absolut kein Problem damit, mit C zu koexistieren.

    Ach übrigens: Wie funktioniert denn die Informatik? Mit ein Bisschen Glück hat dir Mog hier auch einen halbstündigen Vortrag gehalten.

  3. #3
    Wenn schon habe ich erklaert, warum der Markt D mit hoher Wahrscheinlichkeit nicht akzeptieren wird, und warum ich als Projektleiter D lange keine Chance geben wuerde.

    Nicht alles, was in einer Plauderrei technisch und durchdacht toent, ist eine Prognose ....

  4. #4
    Zitat Zitat von Kyuu Beitrag anzeigen
    Um nochmal den Unsinn deines Argumentes zu betonen (ohne dich persönlich angreifen zu wollen ), kann man es folgendermaßen zusammenfassen: "D hat sich bei C++ abgeguckt keine Einstiegssprache zu sein!"
    Also bitte...
    Äh, ja, möglicherweise. XD
    Gut, ich gebe zu, ich habe mich mit D nicht genug beschäftigt, um fundiert mitreden zu können. ^^" Mir hat die Sprache eigentlich auch ziemlich gefallen, von der Feature-Liste, aber so richtig warm geworden bin ich dann doch nicht mit ihr.
    Muss wohl jeder für sich probieren. *shrug*
    Zitat Zitat
    Mich würde aber trotzdem noch interessieren wieso D "von Java kommend" ist und was du in D vermisst, was in Java vorhanden ist.
    Nicht D ist von Java kommend (eben ganz im Gegenteil), sondern ich. Daher liegt mir die C++-artigere Herangehensweise eben nicht so, also auch bloßer Geschmack.
    Beispiel wären Templates, grauenhafte Templates…x__X
    Zitat Zitat
    Ach übrigens: Wie funktioniert denn die Informatik? Mit ein Bisschen Glück hat dir Mog hier auch einen halbstündigen Vortrag gehalten.
    Man gibt ein paar Nullen und Einsen in eine Maschine, drückt auf Start, flucht, werkelt – unterbrochen von einigen Schlägen und Tritten auf die Maschine – einen halben Tag und hat am Ende mit ein bisschen Glück etwas das zwar nicht wirklich funktional, aber zumindest interessant ist. ^^
    Zitat Zitat von Mog Beitrag anzeigen
    Wenn schon habe ich erklaert, warum der Markt D mit hoher Wahrscheinlichkeit nicht akzeptieren wird, und warum ich als Projektleiter D lange keine Chance geben wuerde.

    Nicht alles, was in einer Plauderrei technisch und durchdacht toent, ist eine Prognose ....
    Wenn du sagst, dass etwas mit hoher Wahrscheinlichkeit passiert, ist das doch eine Prognose. o_O"


    Aber gut, ich verabschiede mich hier wohl besser wieder, bevor ich meinen ganzen imaginären Ruf verliere. XD

  5. #5
    Zitat Zitat von drunken monkey Beitrag anzeigen
    Nicht D ist von Java kommend (eben ganz im Gegenteil), sondern ich. Daher liegt mir die C++-artigere Herangehensweise eben nicht so, also auch bloßer Geschmack.
    Beispiel wären Templates, grauenhafte Templates…x__X
    Ah, da habe ich wohl etwas falsch verstanden, sorry.

    Aber ich gebe zu, es ist nachvollziehbar, wenn du nach Java Sprachen wie C++ oder D als unangenehm oder schwierig empfindest. Java hat nunmal eine ganz andere Philosophie.

  6. #6
    Ich hab die Tutorials aus Zeitmangel noch nicht angesehen, aber ersteinmal schon sehr vielen Dank fuer deine Muehen und die Zusammenfassung:

    Trotzdem hab ich ein paar sehr kurze Fragen:

    Gibt es:
    * Operatorenueberladung ?
    * Templates ?
    b = a; b.x=5; a.x == 5 ? Ist operator= bei Klassen standardmaessig Copy-Operator (also separater Speicher) oder Copy of Reference ?

    Geändert von Ineluki (28.09.2009 um 06:55 Uhr)

  7. #7
    Zitat Zitat von Ineluki Beitrag anzeigen
    Operatorenueberladung ?
    http://www.digitalmars.com/d/2.0/ope...erloading.html

    Zitat Zitat von Ineluki Beitrag anzeigen
    Templates ?
    http://www.digitalmars.com/d/2.0/template.html

    Zitat Zitat von Ineluki Beitrag anzeigen
    b = a; b.x=5; a.x == 5 ? Ist operator= bei Klassen standardmaessig Copy-Operator (also separater Speicher) oder Copy of Reference ?
    Bei Klassen wird standardmäßig die Referenz kopiert. Bei Strukturen wird bitweise kopiert.
    Objekte werden übrigens auch standardmäßig auf dem Heap alloziert. Um explizit auf dem Stack zu allozieren, wird das Schlüsselwort scope vorangestellt.
    Code (D):
     
    class A {
        int v;
    }
     
    void main() {
        auto a1 = new A; // a1 ist auf dem Heap alloziert
        scope a2 = new A; // a2 ist auf dem Stack alloziert
    }
     


    Edit: Sieht aus, als würde euer Syntaxhighlighter nicht alle D-Schlüsselwörter umfassen. :/

    Geändert von Kyuu (28.09.2009 um 09:38 Uhr)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •