Verwendet da draußen jemand D für reale Anwendungen? Wenn ja, wofür verwenden Sie es? Ich kann anscheinend nichts Großes im Web finden, das in D geschrieben ist.
Trotz des Mangels an bekannten großen Benutzern scheint mir D eine sehr vielversprechende Sprache zu sein, und laut TIOBE ist sie ziemlich beliebt.
d
popularity
wvdschel
quelle
quelle
Antworten:
Ich benutze D für meine Forschungsarbeit im Bereich Computergrafik. Ich und andere haben Artikel in unseren Bereichen veröffentlicht, die auf Arbeiten basieren, die mit D durchgeführt wurden. Ich denke, es ist definitiv bereit für kleine bis mittlere Forschungsprojekte, bei denen es auf Leistung ankommt. Es eignet sich gut für Forschungsarbeiten, da Sie ohnehin oft von vorne anfangen und daher nicht viel Legacy-Code für die Integration benötigen.
Ein weiterer beliebter Anwendungsbereich scheinen Webdienste zu sein. Hoffentlich kann jemand anderes kommentieren, wer sich in diesem Bereich befindet, aber auch dort denke ich, dass die Leistung oft wirklich wichtig ist, sodass Sie eine auf den Metall kompilierte Sprache wünschen. Services sind oft recht kleine, in sich geschlossene Prozesse, daher ist die Interaktion mit großen Mengen an altem C ++ - Code nicht wirklich notwendig oder nützlich. So kann D seinen Fuß in die Tür bekommen.
Ich denke, D wird auf diese Weise weiterhin Basis-Follower gewinnen - bei kleineren Projekten, die es sich aus irgendeinem Grund leisten können, das C ++ - Erbe aufzugeben, um eine Programmiersprache zu erhalten, deren Verwendung viel angenehmer und möglicherweise auch produktiver ist.
Aber bis es eine große Anzahl von Basisbenutzern gibt, wird den großen Unternehmensbenutzern, die ich vermute, nicht viel im Wege stehen.
quelle
Ich arbeite in der Bioinformatik in D. Für mich ist das Wichtigste an D, dass es einen sehr besonnenen Ansatz für Kompromisse verfolgt und das Prinzip der sinkenden Rendite anerkennt.
Im Gegensatz zu C ++, das sich strikt an das Null-Overhead-Prinzip hält, ermöglicht D Funktionen, die möglicherweise geringe Leistungs- / Platzkosten verursachen, wenn sie die Sprache wesentlich benutzerfreundlicher machen. Dazu gehören die Speicherbereinigung, ein Überwachungsobjekt für jede Klasse, Informationen zum Laufzeittyp usw.
Im Gegensatz zu Ruby, Python, PHP usw. versucht D, fast so schnell wie C zu sein, auch wenn es weniger dynamisch und etwas schwieriger zu programmieren ist als Skriptsprachen.
Das Ergebnis ist eine Sprache, die optimal ist, wenn sowohl die Entwicklungszeit als auch die Ausführungszeit ungefähr gleich wichtig sind, was in meinem Bereich die meiste Zeit der Fall ist.
In ähnlicher Weise verfolgt D einen sehr besonnenen Ansatz in Bezug auf Sicherheit und Flexibilität. Es wird davon ausgegangen, dass Programmierer im Grunde wissen, was sie tun, aber Fehler machen.
Im Gegensatz zu C und C ++ wird davon ausgegangen, dass Sie nicht überall in Ihrem Code Zeiger, unsichere Casts, manuelle Speicherverwaltung usw. verwenden möchten, da diese fehleranfällig sind, und es wird davon ausgegangen, dass Sie Multi nicht durchsuchen möchten -Fehler der Seitenvorlage, wenn Sie es vermasseln, nur um Arrays mit veränderbarer Größe zu verwenden.
Im Gegensatz zu Java und anderen Bondage-and-Disziplin-Sprachen geht D davon aus, dass Zeiger, unsichere Casts, manuelle Speicherverwaltung usw. manchmal ein notwendiges Übel sind, und geht davon aus, dass Sie klug genug sind, um mit echten Vorlagen, Überladung von Operatoren usw. ohne Schreiben umzugehen verschleierter Code. Es wird auch davon ausgegangen, dass Sie ein Array außerhalb der Grenzen vermasseln und darauf zugreifen können, der Programmierer jedoch am besten weiß, welcher Kompromiss zwischen Sicherheit und Geschwindigkeit in einer bestimmten Situation zu treffen ist. Daher wird einfach durch einen Compiler-Schalter bestimmt, ob Arrays gebunden sind.
quelle
Ich kenne eine kleine Firma, die ein Mailserver-Produkt auf den Markt gebracht hat. Sie hatten mindestens 2 Leute, die Vollzeit an dem Projekt arbeiteten.
Ein wichtiger Akteur im IT-Geschäft hat auch mehrere Mitarbeiter, die D in größeren internen Projekten einsetzen.
Außerdem kenne ich ein Unternehmen, das Risikofinanzierung sucht, mehrere (mindestens 4) Mitarbeiter in kleineren Unternehmen, die D entweder teilweise oder in Vollzeit einsetzen, und mindestens ein Paar (einschließlich mir), das aktiv nach Möglichkeiten auf dem Beratungsmarkt sucht.
Ich habe wahrscheinlich einige ausgelassen, von denen ich hätte wissen sollen, und wahrscheinlich einige, von denen ich noch nichts gehört habe, aber das gibt es immer noch, da die oben genannten mehr oder weniger diejenigen sind, die ich selbst über die Community kenne.
Ein kleiner Prozentsatz meines laufenden Einkommens stammt von D.
quelle
Ich benutze D für die Webentwicklung und es hat sich im Vergleich zu C / C ++ als viel produktiver erwiesen. Natürlich gibt es viele Frameworks, die auf Ruby / PHP / Python basieren. Wenn Sie jedoch etwas Einzigartiges entwickeln möchten, das auch so schnell wie C und fast so einfach zu programmieren sein muss wie in vielen Skriptsprachen, dann ist D eine gute Wahl.
quelle
Ich verwende D für eine HIL-Testumgebung (Hardware in the Loop). Dies ist für Softwaretests im Automobilbereich. D kann hier verwendet werden, da es als Systemprogrammiersprache möglich ist, in Echtzeitprogrammen (IRQ-Handler in einer Linux-Echtzeiterweiterung RTAI-LXRT) verwendet zu werden.
Mit dem laufenden Port von SWT / JFace habe ich vor, mehr zu tun und in D zu arbeiten, was ich vorher in Java getan hätte.
quelle
Facebook gab bekannt, dass sie es ab heute in der Produktion verwenden.
quelle
Ich verwende D in der Forschung über die Übersetzung von Zeitcode. Das erweiterte Templating in Kombination mit Tupeln und Mixins erleichtert die Codeübersetzung erheblich und ermöglicht die Codeübersetzung während der Kompilierungszeit, ohne dass ein separates Tool erforderlich ist.
Es gibt einige Beispiele für Physiker, die D verwenden, um ihre Programme mit Metaprogrammierung in D zu erweitern.
Video - Konferenzgespräch, konnte keine Quelle für Physiker finden.
quelle
Unsere gesamte (stark frequentierte) Netzwerkinfrastruktur basiert nur auf D1 und Tango. Wir sind ein junges Startup-Unternehmen in Berlin: sociomantic.com
quelle
Meine aktuelle Arbeitsaufgabe ist ein System zur Übersetzung von C # in D. Dies ist Teil eines gewinnorientierten Projekts zur Entwicklung eines Softwaresystems.
quelle
Nun, ich habe ein paar Forschungsarbeiten in D geschrieben, genau wie andere.
http://www.digitalmars.com/pnews/read.php?server=news.digitalmars.com&group=digitalmars.D.announce&artnum=13337
http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D.announce&article_id=9466 .
quelle
Es scheint, dass Remedy Games eine große D2-Codebasis für ihre Spiele hat (vgl. Verwenden von D neben einer Game Engine von Manu Evans - DConf 2013).
Sie sind eine große Firma, zu wissen, dass eine große Firma D verwendet, ist sehr gut.
quelle
Viele der von ABA Games veröffentlichten Spiele sind in D 1.x geschrieben, obwohl ich mir vorstelle, dass die Konsolenports in C ++ neu geschrieben werden mussten.
Ich habe einige Spielprototypen in D geschrieben, bin mir aber nicht sicher, ob dies als "reale Welt" qualifiziert ist, da ich sie zu meinem eigenen Vorteil geschrieben und nie einen veröffentlicht habe.
quelle
Ich habe eine Software für die Konvertierung von Testerprotokollen von verschiedenen Hardwareteststationen in ein standardisiertes Ausgabeformat für Rückverfolgbarkeit und ähnliches geschrieben (und ich pflege und entwickle sie immer noch).
Insgesamt über 5.000 Codezeilen, geschrieben mit D 1.x und der Phobos-Bibliothek.
D ist so einfach zu erlernen und es ist eine wahre Freude, einige Fallstricke (in der Phobos-Bibliothek) zu ignorieren.
quelle
Ich habe D für mein Forschungsprojekt zur Entwicklung eines globalen Optimierungsalgorithmus verwendet. Ich habe es auf das Problem des Trainings neuronaler Netze angewendet. Es liegt an Ihnen, ob Sie diese "reale Welt" nennen möchten.
quelle
Ich habe ein Wrapper-Skript geschrieben, das DGCC unter OS X erstellt
http://github.com/davecheney/make-gdc-apple/tree/master
Ich würde gerne von anderen DMD-Programmierern da draußen hören
quelle
Ich benutze D2, den zweiten Standard der Version. Ich habe Echtzeitanwendungen geschrieben (zum Beispiel 3D-Engine).
Die Sprache wird von Tag zu Tag mächtiger. D ist sehr pragmatisch und alle eingebetteten Funktionen, insbesondere das Metaprogrammierungsparadigma, machen es meiner Meinung nach weit über C ++ hinaus. Die Syntax ist klarer, Sie können die Stärke der funktionalen Programmierung durch Funktionen wie Filtern oder Reduzieren nutzen und eine der wichtigsten Funktionen: Sie können alle C-Bibliotheken verwenden.
Auf jeden Fall meine Lieblingssprache, und ich bin mir ziemlich sicher, dass es eine verbreitete Sprache sein wird.
quelle
Ich nehme an, wir können etwas über das Fehlen sofortiger Antworten auf diese Frage lesen, und das heißt, dass nicht viele / keine der aktiven Stackoverflow-Responder D verwenden. Ich war auch ein wenig überrascht über die Höhe des Rankings in der TIOBE-Liste, die Sie erstellt haben Link zu.
Trotzdem arbeitet Walter Bright seit einigen Jahren an der Sprache, und ich glaube, er hat eine ganze Reihe von "Followern", die sich daran erinnern, was für eine gute Arbeit er in den 90er Jahren mit dem Zortech C ++ - Compiler geleistet hat. Ich stelle auch fest, dass sich die Sprache jetzt in Richtung der funktionalen Richtung zu neigen scheint.
quelle
Auf der offiziellen Website des D sind die Organisationen aufgeführt, die derzeit D verwenden.
Das D-Wiki bietet auch eine Liste von Organisationen, die jedoch veraltet sind.
Beobachten Sie die DConf- Gespräche genau .
Fast alle Menschen dort arbeiten für eine Firma und verwenden D bei der Arbeit.
quelle
Ich beginne ein Projekt, um einige unserer internen Tools von Perl auf D umzuschreiben. Ich habe mich für D entschieden, weil ich von den Designphilosophien der Sprache ziemlich begeistert bin. Ich habe lange programmiert und viele Sprachen verwendet, von Assemblern über High-Level (meistens C) bis hin zu Skriptsprachen (meistens Perl), und D ist die erste Sprache, die mich seit vielen Jahren begeistert hat .
Ich habe mich aus einem Hauptgrund für eine kompilierte Sprache entschieden - Sicherheit. Funktionell funktioniert Perl für das Toolset, an dem ich arbeite, recht gut, aber es ist unsicher - jeder, der ein Skript ausführen kann, kann auch seine eigene modifizierte Version des Tools lesen, kopieren und erstellen. (Und sie tun es.) Ich weiß, dass es umständliche Methoden gibt, um dieses Problem zu umgehen, aber um ehrlich zu sein, habe ich nicht genug Stunden am Tag, um all das zu bewältigen und trotzdem meine Hauptaufgabe zu erledigen.
quelle
Ich habe einen Raytrace-Renderer in D mit ldmd2 gestartet.
http://palaes.rudanium.org/SubSpace/render.php
quelle