• Tidak ada hasil yang ditemukan

BAB 2 LANDASAN TEORI 2.1. Games - Aplikasi Permainan Magic Square Pada Platform Android

N/A
N/A
Protected

Academic year: 2019

Membagikan "BAB 2 LANDASAN TEORI 2.1. Games - Aplikasi Permainan Magic Square Pada Platform Android"

Copied!
12
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

2.1. Games

Pada zaman sekarang, permainan (games) sudah menjadi kebutuhan sehari-hari bagi sebagian orang. Seseorang akan merasa kurang lengkap dalam menjalani hari apabila belum memainkan sebuah permainan (game) yang digemarinya. Permainan yang dimainkan dapat berupa permainan konvensional ataupun permainan modern yang menggunakan konsol atau komputer.

2.1.1. Sejarah games

Pada awalnya, game dibuat dengan menggunakan alat elektronik yang bisa berinteraksi dengan manusia / users dengan berbagai format tampilan. Contoh game

pertama kali dibuat pada tahun 1947, idenya berupa “Cathode Ray Tube Amusement Device” dibuat oleh Thomas T. Goldsmith Jr. dan Estle Ray Mann. Dua orang tersebut

(2)

Contoh lain ada pada computer NIMROD pada festival Inggris tahun 1951. Alexander S. Douglas membuat OXO (tic tac toe) untuk sebuah ESDAC di tahun 1952. Tahun 1958, William Higinbotham mengembangkan sebuah game interaktif yang dinamakan “Tennis for Two”. Beberapa mahasiswa dari MIT, Martin Graetz, Steve Russel, dan

Wayne Wiitanen membuat Spacewar pada sebuah computer yang bernama DEC PDP. NIMROD menggunakan sebuah panel cahaya untuk memainkan game yang bernama Nim, OXO menggunakan gambar grafik tampak samping permainan tenis, dan

Spacewar menggunakan gambar vektor untuk menampilkan kapal perang satu sama lain.

Pada tahun 1971, Computer Space telah merilis dan menjual video game

secara komersil yang dioperasikan dengan memasukkan sebuah koin untuk menyewanya. Dibuat oleh Nolan Bushnell dan Ted Dabney, perangkat ini digunakan sebagai standar game. Sistem ini diikuti sistem game lainnya, yaiut versi arcade pada tahun 1972 yang bernama Atari dan Pong yang digunakan sebaagi konsol game yang dimainkan di rumah.

Perkembangan game terus berlangsung hingga sekarang dan makin banyak jenis game yang bisa dimainkan di berbagai platform game dengan grafik yang terus meningkat. Hal ini dibuktikan dengan program game yang lebih kompleks dan tampilan grafik tiga dimensi.

2.1.2. Mobile games

Mobile games adalah video games yang dimainkan di telepon seluler, ponsel cerdas, PDA, komputer tablet, portable media player dan lain-lain. Mobile games tidak termasuk yang dimainkan pada sistem dedicated video game pada konsol-konsol seperti Nintendo 3DS atau Playstation Vita.

(3)

game yang paling banyak dimainkan dan dapat ditemukan di lebih dari 350 juta perangkat di seluruh dunia.

Pada tahun 1999-an muncul lagi trend mobile games dengan game berbasis WAP dan game berbasis SMS. Di era ini, dirilislah game I-Mode, layanan internet nirkabel, yang begitu polpuler di Jepang dan negara lain. Telepon seluler pun sudah mampu digunakan untuk bermain game secara multiplayer karena adanya dukungan jaringan internet. Pada tahun 2001, dengan adanya perkembangan spesifikasi dari telepon seluler, game telah dimainkan pada layar berwarna dengan dukungan grafik yang lebih baik dan sudah mampu untuk di-download. Pada masa itu, pengguna telepon seluler mulai berlomba-lomba membeli dan menyimpan berbagai hiburan ke dalam telepon seluler. Telepon seluler pun berkembang kea rah menggunakan

