D untuk Pemula

From GameDevID

Jump to: navigation, search

Contents

Pengenalan Singkat D

D adalah bahasa setingkat JAVA dan C# yang juga memiliki kemampuan Garbage Collector. Yang membedakan JAVA, C# dan D adalah D tidak menggunakan VM(Virtual Machine) seperti pada JAVA dengan J2RE(Runtime) atau C# dengan Microsoft Framework .NET

Keterangan lebih lengkap: http://www.digitalmars.com/d

Library atau Pustaka yang tersedia untuk pemograman bahasa D

Pustaka dasar

Phobos

Phobos adalah pustaka standar yang disediakan dalam paket kompiler bahasa D.

Contoh kode dengan Phobos yaitu:

//Written in D Programming Language
import std.stdio; // untuk fungsi writef dan writefln
import std.c.stdio; //untuk memanggil fungsi standar stdio yg digunakan pada C

void main()
{
  printf("Satu 1"); //cara penggunaan sama dengan yang ada pada bahasa C
  writef("Dua 2"); //cara penggunaan mirip dengan stdio di bahasa C
  writefln("Tiga 3"); //cara penggunaan mirip writef, bedanya ln dibelakang = line feed atau seperti '\n'.
  
}
Tango

Tango merupakan pustaka alternatif dan pengganti Phobos(pustaka standar bahasa D). Tango dikhususkan untuk pengembangan aplikasi server, tetapi juga dapat digunakan untuk pengembangan aplikasi desktop biasa.

Contoh kode dengan Tango yaitu:

//Written in D Programming Language
import tango.stdc.stdio; //printf
import tango.io.Console; //Cout
import tango.io.Stdout;  //Stdout

void main()
{
  printf("Satu\n");
  Cout("Dua").newline; //for text output only
  Stdout.formatln("Hello {0}", "World"); //Yg ini penggunaannya mirip dengan yg dibahasa C#
}

Pustaka Lainnya

Selain pustaka diatas juga terdapat beberapa pustaka lainnya, Beberapa diantaranya yg masih aktif dikembangkan antara lain:

  • DFL (D Framework Library)

DFL merupakan pustaka khusus untuk antarmuka grafis jendela berbasis Windows. DFL merupakan pustaka terpopuler kedua setelah DWT.

  • DWT

DWT merupakan pustaka antarmuka grafis jendela yang merupakan modifikasi dari SWT dari JAVA.

  • Derelict

Derelict merupakan bundel atau kumpulan pustaka-pustaka yang umum dikenal orang dalam pengembangan aplikasi multimedia dan grafis. Saat ini Derelict mendukung SDL, OpenGL, OpenAL, FreeType, ODE, DevIL, Vorbis OGG.

  • DDBI

DDBI merupakan pustaka khusus untuk pemograman database di bahasa D. Pustaka ini mendukung database mySQL, SQLite, MSSQL, ORACLE, ODBC, Interbase, MSQL, Postgree

IDE/Editor untuk bahasa D

Karena hingga kini bahasa D belum mempunyai IDE atau editor resmi, maka semua orang dapat menggunakan IDE atau editor apa saja untuk membuat programnya. Beberapa editor yg dapat digunakan antara lain:

  • Poseidon (Windows)
Editor yg dikembangkan dengan bahasa D dan DWT(D Widget Toolkit).

Image:Poseidon.GIF

Download Forum

  • Dcode (Windows)
Editor yg dikembangkan dengan bahasa D dan DFL(D Framework Library).
Image:Dcode.GIF

Download

  • Entice (Windows)
Editor untuk membantu mendesain tampilan jendela aplikasi berbasis DFL dan DWT dengan cara Drag-n-Drop. Entice secara otomatis akan membuat susunan code sesuai rancangan pengguna.
Image:Entice.GIF

Download

  • Emacs (Multiplatform)

Compiler D

Kompiler yg saat ini tersedia untuk bahasa D

  • DMD (DigitalMars D)
    • OS : Windows, Linux
    • membutuhkan: DMC (Digitalmars C/C++) untuk Windows atau GCC untuk Linux
  • GDC (GNU D Compiler)
    • OS : Linux
    • Membutuhkan: GCC atau turunannya.

Tutorial D

Pada tutorial ini akan menggunakan:

  • 'Tango' sebagai pustaka utama,
  • 'rebuild' sebagai tool untuk mempermudah kompilasi. Penggunaan rebuild akan memudahkan kompilasi program yang menggunakan banyak pustaka.

Hello World

Pertama-tama buatlah file dengan nama 'hello.d' dengan kode:

1 import tango.io.Stdout;
2 int main()
3 {
4    Stdout.format("Teman saya bernama {0}. {0} kuliah di {1} pada jurusan {2}", "Herry", "universitas X", "Akuntansi");
5    return 0;
6 }

Penjelasan kode:

  • Pada nomor 1, import tango.io.Stdout;

import adalah keyword yang digunakan untuk mengimpor file modul. Setiap perintah dalam D harus diakhiri dengan tanda titik koma.

  • Pada nomor 2, int main()

main() merupakan fungsi utama yang dijalankan pada saat program di inisialisasi.

  • Pada nomor 3 dan 6

{ dan } merupakan blok pembuka dan blok penutup yang berfungsi mengawali penulisan perintah-perintah dan mengakhiri penulisan perintah-perintah.

  • Pada nomor 4 Stdout.format();

Stdout.format() ini berfungsi untuk menampilkan teks ke layar pada command prompt

  • Pada nomor 5 return 0;

return berfungsi untuk mengembalikan nilai suatu fungsi.

Penggunaan Array

Contoh penggunaan array asosiasi bertipe string. string di sini sama dengan char[]

  string[string] foo()
  {
      string isi[string] isi; //penggunaan array asosiasi bertipe string
      isi["kaki_4"] = "kambing";
      isi["kaki_2"] = "ayam";
      isi["melata"] = "ular";
      return isi;
  }

Dan untuk memanggil fungsi ini:

  foreach(string key, string value; foo)
  {
     Stdout.format("Isi[{}] = {}", key, value);
  }

Maka hasil yang muncul di layar adalah:

Isi[kaki_4] = kambing
isi[kaki_2] = ayam
isi[melata] = ular

Operasi File

Operasi file untuk menyimpan nilai asosiatif array bertipe string ke dalam file

import tango.io.File;
import tango.text.Util;
...
File(path).write(array.keys.join("\n") ~ array.values.join("\n"));
...

Dengan kode di atas kita tidak memerlukan fungsi foreach.

External Links

emacs mode untuk D programming language

Personal tools