extraordinary blog :)

Archive for November, 2010

GAMES PADA PLATFORM SMARTPHONE

Apa itu smartphone?

Sehari-hari kita sering mendengar kata “Smartphone” di koran, majalah dan bahkan saat surfing di internet, kita sering membaca hal-hal yang berhubungan dengan smartphone. Lalu apa sebenarnya smartphone itu? Apa bedanya antara smartphone dan handphone atau ponsel biasa?

Dalam pengertian singkat, smartphone adalah sebuah device yang memungkinkan untuk melakukan komunikasi (seperti nelp atau sms) juga di dalamnya terdapat fungsi PDA (Personal Digital Assistant) dan berkemampuan seperti layaknya komputer.

Dalam perkembangan awal, kita hanya mengenal adanya Handphone dan PDA. Handphone pada umumnya digunakan untuk melakukan komunikasi seperti nelepon sedangkan PDA digunakan sebagai asisten pribadi dan organizer. Dengan PDA kita bisa menyimpan data contact, to do list sampai sinkronisasi antara komputer dan PDA.

Perkembangan selanjutnya PDA mendapatkan kemampuan lain yaitu fitur koneksi wireless sehingga mampu menerima maupun mengirim email, pada saat yang bersamaan juga Handphone mendapatkan penambahan fitur yakni kemampuan untuk mengirim pesan.

Pada akhirnya PDA menambahkan fungsi Handphone pada device-nya, begitupun juga handphone diberikan fitur PDA (yang lebih banyak) di dalamnya, sehingga hasilnya adalah sebuah Smartphone.

Permainan

Permainan merupakan sebuah aktivitas rekreasi dengan tujuan bersenangsenang,

mengisi waktu luang, atau berolahraga santai. Permainan biasanya dilakukan

sendiri atau bersama-sama.

Sudoku

Sudoku adalah permainan yang mirip teka-teki silang dengan aturan permainan

yang sederhana saja. Dalam versi normalnya tersedia 81 kotak yang terdiri atas 9 kolom

dan 9 baris. Kotak besar itu dibagi lagi menjadi 3 x 3. Cara mengisinya adalah dengan

mengisi kotak-kotak tersebut dengan angka dari 1 sampai 9. Syaratnya tidak boleh ada

pengulangan angka dalam 1 kolom, 1 baris, dan juga dalam 1 kotak parsial (sub-grid).

Sebagai permulaan, beberapa kotak telah diisi dengan angka-angka pembuka atau biasa

disebut sebagai soal sudoku. Tugas dari setiap pemain nantinya harus bisa mengisi

setiap kotak yang masih kosong sesuai aturan yang berlaku. Meskipun aturannya

sederhana namun penyelesaian teka-teki ini tidak semudah aturannya. Tentu saja tingkat

kesulitan tiap teka-teki dapat bervariasi.

Teknik Penyelesaian Teka-Teki Sudoku

Dalam penyelesaian teka-teki sudoku telah dikembangan berbagai strategi untuk

mencari solusi jawaban sudoku. Berbagai strategi penyelesaian soal dibuat berdasarkan

tingkat kerumitan soal sudoku. Hal inilah yang nantinya dijadikan landasan bagi penulis

dalam mengembangkan aplikasi permainan sudoku. Berikut ini berbagai macam strategi

yang bisa digunakan yang sudah diurutkan berdasarkan tingkat kerumitan.

1. Teknik Naked Single

contoh jika dalam sebuah baris ataupun kolom sudah terisi delapan kotak

maka untuk kotak kesembilan sudah bisa ditentukan nilainya.

2. Teknik Hidden Naked

Teknik hidden naked merujuk dari hasil pengerjaan teknik eliminasi, yang berarti

bahwa teknik ini bisa diaplikasikan jika teknik eliminasi sudah dijalankan. Teknik ini

nantinya digunakan dengan cara memindai baris, kolom maupun sub grid dari

sebuah yang sudah dipindai dengan teknik eliminasi.

