D Programming - Overview


D programming language is an object-oriented multi-paradigm system programming language developed by Walter Bright of Digital Mars. Its development started in 1999 and was first released in 2001. The major version of D(1.0) was released in 2007. Currently, we have D2 version of D.

D is language with syntax being C style and uses static typing. There are many features of C and C++ in D but also there are some features from these language not included part of D. Some of the notable additions to D includes,

  • Unit testing
  • True modules
  • Garbage collection
  • First class arrays
  • Free and open
  • Associative arrays
  • Dynamic arrays
  • Inner classes
  • Closures
  • Anonymous functions
  • Lazy evaluation
  • Closures

Multiple Paradigms

D is a multiple paradigm programming language. The multiple paradigms includes,

  • Imperative
  • Object Oriented
  • Meta programming
  • Functional
  • Concurrent


import std.stdio; 
void main(string[] args) { 
   writeln("Hello World!"); 

Learning D

The most important thing to do when learning D is to focus on concepts and not get lost in language technical details.

The purpose of learning a programming language is to become a better programmer; that is, to become more effective at designing and implementing new systems and at maintaining old ones.

Scope of D

D programming has some interesting features and the official D programming site claims that D is convinient, powerful and efficient. D programming adds many features in the core language which C language has provided in the form of Standard libraries such as resizable array and string function. D makes an excellent second language for intermediate to advanced programmers. D is better in handling memory and managing the pointers that often causes trouble in C++.

D programming is intended mainly on new programs that conversion of existing programs. It provides built in testing and verification an ideal for large new project that will be written with millions of lines of code by large teams.