microcomputer sehingga dukungan grafik dan suara yang lebih baik dapat digunakan pada mobile game. Pada tahun 2003, Nokia memperkenalkan platform N-Gage dan

game online dengan platform tersebut. Hingga saat ini, telah banyak telepon seluler yang mendukung grafik 3D, kualitas suara dan tampilan yang lebih baik, dan memori yang memadai. Berbagai platform pemrograman game (J2ME, Symbian, Windows Mobile, Android, Apple) sudah didukung dengan pustaka yang semakin lengkap.

2.1.3. Klasifikasi / aliran mobile games

Dalam memebuat sebuah game kita terlebih dahulu harus mengetahui jenis game yang akan kita buat. Dari jenis game tersebut kita dapat mengetahui skema dari permainan maupun tujuan sebuah game. Game tersebut terdiri dari 5 jenis (Zechner, 2011), antara lain :

1. Casual games. Merupakan jenis game yang sederhana. Siapa saja dapat memainkannya dengan mudah termasuk para non-gamer. Setiap sesi dapat diselesaikan hanya dalam beberapa menit. Namun dibalik kesederhanaannya tersebut, game ini dapat membuat orang memainkannya selama berjam-jam. 2. Puzzle games. Merupakan jenis game yang berhubungan dengan matematika.

(4)

3. Action and arcade games. Merupakan jenis game yang memerlukan resource

yang besar. Sebagian besar dari permainan ini memberikan visualisasi 3D. Contoh dari jenis ini adalah Exzeus.

4. Tower-defence games. Merupakan jenis games yang bertujuan untuk mempertahankan bangunan/istana/rumah/wilayah dari serangan musuh. Contoh dari jenis ini adalah Robo Defence.

5. Innovation. Merupakan jenis permainan yang menggunakan inovasi terbaru dalam memainkannya. Jenis game ini biasanya menggunakan dan memanfaatkan kemampuan dan fitur pada perangat seperti kamera dan GPS.

2.2. Magic Square

Permainan magicsquare adalah permainan puzzle yang menurut literatur kuno sudah ada di China sejak 2200 SM. Selain itu magic square juga ditemukan di berbagai kebudayaan seperti India kuno dan Mesir kuno. Pada kebudayaan tersebut magic square digunakan sebagai pertanda astronomi dan juga pencegahan terhadap wabah penyakit. Permainan magic square adalah permainan dengan bentuk n x n sel. Pada

magic square normal, angka-angka yang dapat diisikan pada sel tersebut adalah bilangan integer dari 1 hingga n x n.

Dalam menyelesaikan permainan magic square ada beberapa aturan yang harus dipenuhi, yaitu:

1. Angka hanya bisa digunakan sekali. Dengan kata lain angka-angka yang digunakan haruslah unik. Tetapi angka yang digunakan hanyalah angka yang sesuai dengan jumlah kotak pada magic square.

2. Jumlah angka pada setiap kolom, baris dan dua diagonalnya haruslah sama. 3. Jumlah angka-angka tersebut dapat dihitung dengan rumus,

(5)

2.3. Algoritma Breadth First Search

Algoritma breadth first search adalah algoritma pencarian solusi yang melakukan pencarian pada graf atau pohon berakar secara melebar dengan cara mengunjungi simpul secara preorder yaitu mengunjungi suatu simpul kemudian mengunjungi semua simpul yang bertetangga dengan simpul tersebut terlebih dahulu. Simpul yang belum dikunjungi dan bertetangga dengan simpul – simpul yang tadi dikunjungi, demikian seterusnya. (Yomanovian, 2012)

Jika diilustrasikan dalam pohon berakar, maka semua simpul pada x dikunjungi lebih dahulu sebelum simpul-simpul pada x + 1. Algoritma ini memerlukan sebuah antrian (queue) Q untuk dapat menyimpan simpul yang telah dikunjungi.

