Neue Programmiersprache D hat großes Potenzial


#1

mehr…


#2

Auf diese Sorache freue ich mich schon seit geraumer Zeit, endlich eine rein objektorientierte Sprache mit einer Systemnähe wie C oder C++.

Sollte D sich tatasache so bewähren wie es erwartet wird glaube ich gut daran das D bald die C+±Domäne ablösen wird. Ich kenne einige die einfach auf C++ verzichten weil diese einfach noch zu “schwammig” in der OO ist. Zumindestens behaupten das einige die rein objektorientierte Sprachen wie Java und C# nutzen, inkl. mir :slight_smile:

Ich werd mir aufjedenfall die nächsten tage mal einen ordentlichen Compiler versorgen und mal herukm experimentieren.

Gut Schuß
VuuRWerK :wink:


#3

Wäre schön, wenn du dann mal deine gesammelten Erfahrungen posten könntest. :slight_smile:


#4

in ~1 Woche werd ich mir die auch mal ansehen, bei uns in der HS wirds nen kleinen Kurs dazu geben der aber nur an einem Tag ist


#5

Ich habe im Fundbüro einen Link zu einem eBook “abgegeben”. :wink:


#6

Also nach den ~8h die wir mit D rumgespielt haben kann ich sagen.
Die Sprache ist interessant aber hat noch sehr viele Macken, z.b. geht ref nicht oder auch private Variablen sind trotzdem public.
Ob die Sprache jetzt wirklich C++ ablösen wird bezweifele ich jetzt langsam. Sie hat Vorteile im Vergleich zu C++ durch den GC und auch das keine Headerdateien mehr da sind ist wahrscheinlich gut, aber es gibt genug andere kranke Sachen. zb verschachtelte Methoden

void foo()
{
 void A()
 {
  B(); // error, B() is forward referenced
  C(); // error, C undefined
 }
 void B()
 {
  A(); // ok, in scope
  void C()
   {
     void D()
     {
      A(); // ok
      B(); // ok
      C(); // ok
      D(); // ok
     }
   }
 }
 A(); // ok
 B(); // ok
 C(); // error, C undefined
}

Quelle

auch kommen mir einige Sachen nicht so 100%ig durchdacht vor, zb das es möglich ist Dateien mit dem Aussehen zu schreiben als gäbe es keine Klassen und auch einige Methodenaufrufe sehen mehr nach C aus als nach OOP

import std.stream;
import std.file;

int main (char[][] args) {

/*  char[] file="datei1.txt";
  write(file, "huhu das ist eine Testausgabe
jaaaaaaaa");
  append(file, "buuuuh");

 // write(file, std.string.toString(33));
*/
  auto f = new BufferedFile("C:\\Daten\\D\	exte\\Latein1.txt");
  int[260]  abcs;
  char c;
  while(!f.eof())
  {
    f.read(c);
    abcs[cast(int)c]++;
  }
}

Mein Fazit, vielleicht wird es mal was Gutes aber erstmal abwarten. Derzeit räume ich D keine/kaum Chancen gegen C/C++/Java/C# ein