質問

現実世界のアプリケーションに D を使用している人はいますか?もしそうなら、何に使っていますか?Dで書かれた大きなものはWeb上で見つからないようです。

有名な大ユーザーがいないにもかかわらず、D は私にとって非常に有望な言語のように思えます。 ティオベ, 、かなり人気があります。

役に立ちましたか?

解決

私はコンピューター グラフィックスの分野での研究作業に D を使用しています。私や他の人は、D を使用して行われた研究に基づいて、私たちの分野で論文を出版しました。パフォーマンスが重要な中小規模の研究プロジェクトで間違いなく使用できると思います。いずれにしてもゼロから始めることが多いため、統合を心配する必要のあるレガシー コードがあまりないため、研究作業に最適です。

もう 1 つの人気のある分野は Web サービスのようです。できれば他の誰かがこの分野に誰がいるかについてコメントできると思いますが、ここでも、パフォーマンスが非常に重要であることが多いため、金属にコンパイルされた言語が必要であるという考えがあると思います。サービスは多くの場合、かなり小規模で自己完結型のプロセスであるため、大量の従来の C++ コードとの相互運用は実際には必要でも有用でもありません。したがって、D はドアに足を踏み入れることができます。

D はこのようにして、草の根のフォロワーを獲得し続けるだろうと思います。小規模なプロジェクトで、何らかの理由で C++ のレガシーを捨てて、より楽しく使用でき、おそらくより生産性も高いプログラミング言語を手に入れることができるプロジェクトです。

しかし、膨大な数の草の根ユーザーが存在するまでは、大企業ユーザーの邪魔になることはあまりないだろう。

他のヒント

私はDでバイオインフォマティクスの仕事をしています。私にとって、D について重要なことは、トレードオフに対して非常に冷静なアプローチをとり、利益逓減の原則を認識していることです。

ゼロオーバーヘッドの原則に厳密に準拠する C++ とは異なり、D では、言語をより使いやすくする場合に、パフォーマンス/スペースのコストが小さい可能性がある機能が許可されます。これらには、ガベージ コレクション、各クラスのモニター オブジェクト、実行時の型情報などが含まれます。

Ruby、Python、PHP などとは異なり、D は、スクリプト言語よりも動的ではなく、プログラミングが若干難しい場合でも、C とほぼ同じ速度を実現しようとします。
その結果、開発時間と実行時間の両方がほぼ同等に重要である場合 (私の分野ではほとんどの場合、これが当てはまります) に最適な言語が得られます。

同様に、D は安全性と安全性に対して非常に冷静なアプローチをとっています。柔軟性。プログラマーは基本的に自分が何をしているのかを理解しているが、間違いを犯すことがあるということを前提としています。

C や C++ とは異なり、コード内のあらゆる場所でポインター、安全でないキャスト、手動メモリ管理などを使用したくないことを前提としています。これらはエラーが発生しやすいためであり、複数のコードをふるいにかけたくないことを前提としています。サイズ変更可能な配列を使用するためだけに失敗した場合の -page テンプレートのエラー メッセージ。

Java や他の束縛と規律を重視する言語とは異なり、D は、ポインタ、安全でないキャスト、手動メモリ管理などを使用することもあると想定しています。これは必要悪であり、実際のテンプレートや演算子のオーバーロードなどを処理できる十分な賢​​さを前提としています。難読化されたコードを書かずに済みます。また、失敗して範囲外の配列にアクセスする可能性があるが、特定の状況において安全性と速度の間でどのようなトレードオフを行うべきかはプログラマが最もよく知っていることも想定しています。したがって、配列が境界チェックされるかどうかは、コンパイラ スイッチによって単純に決定されます。

私は、メール サーバー製品を市場に送り出した小規模な会社を 1 つ知っています。彼らは少なくとも 2 人をフルタイムでプロジェクトに従事させていました。

また、IT ビジネスの大手企業では、大規模な社内プロジェクトで D を使用している従業員が数人います。

さらに、ベンチャー資金を求めている企業が 1 社、パートタイムまたはフルタイムで D を使用している小規模企業の従業員数人 (少なくとも 4 人)、そしてコンサルティング市場で積極的に機会を求めている少なくとも 2 人 (私を含む) を知っています。

おそらく私が知っているべきだったいくつかのことは省略しており、おそらく私が聞いたことのないものもいくつかありますが、上記は多かれ少なかれコミュニティを通じて私自身を知っているものであるため、それらはまだ存在しています。

私の現在の収入のほんの一部は D から得ています。

私は Web 開発に D を使用していますが、C/C++ と比較して生産性がかなり高いことがわかりました。もちろん、ruby/php/python をベースにしたフレームワークはたくさんあります。しかし、C と同じくらい高速で、多くのスクリプト言語と同じくらい簡単にプログラムできる必要がある独自のものを開発したい場合は、D が良い選択です。

ハードウェア イン ザ ループ (HIL) テスト環境に D を使用します。これは自動車分野のソフトウェアテスト用です。D は、システム プログラミング言語としてリアルタイム プログラム (Linux リアルタイム拡張 RTAI-LXRT の IRQ ハンドラー) で使用できるため、ここで使用できます。

