Gebt doch endlich mal richtige Gründe gegen die Sprache D an!
-
Da es im anderen Thread wohl nur um Tools, Compilermangel (und somit auch Plattformunabhängigkeitsbegrenzungen) und Entwicklermangel geht,
habe ich mal diesen Thread eröffnet.Hier geht es nur um die Sprache D an sich,
ausgehend davon, daß sich obige probleme wie Tools, Compilermangel usw. in Zukunft von selbst lösen bzw. dann in ein paar Jahren gelöst sind.Also geht mal auf die Sprache selbst direkt ein und sagt mal was ihr an ihr schlecht findet.
-
Natürlich könnt ihr hier auch reinschreiben was ihr an der Sprache D besonders gut findet.
Also Vorteile sind hier ebenfalls erwünscht.
-
Eine 3d Engine wird auch schon in D programmiert und das Ergebnis kann sich sehen lassen.
Die Screenshots sehen zumindest schonmal gut aus.
Kommentar der Entwickler:
* Why use the D programming language? Isn't everyone else using C or C++?
First, D is fast, extremely fast. Depending on the compiler used, as fast as any version of C or C++. Second (and unlike C/C++), D supports all the features you would expect from a modern programming language. Because of this, the average D program is shorter than the same C/C++ program, and written in a more intuitive manner.
-
Wie soll man eine Sprache beurteilen die man noch nie in der Praxis einsetzen konnte weil noch nicht einmal der Compiler etwas taugt?
Und das Zitat kannst du dir schenken, in den C/C++-Compilern steckt Optimierungswissen aus vielen vielen Jahren und da soll der Compiler von D, der nur rudimentär implementiert wurde mithalten können? Das ich nicht lache..
Die Sprache interressiert derzeit keinen, da sie keine Relevanz hat. Sie ist eine Spielwiese nicht mehr und nicht weniger.
Wenn es hart auf hart kommt wird keiner D einsetzen (derzeit).
-
Ich lach mich tot schrieb:
Wie soll man eine Sprache beurteilen die man noch nie in der Praxis einsetzen konnte weil noch nicht einmal der Compiler etwas taugt?
Das erkennt man doch schon an der Sprache selbst!
In D ist z.B. garantiert das eine Konstante auch eine Konstante ist und auch bleibt.
Bei C und C++ ist das nicht der Fall, da kann man mit Macros rumpfuschen und schon ist die schöne Konstante geschichte bzw. hat man den Buffer OVerflow.
So etwas ist Dreck den D nicht hat!Und das Zitat kannst du dir schenken, in den C/C++-Compilern steckt Optimierungswissen aus vielen vielen Jahren und da soll der Compiler von D, der nur rudimentär implementiert wurde mithalten können? Das ich nicht lache..
Die Optimierung des Compilers ist vernachlässigbar zur Entwicklungszeit.
Und D hilft hier enorm, siehe obiges Beispiel bei der man dann nicht extra Fehler suchen muß, weil D weiß was Konstanten sind.Und in 3 Jahren, wenn deine Anwendung vollständig und fertig ist, compilierst du dann deinen gleichen Code einfach nochmal neu und hast eine performante
Anwendung weil der Compiler der der Zwischenzeit deutlich optimiert wurde.Dieses ganze Geseiere gegen fehlende oder nicht Optimierte Compiler ist doch blödsinn, da es eh nur vorübergehend ist.
Die Sprache interressiert derzeit keinen, da sie keine Relevanz hat. Sie ist eine Spielwiese nicht mehr und nicht weniger.
Wenn es hart auf hart kommt wird keiner D einsetzen (derzeit).Wenn ich weiß, das die Entwicklung meiner Software eh erst in 3 oder 5 Jahren fertig ist, dann kann ich in aller Ruhe schon heute D einsetzen und später von den optimierten Compilern profitieren.
Am Ende habe ich dabei Nerven und viel Zeit gespart, weil man mit D einfach viel weniger Fehlersuche machen muß wie bei C und C++ und weil D auch viel weniger Fallstricke bietet.
Man kann sich also auf den Code und auf die Algorithmen konzentrieren und muß sich nicht mit Sprachproblemen abgeben.Und sei doch mal ehrlich, der richtige Alogithmus ist mehr Wert als der Falsche mit einem performanten Compiler.
-
Also konstanten -> String-Literale und so Zeug.
-
Aha und was war jetzt nochmal der Vorteil von D? Ich höre hier gerade die gleichen Argumente wie bei Java oder C# und sehe somit keinen Grund mit D rumzukrampfen wenn ich bei Java und C# bereits eine Top Toolchain habe.
-
Ich kann nicht mehr... schrieb:
Aha und was war jetzt nochmal der Vorteil von D? Ich höre hier gerade die gleichen Argumente wie bei Java oder C# und sehe somit keinen Grund mit D rumzukrampfen wenn ich bei Java und C# bereits eine Top Toolchain habe.
Du scheinst sehr dumm zu sein.
In Java oder C# programmiert jedenfalls kein kommerzieller Spieleentwickler
eine 3d Engine, mit D könntest du das machen, denn als Systemnahe Programmiersprache erlaubt sie dir die Performance die du dafür brauchst.Und lahme Compiler sind ja kein Argument, wenn die in Naher Zukunft Geschichte sind.
-
Mal ein Konstanten Problem bei C++ bzw. C in der Praxis:
Wenn man ein konstantes Struct hat, das Zeiger enthält, dann
"vererbt" sich das const nicht auf diese Zeiger.
Und das heißt: ich kann das Struct so oft const machen, wie ich will,
es wird trotzdem mutieren - nicht das struct selbst, aber die Daten,
auf die es verweist.
-
Hi,
aus Sicherheitsgründen wäre eher Ada zu empfehlen.
Gruß Mümmel
-
Hi,
was bringt die Sicherheit, daß ein const wirklich konstant ist?
Der Compiler soll gegen versehentliche Fehler schützen. Nicht dagegen daß einer bewust falsch spielt. Wenn einer zum Beispiel das Const bewust wegcastet, dann wird er scho wissen warum. Aber C++ und C waren noch nie die Sprachen für den Dödel, sondern immer die Sprachen für den wissenden Entwickler.
Vor lauter Fangnetzen kann man sich auch in denen verfangen.Gruß Mümmel
-
D Fan schrieb:
Ich kann nicht mehr... schrieb:
Aha und was war jetzt nochmal der Vorteil von D? Ich höre hier gerade die gleichen Argumente wie bei Java oder C# und sehe somit keinen Grund mit D rumzukrampfen wenn ich bei Java und C# bereits eine Top Toolchain habe.
Du scheinst sehr dumm zu sein.
In Java oder C# programmiert jedenfalls kein kommerzieller Spieleentwickler
eine 3d Engine, mit D könntest du das machen, denn als Systemnahe Programmiersprache erlaubt sie dir die Performance die du dafür brauchst.Und lahme Compiler sind ja kein Argument, wenn die in Naher Zukunft Geschichte sind.
Wenn einem die Argumente ausgehen fängt man halt an beleidigend zu werden...
Welcher kommerzielle Spieleentwickler entwickelt seine Engine denn in 3D?
Also ich kenne genügend 3D Spiele die auf Java setzen, du scheinbar nicht...
-
Ich lieg aufm Boden... schrieb:
D Fan schrieb:
Ich kann nicht mehr... schrieb:
Aha und was war jetzt nochmal der Vorteil von D? Ich höre hier gerade die gleichen Argumente wie bei Java oder C# und sehe somit keinen Grund mit D rumzukrampfen wenn ich bei Java und C# bereits eine Top Toolchain habe.
Du scheinst sehr dumm zu sein.
In Java oder C# programmiert jedenfalls kein kommerzieller Spieleentwickler
eine 3d Engine, mit D könntest du das machen, denn als Systemnahe Programmiersprache erlaubt sie dir die Performance die du dafür brauchst.Und lahme Compiler sind ja kein Argument, wenn die in Naher Zukunft Geschichte sind.
Wenn einem die Argumente ausgehen fängt man halt an beleidigend zu werden...
Welcher kommerzielle Spieleentwickler entwickelt seine Engine denn in 3D?
Also ich kenne genügend 3D Spiele die auf Java setzen, du scheinbar nicht...
kommerzielle versteht sich
-
D Fan schrieb:
Eine 3d Engine wird auch schon in D programmiert und das Ergebnis kann sich sehen lassen.
Die Screenshots sehen zumindest schonmal gut aus.Nenn mir doch mal wirklich gute Gründe für D, die dessen Nachteile aufwiegen.
Für mich muss eine Sprache in erster Linie erstmal ihre Aufgaben erfüllen. Dafür sind sinnvolle Tools unabdingbar. Ansonsten könnte ich genauso gut auch Assembler mit einen Texteditor schreiben. Ansonsten mag D schöne Ansätze haben (Ich habe bislang keine gefunden die mir gegenüber C++ positiv herausgestochen sind, und nicht durch den kommenden Standard abgedeckt wären - Ganz von den Kinderkrankheiten abgesehen).
Und eine 3D-Engine ist jetzt nichts ausschlaggebendes (das gibt es für jede moderne Sprache).
cu André
-
Kein Mensch will D.
Und die, wo noch mit C rumgurken, warten lieber auf E. :p
-
Also versuchen wir es mal optimistisch und wohlwollend, wie sonst bei einer Innovation, die bereits seit fast 10 Jahren entwickelt wird und die die wenigsten Entwickler aus der Praxis kennen.
D könnte C++ ablösen in der Spieleentwicklung?
D könnte C ablösen in der µP-Programmierung?
D könnte Java/C#/C++ ablösen in der GUI-Entwicklung?Bitte gib uns konkrete Links zu Ansätzen in diesen drei Bereichen, damit wir uns ein Bild machen können.
Ansonsten suche ich immer noch eine vergleichende Übersichtstabelle zumindest zwischen C/C++/D/Java. Gibt es so etwas von den D-Entwicklern?
-
Eine 3d Engine wird auch schon in D programmiert und das Ergebnis kann sich sehen lassen.
Die Screenshots sehen zumindest schonmal gut aus.
Hmm... Bei nem Foto von nem Auto bekommst Du auch nicht heraus, wie es fährt.
-
asc schrieb:
Nenn mir doch mal wirklich gute Gründe für D, die dessen Nachteile aufwiegen.
Lazy Evaluation
Mixins
GC
...
Und wenn du schon Kinderkrankheiten ansprichst, vergiss bitte nicht diese auch bei deiner Beurteilung des kommenden C++-Standards, der irgendwann, in einigen Jahren, implementiert sein wird, zu berücksichtigen...
-
Erhard Henkes schrieb:
Ansonsten suche ich immer noch eine vergleichende Übersichtstabelle zumindest zwischen C/C++/D/Java. Gibt es so etwas von den D-Entwicklern?
Selbstverständlich:
http://www.digitalmars.com/d/2.0/comparison.html
-
muemmel schrieb:
Hi,
aus Sicherheitsgründen wäre eher Ada zu empfehlen.
Gruß Mümmel
Ada suckt im Vergleich zu D.
Beweis hier:
http://home.att.net/~jimmaureenrogers/AdaAdditionToDComparisonTable.htm
-
Konzeptionell ist D vermutlich in Ordnung, auch wenn manche andere Vorstellungen von der idealen Sprache haben. Für mich sind die Handhabbarkeit und die primären Anwendungsfelder wichtig, und da liegen entscheidende Schwachpunkte.
Wie stellt man sich das eigentlich im Entwicklungsteam vor?
Soll D die Sprachen C und C++ substituieren? Diese beiden Sprachen werden doch ebenfalls weiter entwickelt, können gleichzeitig aber auch auf einen gigantischen Fundus an Software zurück greifen, vor allem im GUI-, Netzwerk- und Mikroprozessorbereich.