Secara umum, prinsip pencarian solusi dengan algoritma Breadth First Search (BFS) dimulai dengan simpul akar (simpul akar terlebih dahulu dimasukkan dalam antrian, lalu di pop()), lalu mengekspansi simpul-simpul anak dari dari simpul akar, dan memasukkan simpul anak dalam sebuah antrian. Antrian tadi digunakan untuk memberikan tanda pada simpul – simpul tetangga yang nantinya akan dikunjungi berdasarkan urutan yang ada pada antrian. Penjabaran dari langkah – langkah pada prinsip pencarian solusi dengan algoritma BFS ini adalah sebagai berikut :

- Akar dimasukkan ke dalam antrian (simpul paling awal yang akan dikunjungi terlebih dahulu).

- Simpul yang ada pada awal antrian diambil terlebih dahulu untuk dilakukan pengecekan terhadap status simpul tersebut sebagai solusi permasalahan atau tidak, dan mengekspansi anak-anaknya jika ada.

- Jika simpul yang sudah dicek tadi merupakan solusi permasalahan, perncarian selesai dan hasil dikembalikan.

(6)

- Jika antrian telah kosong dan semua simpul telah dicek maka status pencarian telah selesai dan solusi tidak ditemukan.

- Hal ini dilakukan hingga solusi ditemukan/sampai antrian kosong.

2.4. Android

Android adalah sistem operasi yang didesain sebagai platform open source untuk perangkat mobile. Android merupakan comprehensive platform, artinya Android adalah perangkat lunak dengan stack lengkap untuk perangkat mobile. Android mencakup sistem operasi, middleware dan aplikasi. Bagi pengembang, android menyediakan semua tools dan framework untuk mengembangkan aplikasi dengan mudah dan cepat. Dengan adanya Android SDK (Software Develpment Kit) pengembang aplikasi dapat memulai pembuatan aplikasi pada platform Android dengan menggunakan bahasa pemrograman Java.

Pada awalnya, android adalah milik sebuah perusahaan yang bernama Android. Inc. yang merupakan pendatang baru yang membuat piranti lunak untuk ponsel. Android. Inc. didirikan oleh Andy Rubin, Rich Milner, Nick Sears, dan Chris White pada tahun 2003. Pada Agustus 2005, Google membeli Android. Inc. Kemudian untuk mengembangkan android dibentuklah Open Handset Alliance yang merupakan konsorsium dari lebih dari 30 perusahaan hardware, software, dan telekomunikasi termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan NVidia (Safaat, 2010).

Pada saat perilisan perdana android pada tanggal 5 November 2007, android bersama Open Handset Alliance menyatakan mendukung pengembangan open source

pada perangkat seluler. Di pihak lain, Google merilis kode-kode android di bawah lisensi Apache, sebuah lisensi perangkat lunak dan open platform perangkat seluler. Berikut ini adalah sejarah android pada saat awal diluncurkan,

(7)

2. Tahun 2005 Google membeli Android. Inc. Pada saat itu dunia berpikir bahwa Google akan memproduksi smartphone, namun ambisi Google lebih besar dari itu yaitu untuk membuat sebuah platform yang dapat digunakan di banyak perangkat.

3. Tahun 2007 Open Handset Alliance dibentuk. Android resmi menjadi plarform

open source.

4. Tahun 2008 Android SDK 1.0. dirilis. Google kemudian mengenalkan Nexus One yang menggunakan Android versi 1.0. Ponsel ini diproduksi oleh HTC Coorporation.

5. Tahun 2009 versi baru dari android dirilis, yaitu Cupcake (1.5), Donut (1.6), dan Eclair (2.0 dan 2.1). Pada tahun tersebut, lebih dari 20 perangkat menggunakan android.

6. Tahun 2010 android versi 2.2 dirilis dengan nama Froyo. Android berada pada posisi kedua setelah Blackberry pada penjualan terbanyak platform

smartphone. Pada tahun ini juga, lebih dari 60 perangkat menggunakan sistem operasi android.

2.4.1. Fitur android

Android bukan hanya sekadar distribusi lain dari Linux untuk perangkat mobile. Ketika membangun aplikasi android, kita sama sekali tidak seperti sedang berhadapan dengan kernel Linux. Developer menghadapi platform berdasarkan kernel Linux