現在進行中の SWT/JFace の移植により、以前は Java で行っていた作業を D でさらに実行する予定です。

フェイスブック 今日の時点で本番環境で使用していることを発表しました。

私はコンパイル時のコード変換に関する研究で D を使用しています。タプルやミックスインと組み合わせた高度なテンプレートにより、コード変換がはるかに簡単になり、別のツールを必要とせずにコンパイル時にコード変換を実行できるようになります。

物理学者が D を使用して、D のメタプログラミングでプログラムを強化した例がいくつかあります。

ビデオ - カンファレンストーク、物理学者が使用するソースサイトが見つかりませんでした。

当社の (高トラフィック) ネットワーク インフラストラクチャ全体は、D1 と Tango のみに基づいています。私たちはベルリンにある若い新興企業です。 ソシオマンティック.com

私の現在の仕事は、C# を D に変換するシステムです。これはソフトウェア システムを開発する営利プロジェクトの一環です。

のようだ 救済ゲーム は、ゲーム用に大規模な D2 コードベースを持っています (cf. ゲーム エンジンと一緒に D を使用する マヌ・エヴァンス著 - DConf 2013)。

彼らは大企業です。大企業が D を使用していることを知ることは非常に良いことです。

から発売されたゲームの多くは、 ABAゲーム これらは D 1.x で書かれていますが、コンソール ポートは C++ で書き直す必要があると思います。

私は D でかなりの数のゲーム プロトタイプを書いてきましたが、それが自分の利益のために書いたものであり、どれもリリースしたことがないため、それが「現実世界」と言えるかどうかはわかりません。

私は、さまざまなハードウェア テスト ステーションからのテスター プロトコルを、トレーサビリティなどのために標準化された出力形式に変換するソフトウェアを作成しました (そして現在も保守と開発を続けています)。

全部で 5,000 行以上のコードがあり、D 1.x と Phobos ライブラリで書かれています。

D は学ぶのがとても簡単で、(Phobos ライブラリの) いくつかの落とし穴を無視してプログラミングするのは本当に楽しいです。

私は大域最適化アルゴリズムの開発に関する研究プロジェクトに D を使用しました。私はそれをニューラルネットワークの訓練の問題に応用しました。これを「現実世界」と呼ぶかどうかはあなた次第です。

OS X上でDGCCを構築するラッパースクリプトを書きました

http://github.com/davecheney/make-gdc-apple/tree/master

他の DMD プログラマーからの意見も聞きたいです

私はバージョンの 2 番目の標準である D2 を使用しています。私はリアルタイム アプリケーション (3D エンジンなど) を作成しました。

この言語は日に日に強力になっていきます。私の意見では、D は非常に実用的で、すべての組み込み機能、特にメタプログラミング パラダイムが C++ をはるかに超えています。構文がより明確になり、次の強みを利用できます。 関数型プログラミング などの機能を通じて フィルター または 減らす, 、そして最も重要な機能の 1 つは次のとおりです。すべての C ライブラリを使用できます。

間違いなく私のお気に入りの言語であり、広く使われる言語になると確信しています。

この質問に対する即時の答えがないことから何か読み取れると思います。それは、アクティブなスタックオーバーフロー レスポンダーの多くが D を使用していない、またはどれも D を使用していないということです。また、リンク先の TIOBE リストでのランキングのレベルにも少し驚きました。

そうは言っても、Walter Bright はもう何年もこの言語に取り組んでおり、90 年代に Zortech C++ コンパイラで彼がどれほど素晴らしい仕事をしたかを覚えているかなりの数の「フォロワー」がいると思います。また、言語が現在機能的な方向に傾いているように見えることにも注意してください。

D の公式 Web サイトには、現在 D を使用している組織が列挙されています。

http://dlang.org/orgs-using-d.html

Dウィキ 組織のリストも提供されていますが、それは古いものです。

ただ注意深く見てください DConf 話します。

そこにいるほぼ全員がどこかの会社に勤めており、仕事で D を使用しています。

私は社内ツールの一部を Perl から D に書き直すプロジェクトを開始しています。私が D を選んだのは、この言語の設計哲学にとても興奮しているからです。私は長い間プログラミングを行っており、アセンブラから高水準言語 (主に C)、スクリプト言語 (主に Perl) まで、多くの言語を使用してきました。D は、私が長年にわたって熱心に学習した初めての言語です。 。

私がコンパイル言語に移行することにしたのは、主な理由の 1 つであるセキュリティのためです。機能的には、Perl は私が取り組んでいるツールセットでは非常にうまく機能しますが、安全ではありません。スクリプトを実行できる人は誰でも、ツールの読み取り、コピー、および独自の修正バージョンの作成を行うことができます。(実際にそうなのです。) この問題を回避するための回りくどい方法があることはわかっていますが (ある種)、正直に言うと、それらすべてを管理しながら本来の仕事をこなすのに 1 日の時間は十分ではありません。

D で ldmd2 を使用してレイ トレース レンダラーを開始しました。

http://palaes.rudanium.org/SubSpace/render.php

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top