3. Teknik Twins dan Triplets

Teknik berikut ini bukan digunakan untuk menentukan nilai pada suatu kotak

tetapi digunakan untuk memperkecil kemungkinan angka yang muncul sehingga

teknik lain bisa diaplikasikan. Pada setiap baris, kolom atau sub-grid yang dipindai

nantinya akan dicari kemunculan dua angka yang sama (kembar) dari semua

kemunginan yang ada.

Java 2 Mobile Edition

J2ME digunakan untuk pengembangan sistem mikro dan embedded, meliputi

handphone, pager, PDA, dan lain-lain. Teknologi ini kemudian juga dibagi menjadi dua

bagian besar, yaitu teknologi CLDC (meliputi MIDP yang sangat terkenal, Bluetooth, dan

lain-lain) dan teknologi CDC (meliputi JDBC, yaitu teknologi database dan RMI).Salah

satu kelebihan java yang paling signifikan adalah teknologi serta bahasa pemrograman

yang bisa berjalan pada berbagai platform seperti semboyannya, yaitu “Write Once, Run

Everywhere”. Dengan kelebihan ini, para pengembang aplikasi yang sudah terbiasa

mengembangkan aplikasi dalam bingkai kerja J2SE dan J2EE, akan mampu bermigrasi

dengan mudah untuk mengembangkan aplikasi J2ME. Selain itu, Java merupakan

platform yang memiliki banyak keunggulan lain.

Untuk merancang permainan sudoku yang interaktif diperlukan solusi algoritma untuk mengacak (generate) teka-teki sudoku, dari permasalahan tersebut maka dipilihlah algoritma runut-balik. Algoritma Runut-balik (backtracking) adalah algoritma yang berbasis pada DFS (Depth First Search) untuk mencari solusi persoalan secara lebih mangkus. Backtracking, yang merupakan perbaikan dari algoritma brute-force, secara sistematis mencari solusi persoalan di antara semua kemungkinan solusi yang ada. Hanya saja algoritma ini merupakan pencarian yang mengarah ke solusi yang dipertimbangkan saja. Disini kami mencoba menganalisis penggunaan algoritma runut-balik dalam permainan sudoku yaitu untuk proses pengacakan teka-teki sekaligus mencari solusi jawaban dari teka-teki.

Tampilan Aplikasi Permainan

Tampilan atau user interface merupakan salah satu hal terpenting dalam

pembuatan aplikasi karena berhubungan langsung dengan penggunan. Untuk itu dalam

tampilan aplikasi permainan ini dirancang semudah mungkin dalam hal penggunaan dan

semenarik mungkin. Menu utama aplikasi berisi tiga menu yang terdiri dari menu mulai

permainan baru, menu bantuan dan menu keluar. Menu permainan baru digunakan untuk

menuju pilihan tingkat kesulitan, sedang untuk menu bantuan untuk menampilkan aturan

dalam memainkan permainan sudoku kata, dan menu keluar untuk menutup aplikasi.

Gambar 4.1 Tampilan menu utama

Pada menu tampilan tingkat kesulitan, pengguna diharuskan memilih tingkat kesulitan

untuk permainan sudoku. Tingkat kesulitan digunakan untuk menentukan jumlah kotak

yang dijadikan soal, semakin susah tingkat kesulitan yang dipilih semakin banyak kotak

yang dijadikan soal.

Gambar 4.3 Tampilan menu pilihan tingkat kesulitan ‘mudah’

Gambar 4.4 Tampilan menu pilihan tingkat kesulitan ‘sedang’

Dari contoh diatas pada permainan dengan tingkat kesulitan ‘mudah’ terdapat 41 kotak

yang dijadikan soal. Jumlah ini sesuai dengan jumlah soal yang diharuskan ada pada

permainan dengan tingkat kesulitan ‘mudah’ (Lihat tabel 3.4). Sedangkan untuk

permainan dengan tingkat kesulitan ‘sedang’ terdapat 49 soal.