dengan bahasa pemrograman Java (Zechner, 2011). Menurut Safaat (2010, hal: 5) android memiliki beberapa fitur , diantanya yaitu :

- Framework Aplikasi yang mendukung penggantian komponen dan reusable.

- Mesin Virtual Dalvik dioptimalkan untuk perangkat mobile.

- Integrated browser berdasarkan open source WebKit.

- Grafis yang dioptimalkan dan didukung oleh libraries grafis 2D dan 3D

(8)

- Media support yang mendukung audio, video, dan gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF), GSM Telephony (tergantung hardware).

- Bluetooth, EDGE, 3G, dan WiFi (tergantung hardware).

- Kamera, GPS, kompas, dan accelerometer (tergantung hardware).

- Lingkungan development yang lengkap dan kaya termasuk perangkat emulator, tools untuk debugging, profil dan kinerja memori, dan plugin untuk IDE Eclipse.

2.4.2. Arsitektur android

Pada prinsipnya, sistem operasi android mirip seperti sebuah kue yang terdiri berbagai lapisan. Setiap lapisan memiliki karakteristik dan tujuan masing-masing. Secara garis besar arsitektur android dapat dijelaskan dan digambarkan pada Gambar 2.1.

Gambar 2.1. Arsitektur Android

(9)

- Linux Kernel

Tumpukan paling bawah dari Android adalah Linux Kernel. Linux kernel

berfungsi untuk mengatur system processing, resource, memory, drivers, dan sistem-sistem operasi Android lainnya.

- Android Runtime

Lapisan setelah Linux kernel adalah Android runtime. Android runtime ini berisi

Core Libraries dan Dalvik Virtual Machine (DVM). Core Libraries mencakup serangkaian inti library Java, artinya Android menyertakan satu set library dasar

yang menyediakan sebagian besar fungsi-fungsi yang ada pada library dasar

bahasa pemrograman Java. Dalvik adalah Java Virtual Machine yang memberi

kekuatan pada sistem Android. Dalvik VM ini dioptimalkan untuk telepon seluler.

Setiap aplikasi yang berjalan pada Android berjalan pada prosesnya sendiri,

dengan instansi dari Dalvik Virtual Machine.

- Libraries

Bertempat di level yang sama dengan Android runtime. Android mendukung beberapa library C/C++ yang digunakan oleh berbagai komponen yang ada pada system Android. Kemampuan ini dapat diakses oleh programmer melewati aplikasiframework Android. Libraries tersebut diantaranya :

1. System C Library. Merupakan implementasi library C standard (libc).

2. Media Libraries. Merupakan library yang mendukung playback dan recording

dari berbagai format multimedia antara lain MPEG4, H.264, MP3, AAC, AMR, JPG, dan PNG.

3. Surface Manager. Merupakan libraries untuk mengatur akses pada layar dan lapisan komposit 2D dan grafis 3D dari berbagai aplikasi.

(10)

6. 3D Libraries. Merupakan implementasi dari OpenGL ES 1.0 yang mendukung akselerasi hardware.

7. Freetype. Merupakan libraries untuk rendering untuk bitmap dan vector font.

8. SQLite. Merupakan libraries basis data relasional yang dapat mendukung system database pada android.

- Application Framework

Android adalah “Open Development Platform” yaitu Android menawarkan kepada pengembang atau memberi kemampuan kepada pengembang untuk membangun aplikasi yang bagus dan inovatif. Pengembang bebas untuk mengakses perangkat keras, akses informasi resources, menjalankan service background, mengatur alarm, dan menambahkan status notifications, dan sebagainya. Pengembang memiliki akses penuh menuju API framework seperti yang dilakukan oleh aplikasi yang kategori inti. Arsitektur aplikasi dirancang supaya kita dengan mudah dapat menggunakan kembali komponen yang sudah digunakan (reuse). Sehingga bisa kita simpulkan Applications Framework ini adalah layer dimana para pembuat aplikasi melakukan pengembangan/pembuatan aplikasi yang akan dijalankan di sistem operasi Android, karena pada providers

