Ist die D-Sprache eine glaubwürdige Alternative zu Java und C ++? Was braucht es, um eine glaubwürdige Alternative zu werden? Sollte ich mir die Mühe machen, es zu lernen? Hat es die Evangelisierung verdient?
Der Hauptgrund, den ich frage, ist, dass mir mit dem neuen C ++ - Standard (c ++ 0x) fast klar ist, dass die Sprache weit über den Punkt hinausgegangen ist, an dem niemand mehr zurückkehren kann, wenn er sie jemals versteht. Ich weiß, dass C / C ++ niemals sterben wird, aber irgendwann müssen wir weitermachen. Sogar COBOL hatte seinen Tag und Java hat C ++ in vielerlei Hinsicht rückgängig gemacht. Was kommt als nächstes? Füllt D die Rechnung?
Antworten:
Was den Erfolg und die Popularität einer Programmiersprache für die reale Softwareentwicklung bestimmt, hängt nur teilweise von der Qualität der Sprache selbst ab. Als reine Sprache hat D wohl viele Vorteile gegenüber C ++ und Java. Zumindest ist es eine glaubwürdige Alternative als reine Sprache, alle anderen Dinge sind gleich.
Für die Softwareentwicklung sind jedoch andere Dinge wichtig - fast mehr als die Sprache selbst: Portabilität (auf wie vielen Plattformen wird sie ausgeführt), Debugger-Unterstützung, IDE-Unterstützung, Standardbibliotheksqualität, dynamische Bibliotheksunterstützung, Bindungen für allgemeine APIs, Dokumentation, Entwickler Community, Dynamik und kommerzielle Unterstützung, um nur einige zu nennen. In jeder Hinsicht steht D hoffnungslos hinter Java, C ++ und C #. Tatsächlich würde ich behaupten, dass es in dieser Hinsicht sogar hinter sogenannten "Skriptsprachen" wie Python, Perl, PHP, Ruby und sogar JavaScript steckt.
Um ehrlich zu sein, können Sie mit D einfach keine plattformübergreifende Großanwendung erstellen. Mit einer unreifen Standardbibliothek wird
keine Unterstützung in modernen IDEs(es gibt Plugins für Visual Studio und Xamarin Studio / MonoDevelop) eingeschränkt Unterstützung für dynamische / gemeinsam genutzte Bibliotheken und wenige Bindungen an andere Sprachen. D ist heute einfach keine Option mehr.Wenn Ihnen das, was Sie von D sehen, gefällt, lernen Sie es auf jeden Fall - es sollte nicht lange dauern, wenn Sie Java und C ++ bereits kennen. Ich denke nicht, dass Evangelisation hilfreich wäre - an diesem Punkt, wenn D erfolgreich sein soll, braucht es wirklich mehr Leute, die es leise nutzen und seine Hauptmängel wie Standardbibliothek und IDE-Unterstützung beheben.
Was C ++ betrifft, so sind sich die meisten einig, dass die Sprache zu komplex ist, aber Tausende von Unternehmen setzen C ++ erfolgreich als Teil eines gesunden Sprachmix ein, indem sie nur eine kleinere, genau definierte Teilmenge der Sprache zulassen. Es ist immer noch schwer, C ++ zu schlagen, wenn sowohl rohe Leistung als auch geringe Speichernutzung erforderlich sind.
quelle