Dプログラミング:始めるための最良のチュートリアル

開示: あなたのサポートはサイトの運営を維持するのに役立ちます!このページで推奨する一部のサービスについては、紹介料を稼ぎます.


Cの後に何が来るのですか?まあ、実際にはC ++、C#、Objective-Cです。でもD.

Dは比較的新しいプログラミング言語です。これは、Cの優れた点をすべて維持し、C派生言語(主にC ++)の利点を追加する試みとして設計されました。.

ただし、C ++はCとの下位互換性を維持していましたが、Dはそうしようとしません。これにより、Dは設計者がCの「弱点」と呼ぶものを残すことができます。

Dの歴史

Walter Brightは、1999年にDの作業を開始しました。Brightは、コンパイラーを製造するソフトウェア会社Digital Marsの所有者です。 Dの最初の公開リリースは2001年でしたが、v1.0リリースは2007年まで来ませんでした.

v1.0リリースの時点までに、この言語にはすでに専用のユーザーベースがありました。コミュニティは、Dの標準ライブラリ(「フォボス」と呼ばれる)に大きく不満を抱いており、2007年にもリリースされた、その代替(「タンゴ」)を開発しました。.

2007年には、下位互換性のないメジャーバージョンであるD2の導入も見られました(現在は正規の「D」です)。 PhobosライブラリはD2リリースの一部として含まれており、Tangoコミュニティが2012年までTangoのD2への移植を完了するまでにかかりました.

D2は2010年頃に安定し、2011年には言語の開発がGitHubに移行しました.

これらのイベントは、開発者の1人によるDの決定的な本のリリースとともに、開発者コミュニティの急速な成長に拍車をかけました。それ以来、言語はますます注目と真剣な使用を得てきました.

言語について

DはCおよびC ++に基づいています。 C / C ++開発者がDに簡単に移行できるように、これらの言語のようにデザインされています。CまたはC ++およびDで有効な構文は、まったく同じです。.

一般原理

Dは、特にC / C ++およびJava開発者にとって、できるだけ使いやすくすることを目的としています.

CまたはC ++には存在しない高レベルの構成と抽象化を提供しますが、「ベアメタル」アクセスを可能にします—文字通りハードウェアのビットを反転する機能、および他の非常に低レベルのプログラミングを実行します.

これは、Pythonなどの高次言語の利点とCの生の力を組み合わせることを目的としています。これはコンパイル言語であるため、CとCの実行速度も備えています++.

Dは、いくつかの主要なプログラミングパラダイムをサポートするように設計されています:オブジェクト指向、関数型、命令型、並行型、およびメタプログラミング.

Dの設計では、具体的には次のようなCおよびC ++言語の機能がいくつか除外されています。

  • 多重継承
  • 名前空間
  • フォワード宣言
  • 含む
  • トリグラフとダイグラフ
  • ビットフィールド.

主な特徴

Dの注目すべき機能は次のとおりです。

  • 単一継承と複数継承の利点のほとんどを提供するインターフェイスを備えた従来のオブジェクト指向.
    • 演算子のオーバーロード、演算子の独自のメソッドを実装するクラスを設計する機能(+、-、*、/)。これにより、たとえば、数値でない2つの要素を一緒に追加することの意味を定義できます。.
  • 関数型プログラミング:
    • ラムダ
    • 閉鎖
    • 不変のデータ構造
    • 純粋な(副作用のない、ステートレスな)関数.
  • 以下を含む高度な関数処理:
    • 入れ子関数
    • 関数リテラル
    • 関数のオーバーロード
    • 仮想関数.
  • インポート可能なモジュール.
  • テンプレートプログラミング.
  • ソースドキュメント.
  • 改善された配列:
    • 配列はファーストクラスのオブジェクトです
    • 配列の次元は配列から利用可能です
    • 配列はサイズ変更可能
    • 配列は境界チェックできます
    • 利用可能ないくつかの異なる配列タイプ:ポインター、静的配列、動的配列、および連想配列.
  • 文字列処理の改善.
  • 範囲.
  • 必要に応じてメモリの割り当てと割り当て解除を明示的に制御する機能を備えた自動ガベージコレクション.
  • 契約.
  • 組み込みの単体テスト.
  • Try-Catch-Finally例外処理

Dリソース

オンライン

公式Dリンク

  • 公式Dウェブサイト
  • Digital Mars:Dの背後にある会社、およびリファレンスコンパイラのメーカー
  • Dフォーラム:ディスカッション掲示板.
  • 消滅した
    • D1ウェブサイト:言語のv1の言語リファレンス。これは、レガシーDコードを扱う場合に役立ちます。また、その開発を文書化した資料がたくさんあるので、言語の背後にある考え方への洞察を提供することができます.

チュートリアル/学習

  • D:初心者向けのチュートリアル:第一言語としてDを学習している人、またはプログラミング能力が限られている人向け
  • Dの初心者向けガイド:ウィキブック。プログラミング能力はあるがCまたはCはできない人向け++
  • D移行ガイド:経験豊富なC / C ++開発者向けのDに関する短いチュートリアル
  • Dによる開発:Dプログラミングリソースを見つけるためのガイド
  • 実用的なDチュートリアル
  • Dプログラミングの基礎
  • 初心者向けチュートリアル
  • DFLチュートリアル
  • Dテンプレートチュートリアル
  • Dプログラミング言語に飛び込む
  • Dベアボーン
  • D(プログラミング言語)
  • Dチュートリアル
  • Dプログラミング言語:はじめに(ビデオ)
  • プログラミングの真のD(ビデオ).

ツール

  • DUB:Dのパッケージマネージャー
  • Dustmite:コード最小化ツール.

  • Dプログラミング言語
  • 学習D
  • Dでタンゴを学ぶ
  • Dクックブック
  • Dでのプログラミング:チュートリアルとリファレンス:Dを第一言語としてプログラミングを学ぶ人向け。オンラインでも無料で入手可能
  • D Web開発.

Dを学ぶべきか?

Dは、毎日ソフトウェアシステムとコードを構築する人々のために設計された強力な言語です。.

コーディングを学んでいるだけなら、Dはおそらく向いていません。 (D言語のドキュメントでは、PythonまたはJavaScriptを初めてのプログラマに推奨しています。)

すでにC、C ++、またはJavaを使用している場合は、おそらくDの有力な候補です。それはあなたにとって理にかなっており、その改善に感謝し、あなたの仕事はその強化されたパワーと使いやすさの恩恵を受けるでしょう。.

参考資料とリソース

コーディングと開発に関連するガイド、チュートリアル、およびインフォグラフィックが他にもあります。

  • C ++開発者向けリソース:より伝統的な言語を使いたい場合は、このページに必要なすべてのツールが用意されています.
  • Objective-Cガイドとリソース:オブジェクト指向の要素を備えたさらに別のCのような言語であるObjective-Cは、Apple製品の開発において非常に重要です。.
  • Swiftの紹介とリソース:これは最新のCライク言語の1つです。プログラミングの未来は?こちらをご覧ください!

どのコードを学ぶべきか?

あなたがコーディングするためにどのプログラミング言語を学ぶべきかについて混乱していますか?私たちのインフォグラフィックをチェックして、あなたは何のコードを学ぶべきですか?

これは、言語のさまざまな側面について説明するだけでなく、「生活のためにJavaプログラミングを行うことでどれだけのお金を稼ぐことができるか」などの重要な質問に答えます。

どのコードを学ぶべきですか?
どのコードを学ぶべきか?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map