Sequence Diagram

Class Diagram

Use Case

Membuat Aplikasi Blackberry Pertama

Membuat Aplikasi Android Pertama

Penggunaan Array pada C#

Maaf baru sempat ngisi nya, :D

Array merupakan kumpulan beberapa nilai yang bertipe sama. Berbeda dengan list, Array memiliki index yang dapat secara langsung membaca nilai yang kita kehendaki.

Berikut akan dibahas seputar array dalam C#.

1. Inisialisasi

Agar dapat digunakan, array harus diinisialisasi terlebih dahulu. beberapa cara inisialisasi array dalam c#:

a. int [] data;
b. int [] data = new int[4];
c. int [] data = new int [4] {3, 5, 6, 7};
d. int [] data = {3, 5, 6, 7};


Pada C#, array juga dapat diinisialisasi secara implisit tanpa menuliskan tipe data tertentu. Compiler akan menentukan tipe data terbaik dari array yang telah disediakan. Misal:

var  names = new [] {"John","Budi","adam","Bayu","Kiki"};

artinya variabel names merupakan array bertipe string dengan length 5.

C# juga akan mengubah tipe data yang sesuai dengan anggota array tersebut, misal:

var  value= new [] {1, 2, 0.5, 0.6, 99.999};

maka variabel value merupakan array dengan tipe data double dengan length 5.

2. Cara Mengakses Array C#

Untuk mengakses array dapat menggunakan pengulangan seperti pada bahasa pemrograman yang lain. Contoh:

for(int i = 0; i< names.length; i++)
{
    Console.WriteLine(names[i]);
}


Catatan : index dari array dimulai dari 0, jika kita mengakses array dengan index melebihi ukuran array maka akan terjadi exception ArrayIndexOutOfBounds. Contoh :

Console.WriteLine(names[5]);

5 merupakan index untuk anggota array ke 6 sehingga index 5 telah berada di luar array.

Selain dengan pengulangan, untuk mengakses array juga dapat menggunakan foreach statement. Contoh:

foreach(string name in names)
{
        Console.WriteLine(name);
}


maka hasilnya akan tampil:
John
Budi
adam
Bayu
Kiki

Java ME User input Output Handling

Kelas Kelas yang berhubungan dengan User Input Output Java ME

1. Kelas Display

Kelas ini digunakan untuk menentukan di Aplikasi mana kelas Displayable akan di gambar. Dua method utama yang digunakan untuk menghandle user input output dari kelas ini adalah:

getDisplay(MIDlet m)
setCurrent(Displayable nextDisplayable)


getDisplay(MIDlet m) digunakan untuk mendapatkan kelas midlet yang akan digunakan untuk menggambar kelas Displayable misalnya Canvas.

Sedangkan setCurrent(Displayable nextDisplayable) digunakan untuk menentukan kelas Displayable mana yang akan ditampilkan pada layar.

Kelas Displayable yang paling umum digunakan adalah kelas Canvas.


2. Kelas Canvas

Kelas Canvas merupakan sebuah kelas turunan (inheritance ) dari Kelas Displayable. Kelas canvas digunakan untuk menampilkan method-method yang dipangil pada kelas Graphics misalnya:

drawLine(x, y, x+w, y);
fillRect(x, y, w, h); // 1
drawRect(x, y, w, h); // 2
drawString(String str, int x, int y, int anchor)
drawImage(Image img, int x, int y, int anchor)


Method yang lebih lengkap dapat dilihat di Doc Java ME.

Beberapa method akan dijabarkan dan digunakan pada bab berikut nya,


Kelas Canvas juga merupakan kelas abstract. Kelas Abstract adalah kelas yang memiliki method virtual/ abstract yang akan dibahas pada bab Object Oriented Programming. Kelas ini harus diturunkan pada kelas lain dengan meng-overide method abstract nya untuk dapat menggunakan fungsi dan method kelas tersebut.

Method-method yang perlu di-overide sbb:

showNotify()

//method yang akan dipanggil ketika user kembali ke applikasi setelah interrupt terjadi

hideNotify()

//method yang akan dipanggil ketika terjadi interruption pada aplikasi

keyPressed()

//method yang akan dipanggil ketika tombol di tekan

keyRepeated()

//method yang akan dipanggil ketika tombol ditekan secara terus menerus

keyReleased()

//method yang akan dipanggil ketika tombol dilepas

pointerPressed()
//method yang akan dipanggil ketika screen disentuh

pointerDragged()
//method yang akan dipanggil ketika screen didrag

pointerReleased()

//method yang akan dipanggil ketika screen tidak disentuh lagi

paint()

//method yang digunakan untuk menggambar graphics.


Draw String pada Aplikasi Java ME

Draw Image Pada Aplikasi Java ME

Object Oriented Programming

Object-oriented programming (Pemrograman berorientasi objek) merupakan paradigma pemrograman yang memandang semua hal berhubungan dengan aplikasi yang dikembangkan ke dalam bentuk objek yang menyerupai keadaan di dunia nyata. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek, sehingga memudahkan pengembang melihat suatu masalah dan menyelesaikan nya.

Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.

Konsep dasar dari Pemrograman Berorientasi Objek 


Attribute
Attribute merupakan ciri dasar dari sebuah object/ Kelas yang menandai karakteristik khusus dari kelas tersebut. Misalnya Kelas Mobil, maka attribut nya dapat berupa Jenis, tahun, merk, warna, dll.

Method
Method merupakan sekumpulan intruksi yang dijalankan oleh sebuah kelas untuk mencapai tujuan tertentu. Misalnya pada object Mobil, maka method nya dapat berupa Berjalan, Belok kanan, Belok Kiri, Mundur, Hidupkan Lampu, dll.


Pemrograman orientasi-objek menekankan konsep berikut:

Kelas
merupakan kumpulan atas attributdata dan method dalam suatu unit untuk suatu tujuan tertentu. Kelas digunakan untuk menciptakan object-object yang berperan dalam seuatu aplikasi.

Abstraksi
Kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam sistem melayani sebagai model dari "pelaku" abstrak yang dapat melakukan kerja, laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.

Enkapsulasi
Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak; hanya metode dalam objek tersebut yang diberi izin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.

Polimorfisme
Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan; metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesan tersebut dikirim. Contohnya, bila sebuah burung menerima pesan "gerak cepat", dia akan menggerakan sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama, namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut polimorfisme karena sebuah variabel tungal dalam program dapat memegang berbagai jenis objek yang berbeda selagi program berjalan, dan teks program yang sama dapat memanggil beberapa metode yang berbeda di saat yang berbeda dalam pemanggilan yang sama. Hal ini berlawanan dengan bahasa fungsional yang mencapai polimorfisme melalui penggunaan fungsi kelas-pertama.




Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita tidak melihat bagaimana cara menyelesaikan suatu masalah tersebut (terstruktur) tetapi objek-objek apa yang dapat melakukan pemecahan masalah tersebut. Sebagai contoh anggap kita memiliki sebuah departemen yang memiliki manager, sekretaris, petugas administrasi data dan lainnya. Misal manager tersebut ingin memperoleh data dari bagian administrasi maka manager tersebut tidak harus mengambilnya langsung tetapi dapat menyuruh petugas bag administrasi untuk mengambilnya. Pada kasus tersebut seorang manager tidak harus mengetahui bagaimana cara mengambil data tersebut tetapi manager bisa mendapatkan data tersebut melalui objek petugas adminiistrasi. Jadi untuk menyelesaikan suatu masalah dengan kolaborasi antar objek-objek yang ada karena setiap objek memiliki deskripsi tugasnya sendiri.