yang berupa SMS dan panggilan telepon.

Komponen-komponen yang termasuk di dalam Aplications Frameworks

adalah sebagai berikut : a. Views

b. Content Providers

c. Resource Manager

d. Notification Manager

(11)

- Application

Aplications ini adalah layer dimana kita berhubungan dengan aplikasi saja, dimana biasanya kita download aplikasi kemudian kita lakukan instalasi dan jalankan aplikasi tersebut. Di layer terdapat aplikasi inti termasuk klien email,

program SMS, kalender, peta, browser, kontak, dan lain-lain. Semua apliksi ditulis menggunakan pemrograman Java.

2.4.3. Versi Android

Seperti kebanyakan perangkat lunak, abdroid selalu dikembangkan sehingga android memiliki beberapa versi. Daftar versi android yang telah dirilis hingga tahun 2012 adalah sebagai berikut :

1. Android versi 1.0, dirilis pada tanggal 23 September 2008 2. Android versi 1.1, dirilis pada tanggal 9 Maret 2009

3. Android versi 1.5 (Cupcake), dirilis pada tanggal 30 April 2009 4. Android versi 1.6 (Donut), dirilis pada tanggal 15 September 2009 5. Android versi 2.0/2.1 (Eclair), dirilis pada tanggal 26 Oktober 2009 6. Android versi 2.2(Frozen Yoghurt), dirilis pada tanggal 20 Mei 2010 7. Android versi 2.3 (Gingerbread), dirilis pada tanggal 6 Desember 2010 8. Android versi 3.0 (Honeycomb), dirilis pada tanggal 22 Feburari 2011

9. Android versi 4.0 (Ice Cream Sandwich), dirilis pada tanggal 19 Oktober 2011 10.Android versi 4.1 (Jelly Bean), dirilis pada tanggal 9 Juli 2012

(12)

2.5. Penelitian Sebelumnya

Tabel 2.1. Penelitian sebelumnya

No. Peneliti Tahun Judul

1. Tahir Arazi 2007 Penggunaan Algoritma Runut-balik Pada Pencarian Solusi dalam Persoalan Magic Square

2. Rahadhika Wendar 2007 Penerapan Algoritma Backtracking

dalam Pemecahan Permainan Magic Square

3. Muhammad Anggi Rivai Nasution

Gambar

Gambar 2.1. Arsitektur Android
Tabel 2.1. Penelitian sebelumnya

Referensi

Dokumen terkait

Survey Kepuasan Masyarakat Semester I Tahun 2015 ini dilakukan dengan tujuan untuk mengetahui tingkat kinerja Kecamatan Cambai Kota Prabumulih dalam memberikan pelayanan

Badan usaha angkutan udara dan perusahaan angkutan udara asing yang telah memiliki persetujuan slot penerbangan berjadwal pada periode musim berjalan/berlangsung dan tidak

Penelitian yang dilakukan oleh Oktaviani (20) menyatakan bahwa aktivitas antioksidan yang terkandung dalam buah naga merah meningkat pada saat fermentasi sehinga hal ini

Industri kimia merupakan suatu sistem organisasi usaha yang “profit oriented”, artinya, disamping bertujuan menghasilkan suatu produk yang bermanfaat bagi kemaslahatan

Ada hubungan antara tipe kepribadian menurut hipocrates dengan tingkat kecemasan dalam penyusunan skripsi pada mahasiswa reguler DIV Bidan Pendidik

Sementara itu dilihat dari kategori sikap menunjukkan bahwa masyarakat setuju jika pantai Sivalenta dijadikan daerah tujuan wisata karena mereka juga ikut serta

Dari hasil penelitian ini diharapkan dapat diperoleh data pengaruh keberadaan habitat alami terhadap keanekaragaman serangga penyerbuk pada pertanaman mentimun dan

Usia pensiun rata-rata di Indonesia adalah 55 -60 tahun sementara usia harapan hidup rata-rata adalah 70 tahun. Dengan demikian, Anda harus mempersiapkan biaya