APLIKASI KAMUS BAHASA DAYAK NGAJU INDONESIA BERBASIS ...
Transcript of APLIKASI KAMUS BAHASA DAYAK NGAJU INDONESIA BERBASIS ...
i
APLIKASI KAMUS BAHASA DAYAK NGAJU – INDONESIA
BERBASIS ANDROID MENGGUNAKAN METODE HASH
SKRIPSI
Diajukan untuk memenuhi salah satu syarat
Memperoleh Gelar Sarjana Komputer
Program Studi Teknik Informatika
Oleh :
Henfriyandie
065314057
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS dan TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2013
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
DAYAK NGAJU – INDONESIAN APPLICATION DICTIONARY
BASED ON ANDROID USING HASH METHOD
A THESIS
Presented as Partial Fulfillment of the Requirments
To Obtain the Sarjana Komputer Degree
In Informatic Engineering Department
By :
Henfriyandie
065314057
DEPARTEMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2013
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
HALAMAN PERSETUJUAN
SKRIPSI
APLIKASI KAMUS BAHASA DAYAK NGAJU – INDONESIA
BERBASIS ANDROID MENGGUNAKAN METODE HASH
Oleh :
Henfriyandie
NIM : 065314057
Telah disetujui oleh :
Dosen Pembimbing Tugas Akhir
Puspanintyas Sanjoyo Adi, S.T., M.T. Tanggal : …………..
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
HALAMAN PENGESAHAN
SKRIPSI
APLIKASI KAMUS BAHASA DAYAK NGAJU – INDONESIA
BERBASIS ANDROID MENGGUNAKAN METODE HASH
Dipersiapkan dan ditulis oleh :
Henfriyandie
NIM : 065314057
Telah dipertahankan di depan Panitia Penguji
Pada Tanggal 10 Mei 2013
Dan dinyatakan memenuhi syarat
Susunan Panitia Penguji
Nama Lengkap Tanda Tangan
Ketua JB. Budi Darmawan, S.T., M.Sc. ………………
Sekertaris Eko Hari Parmadi, S.Si., M.Kom. ………………
Anggota Puspaningtyas Sanjoyo Adi, S.T., M.T. ………………
Yogyakarta , ………………
Fakultas Sains dan Teknologi
Universitas Sanata Dharma
Dekan
P.H. Prima Rosa, S.Si., M.Sc.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
HALAMAN PERSEMBAHAN
“If A is success in life, then A = x + y + z. Work is x; y is
play; and z is keeping your mouth shut “
- Albert Einstein -
Skripsi ini saya persembahkan untuk
Tuhan Yesus Kristus.
Almarhum Papah di surga, Mamah, 3 Adek saya.
Teman hidup saya nanti.
Sahabat dalam susah juga duka dan teman –teman.
TERIMA KASIH
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
PERNYATAAN KEASLIAN KARYA
Saya menyatakan sesungguhnya bahwa skripsi yang saya tulis ini tidak
memuat karya orang lain kecuali telah disebutkan dalam kutipan atau daftar pustaka,
sebagaimana layaknya karya ilmiah
Yoyakarta, 18 Juli 2013
Penulis,
Henfriyandie
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
PERNYATAAN PERSETUJUAN
PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :
Nama : Henfriyandie
NIM : 065314057
Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas
Sanata Dharma karya ilmiah saya yang berjudul :
Aplikasi Kamus Bahasa Dayak Ngaju – Indonesia
Berbasis Android Menggunakan Metode Hash
Berserta perangkat yang diperlukan(bila ada). Dengan demikian saya memberikan kepada
Perpustakaan Universitas Sanata Dharma hak untuk menyimpan mengalihkan dalam bentuk media
lain, mengelola dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan
mempublikasikanya di internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin
dari saya maupun memberikan royalty kepada saya selama tetap mencantumkan nama saya sebagai
penulis.
Demikian pernyataan ini saya buat dengan sebenarnya
Dibuat di Yogyakarta
Pada tanggal : 18 Juli 2013
Yang menyatakan,
(Henfriyandie)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
ABSTRAK
APLIKASI KAMUS BAHASA DAYAK NGAJU - INDONESIA BERBASIS
ANDROID MENGGUNAKAN METODE HASH
Sistem operasi android adalah salah satu sistem operasi mobile phone yang
sedang berkembang saat ini. Sistem operasi ini bersifat open source, sehingga
aplikasi ini dapat dibuat dan dikembangkan sendiri. Sehingga kita dapat membuat
sendiri aplikasi yang dapat membantu kita, contohnya kamus dan aplikasi
pembelajaran lainnya.
Pada skripsi penulis ini mencoba memecahkan bagaimana menangani masalah
yaitu memanfaatkan teknologi mobile yang mulai berkembang untuk membuat
aplikasi kamus yang dapat mempermudah kita dalam mempelajari bahasa dayak
Ngaju. Dalam pembuatan aplikasi ini penulis menggunakan metode hash, proses
penyusunan kamus pada aplikasi ini menggunakan fungsi hash metode pembagian
sisa string (division remainder method) sedangkan untuk penanganan tabrakan pada
penyusunan kamus menggunakan metode double hashing. Fungsi Hash bertugas
untuk menghitung indeks array yang berasal dari perhitungan kunci (indeks array dari
perhitungan kunci disebut kode hash).
Aplikasi yang dibangun tersebut dapat mempermudah melakukan pencarian
kata dan padanan kata yang ingin dicari. Hasil pengujian software dengan fungsi hash
metode pembagian sisa string dari 2500 data kata, yang terdapat pada kamus Dayak
Ngaju – Indonesia dan kamus Indonesia - Dayak Ngaju, terdapat sekitar kurang dari
setengah kata dari 2500 kata yang mengalami tabrakan pada saat penyusunan kamus
tersebut dari panjang hashtable sebesar 2507. Berdasarkan pengujian dengan
mengubah panjang hashtable, jumlah tabrakan semakin berkurang jika panjang
hashtable bertambah besar.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRACT
APPLICATION DAYAK NGAJU – INDONESIAN DICTIONARY BASED ON
ANDROID USING HASH METHOD
Android operating system is one of mobile phone operating system that is
being developed at this time. This operating systemis open source, so that these
applications can be created and independently developed. So we can create our own
applications that can helpus. For example, dictionaries Application and other
eLearning applications.
In this thesis author is trying to figure out how to handle problems that take
advantage of emerging mobile technologies to create a dictionary application that can
facilitate us to study Dayak Ngaju language. Within manufacture this application
author use hash method, the process of preparing dictionaries application's uses hash
function division remainder string method and for collision handling in the
preparation of dictionaries using method double hashing. Hash functions assigned to
calculate array index are derived from calculations of key (index array from key
calculation called the hash code)
Applications built to facilitate searching and matching search terms. Results
of software testing with division remainder string hash function method from 2500
words of data contained in Dayak Ngaju dictionaries - Indonesian and Indonesian
dictionaries - Dayak Ngaju, There are about less from a half words from 2500 words
that in a collision during the preparation of the dictionaries with hashtable length is
2507. Based on testing by changing hashtable length, the amount of collision will
decreasing if the length hashtable gets larger.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
KATA PENGANTAR
Puji syukur kepada Tuhan Yesus Kristus yang telah memberikan karunia dan
kesempatan sehingga penulis dapat menyelesaikan skripsi dengan judul “Aplikasi
Kamus Bahasa Dayak Ngaju – Indonesia Berbasis Android Menggunakan Metode
Hash”
Penyusunan skripsi ini tidak lepas dari semua pihak yang turut memberikan
dukungan dan doa, semangat yang sangat bermanfaat bagi penulis. Pada kesempatan
ini penulis mengucapkan terima kasih sebesar – besarnya kepada :
1. Bapak Puspaningtyas Sanjoyo Adi S.T.,M.T. Selaku dosen pembimbing
senantiasa memberikan masukan dan bantuan dalam membimbing penulis
untuk menyelesakan skripsi ini.
2. Segenap dosen Universitas Sanata Dharma yang telah membantu memberikan
bekal pengetahuan kepada penulis .
3. Bapak Makikit S.P., MMA(Alm), Ibu Maryatie S.Pd terima kasih atas
semngat dan dukunganya serta pejuanganya.
4. Adik – adik yang dengan tulus memberikan perhatian, doa dan dukungan
yang sangat besar.(Nani, Melan, Septi).
5. Erita Marlina Naibaho terima kasih atas semangat dan telah membantu saya
untuk bangun pagi setiap hari.
6. Anak – Anak telat gaul Kost Monjali, Khususnya Andrew, Igma, Mas Titis,
Johanes Calvin dan seluruh sahabat yang tidak dapat penulis sebutkan satu
persatu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
7. Teman teman TIM ANDROID Siska, Putri, Itha, Laurin atas kerja sama dan
masukan – masukanya
8. Teman teman angkatan 06, terutama Yosefa, Margareta Korlina, Kristi
Wahyu, Angga, dan juga Rangga. Terima kasih atas dukungan dan inpirasi
semangat kalian
9. Teman teman angkatan 07,08,09, dan anak – anak nongkrong di lab Basis
Data Multimedia serta rekan – rekan yang tidak dapat penulis sebutkan atas
kesediaanya dalam memberikan masukan, menemani dan mendengarkan
keluh kesah dari penulis.
Penulis menyadari bahwa masih banyak kekurangan yang terdapat pada skripsi
ini. Saran dan kritik penulis harapkan untuk kebaikan bersama. Semoga
bermanfaat.
Yogyakarta, 18 Juli 2013
Penulis
(Henfriyandie)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
DAFTAR ISI
HALAMAN JUDUL ............................................................................................................ i
HALAMAN PERSETUJUAN ............................................................................................. iii
HALAMAN PENGESAHAN .............................................................................................. iv
HALAMAN PERSEMBAHAN .......................................................................................... v
PERNYATAAN KEASLIAN KARYA .............................................................................. vi
PERNYATAAN PERSETUJUAN ...................................................................................... vii
ABSTRAK ............................................................................................................................ ix
KATA PENGANTAR ......................................................................................................... x
DAFTAS ISI ........................................................................................................................ xii
DAFTAR GAMBAR ........................................................................................................... xiii
BAB I PENDAHULUAN .................................................................................................... 1
1.1 Latar Belakang Masalah ..................................................................................... 1
1.2 Rumusan Masalah .............................................................................................. 2
1.3 Batasan Masalah ................................................................................................. 2
1.4 Tujuan ................................................................................................................ 2
1.5 Manfaat .............................................................................................................. 3
1.6 Metodologi Penelitian ........................................................................................ 3
1.7 Sistematika Penulisan ........................................................................................ 5
BAB II LANDASAN TEORI .............................................................................................. 8
2.1 Bahasa Pemrograman Java ................................................................................. 8
2.2 Metode Hash ....................................................................................................... 9
2.3 Kamus ................................................................................................................ 22
2.4 Bahasa Dayak Ngaju .......................................................................................... 31
2.5 Bentuk Susunan Kamus Bahasa Dayak Ngaju ................................................... 32
2.6 Android ............................................................................................................... 37
BAB III ANALISIS DAN DESAIN .................................................................................... 50
3.1 Analisis Kebutuhan Aplikasi............................................................................... 50
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
3.2 Fungsi Hash Yang Digunakan ............................................................................ 51
3.3 Pseudocode Metode hash .................................................................................... 55
3.4 Diagram Alir ....................................................................................................... 59
3.5 Arsitektur Aplikasi ............................................................................................. 61
3.6 Use Case Diagram ............................................................................................. 62
3.7 Diagram Aktivitas .............................................................................................. 66
3.8 Sequence Diagram .............................................................................................. 71
3.9 Diagram Kelas .................................................................................................... 76
3.10 Model Desain Antar Muka Aplikasi ............................................................... 77
BAB IV IMPLEMENTASI DAN PENGUJIAN ................................................................. 86
4.1 Spesifikasi Perangkat Keras dan Lunak ............................................................. 87
4.2 Implementasi Desain Antar Muka ..................................................................... 88
4.3 Implementasi Diagram Kelas ............................................................................. 88
4.4 Pengujian ............................................................................................................ 110
BAB V KESIMPULAN DAN SARAN ............................................................................... 119
5.1 Kesimpulan ........................................................................................................ 119
5.2 Saran ................................................................................................................... 120
DAFTAR PUSTAKA .......................................................................................................... 122
LAMPIRAN ......................................................................................................................... 123
Lampiran I ................................................................................................................. 123
Lampiran II ................................................................................................................ 127
Lampiran III .............................................................................................................. 133
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
DAFTAR GAMBAR
Gambar 2.1 Keungulan Bahasa Pemrograman java .................................................. 9
Gambar 2.2 Contoh Linear Probing ......................................................................... 14
Gambar 2.3 Contoh Double Hashing ....................................................................... 16
Gambar 2.4 Metode Chaining .................................................................................. 18
Gambar 2.5 Karakter ASCII ..................................................................................... 21
Gambar 3.1 Contoh data yang dimasukan ke dalam Tabel Hash ............................. 53
Gambar 3.2 Struktur Data Hash Table setelah dilakukan proses Double
Hashing .................................................................................................................... 54
Gambar 3.3 Diagram Alir Penyusunan Kamus Bahasa Dayak Ngaju ..................... 59
Gambar 3.4 Diagram Alir Penyusunan Kamus Bahasa Indonesia ........................... 60
Gambar 3.5 Arstektur Aplikasi Kamus Bahasa Dayak Ngaju – Indonesia............... 62
Gambar 3.6 Diagram Use Case Kamus .................................................................... 63
Gambar 3.7 Diagram Aktifitas Mencari arti kata ..................................................... 66
Gambar 3.8 Diagram Aktifitas Mengupdate Database Kamus ................................ 67
Gambar 3.9 Diagram Aktifitas Menganti Modulu ................................................... 68
Gambar 3.10 Diagram Aktifitas Menganti Konstanta ............................................. 69
Gambar 3.11 Diagram Aktifitas Tampil Tabrakan ................................................... 70
Gambar 3.12 Sequence Diagram Mencari Arti Kata Dayak – Indonesia ................ 71
Gambar 3.13 Sequence Diagram Mencari Arti Kata Indonesia – Dayak ................. 71
Gambar 3.14 Sequence Diagram Mengupdate Database Kamus ............................. 72
Gambar 3.15 Sequence Diagram Ganti Modulu ...................................................... 73
Gambar 3.16 Sequence Diagram Ganti Konstanta .................................................. 74
Gambar 3.17 Sequence Diagram Tampil Tabrakan Kata Bahasa Dayak ................ 75
Gambar 3.18 Sequence Diagram Tampil Tabrakan Kata Bahasa Indonesia ........... 75
Gambar 3.19 Diagram Kelas User ............................................................................ 76
Gambar 3.20 Diagram Kelas Admin ......................................................................... 77
Gambar 3.21 Desain Tampilan Menu Utama .......................................................... 78
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
Gambar 3.19 Desain Tampilan Kamus ..................................................................... 79
Gambar 3.20 Desain Tampilan Update ..................................................................... 80
Gambar 3.21 Desain Tampilan Ganti Modulu ......................................................... 81
Gambar 3.22 Desain Tampilan Menu Utama .......................................................... 82
Gambar 3.23 Desain Tampilan Kamus .................................................................... 83
Gambar 3.24 Desain Tampilan Update .................................................................... 84
Gambar 3.25 Desain Tampilan Tentang .................................................................. 85
Gambar 4.1 Grafik Tabrakan Kata Dayak Ngaju .................................................... 113
Gambar 4.2 Grafik Tabrakan Kata Indonesia ......................................................... 115
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Komunikasi adalah salah satu dari kemampuan alamiah manusia.Kemampuan
komunikasi manusia ini kemudian ditunjang oleh alat untuk berkomunikasi yaitu
bahasa.Manusia dapat saling berkomunikasi dengan baik apabila menggunakan
bahasa yang sama atau saling memahami bahasa yang digunakan satu sama lain.
Masalah yang di hadapi dalam berkomunikasi adalah ketika dua orang yang
berbeda bahasa dan berkomunikasi dalam bahasa mereka sendiri. Jalan keluarnya
adalah dengan belajar mengerti bahasa yang digunakan oleh orang lain tersebut.
Berdasarkan masalah penulis ingin membuat suatu aplikasi Kamus Bahasa
Dayak Ngaju – Indonesia yang dapat membantu dapat berkomunikasi
menggunakan bahasa Dayak Ngaju maupun bahasa Indonesia.Bahasa Indonesia
dan Bahasa Dayak Ngaju penulis pilih dikarenakan bahasa Indonesia adalah
bahasa resmi, sedangkan bahasa Dayak Ngaju adalah pengantar yang digunakan
masyarakat Kalimantan Tengah.
Perkembangan teknologi mobile phone tersebut juga diiringi dengan
perkembangan teknologi sistem operasi pada mobile phonetersebut.Sistem operasi
android adalah salah satu sistem operasi mobile phone yang berbasis pada
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
linux.Sistem operasi android bersifat open source, Android menyediakan platform
yang terbuka bagi pengembang untuk membuat sendiri aplikasi yangmereka
inginkan.Beberapa aplikasi android yang populer banyak di kembangkan sendiri
oleh pengembang dan dapat digunakan di sistem operasi mobile phone berbasis
android.
Metode Hash adalah salah satu metode yang menggunakan pengalokasian
kunci pada proses pencarian, penyimpanan dan penghapusan pada elemen –
elemen data.Hash digunakan untuk menyimpan data yang cukup besar pada
Abstract Data Type(ADT) yang di sebutHash Table.
Aplikasi Kamus Bahasa Dayak Ngaju – Bahasa Indonesia ini dibuat dengan
menggunakan Metode Hash dalam proses penyusunan dan pencarian terjemahan
dari katayang akan diterjemahkan. Metode ini akan sangat membantu karena
struktur data dalam hash menggunakan pengalokasian kunci dan dengan kunci
tersebut kita dapat mencari nilai(value) berdasarkan kunci tersebut.
1.2 Rumusan Masalah
Berdasarkan latar belakangmasalah yang ada, dapat disimpulkan rumusan
masalah pada tugas akhir ini adalah
1. Bagaimanakah membuat “Aplikasi Kamus Bahasa Dayak Ngaju –
Indonesia Berbasis AndroidMenggunakan Metode Hash”?
2. Bagaimana Algoritma Hash dapat memberikan solusi untuk proses
penyusunan kata serta arti kata dan proses pencarian kata serta padanan kata ?
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
1.3 Batasan Masalah
Batasan masalah yang untuk Tugas Akhir ini adalah sebagai berikut :
a. Program yang dipergunakan untuk aplikasi ini adalah Eclipse Juno 4.0 dan
Android SDK Tools.
b. Penulis membatasi bahasa Dayak yang digunakan dalam aplikasi ini,
penulis hanya menggunakan bahasa Dayak Ngaju dan Bahasa Indonesia.
c. Penulis membatasi jumlah data kata yaitu sebanyak 2500 data kata Bahasa
Dayak Ngaju dan Bahasa Indonesia untuk di teliti.
d. Aplikasi ini akan menangani penterjemahan kata bahasa Indonesia ke
dalam Bahasa Dayak Ngaju dan penterjemahan kata dari bahasa Dayak
Ngaju ke dalam bahasa Indonesia.
e. Proses pencarian akan menggunakan Metode Hashpada aplikasi kamus
bahasa Dayak Ngaju – Indonesia.
f. Proses pencarian akan menggunakan Metode Hash pada aplikasi kamus
bahasa Indonesia – Dayak Ngaju.
g. Pengguna/User tidak dapat menambahkan kata baru ke dalam database.
h. Aplikasi ini akan diuji coba dengan menggunakan Smartphone
Mobileberbasis Android
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
1.4 Tujuan
Tujuan yang ingin di capai dalam penulisan tugas akhir ini adalah sebagai
berikut
1. Membuat “Aplikasi Kamus Bahasa Dayak Ngaju – Indonesia Berbasis
Android 2.2 Menggunakan Metode Hash” yang dapat membantu
pengguna aplikasi tersebut untuk memahami bahasa Dayak Ngaju secara
mudah dan jelas.
2. Melakukan riset untuk mengetahui banyaknya tabrakan kata dalam
penyusunan kamus menggunakan metode Hash pada studi kasus Kamus
Bahasa Dayak Ngaju - Indonesia
3. Melakukan riset menggunakan metode Hash dalam pembuatan aplikasi
kamus bahasa Dayak Ngaju – Indonesia berbasis Android.
1.5 Manfaat
Manfaat yang di dapat dari penulisan Tugas Akhir ini adalah sebagai berikut :
a. Bagi pengguna
Hasil dari aplikasi ini dapat digunakan sebagai kamus digital berbahasa
Dayak Ngaju dan digunakan untuk mempelajari bahasa dayak itu sendiri,
b. Bagi penulis
Mendapatkan bahan serta data dalam pembuatan “Aplikasi Kamus
Bahasa Dayak Ngaju – Indonesia Berbasis Android Menggunakan
Metode Hash” serta mengembangkannya menjadi lebih baik.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
c. Bagi Akademik
Hasil dari penulisan tugas akhir ini dapat digunakan sebagai referensi
dalam penyusunan tugas akhir selanjutnya.
1.6 Metodologi Penelitian
a. Survei mengenai informasi apa saja yang berkaitan tentang metode
Hashing dan Bahasa Dayak Ngaju tersebut.
b. Studi Litelatur
i. Mempelajari literlatur – literlatur yang dapat membantu dalam
membuat Aplikasi ini, seperti buku, majalah, Karya Tulis Ilmiah,
dan website – website yang dapat membantu dalam pembuatan
aplikasi ini.
ii. Mempelajari kendala – kendala yang akan dihadapi dalam
pembuatan aplikasi ini.
iii. Mempelajari pengunaan Eclipse Indigo dan Android SDK Tools.
c. Analisa Sistem
Menganalisa kebutuhan sistem dan mengidentifikasi kebutuhan sistem
dalam pembuatan aplikasi ini, berdasaikan survei dan studi litelatur yang
telah dilakukan sebelumnya.
d. Merancang dan Mengimplementasi
Merancang dan mengimplementasi aplikasi yang akan dibuat agar sesuai
dengan yang diharapkan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
e. Pengujian
Pengujian akan dilakukan aplikasi ini sudah berjalan dengan baik, cepat,
akurat, serta membantu masyarakat dalam menterjemahkan bahasa Dayak
Ngaju dan bahasa Indonesia.
1.7 Sistematika Penulisan
BAB I PENDAHULUAN
Pada bab ini berisi tentang latar belakang masalah, rumusan masalah,
tujuan penelitian, batasan masalah, metodologi penelitian, dan
sistematika penulisan.
BAB II LANDASAN TEORI
Pada bab ini, akan dibahas tentang berbagai landasan teori yang
mempengaruhi dan mendasari pembuatan “Aplikasi Kamus Bahasa
Dayak Ngaju – Indonesia Berbasis AndroidMenggunakan Metode
Hash”
BAB III ANALISIS DAN DESAIN SISTEM
Pada bab ini, penulis akan menjelaskan proses – proses analisa dan
perancangan dari “Aplikasi Kamus Bahasa Dayak Ngaju –
Indonesia Berbasis Android Menggunakan Metode Hash”. Analisa
sistem meliputi analisa kebutuhan aplikasi, desain aplikasi, Proses
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
Aplikasi, Arsitektur Aplikasi, use case diagram dan perancangan
aplikasi.
BAB IV IMPLEMENTASI SISTEM DAN ANALISA
Bab ini berisi tentang cara kerja dari perancangan sistem yang telah
dibuat, yang meliputi implementasi pembuatan aplikasi, dan
implementasi antarmuka(user interface) dari aplikasi yang di buat.
Pada bab ini akan disajikan hasil analisa implementasi dari aplikasi
yang dibuat dan telah diuji pada pengguna atau user.
BAB V PENUTUP
Bab ini dibahas tentang kesimpulan dari hasil pengujian dan analisa
serta saran –saran yang disampaikan dalam menyempurnakan
penulisan laporan yang telah dibuat.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
BAB II
LANDASAN TEORI
2.1 Bahasa Pemrograman Java
a. Sejarah Java
Bahasa Pemrograman Java dikembangkan oleh Sun Microsystem pada
tahun 1991. Pada awalnya Java bernama Oak(Object Application Kernel),
Oak lahir dikarenakan oleh ketidakpuasan seorang insinyur di Sun
Microsystem bernama James Gosling. Ia tidak puas dengan compiler C++
karena dinilai terlalu banyak menghasilkan bug, berbiaya besar, sangat
tergantung pada platform, James Gosling kemudian membuat sebuah
compiler baru sebagai solusi terhadap sejumlah kelemahan pada C++
tersebut. Pada Januari 1994,nama Oak di rasa kurang komersil dan diganti
menjadi Java.
Java memiliki sifat multiplatform, yang artinya java dapat dijalankan
pada berbagai platform yang berbeda - beda. Program java yang dibuat bisa
dijalankan pada komputer dengan platform yang berbeda, asalkan Java
Virtual Machine sudah terinstal pada platform tersebut. Jika program yang
dibuat pada platform window, maka program tersebut juga dapat dijalankan
pada linux, Unix, Machintos dan lain – lain.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
Java juga dapat digunakan untuk membuat program yang berjalan
diberbagai mobile device (dengan menggunakan J2ME), PDA, embedded
system, dan lain – lain
Gambar di bawah ini memperlihatkan keunggulan dari bahasa pemrograman
java.
Gambar 2.1 Keunggulan Bahasa Pemrograman Java
2.2 Metode Hash
Sekarang telah banyak algoritma dan metode – metode pencarian yang
digunakan untuk pengolahan data, terutama jika data tersebut tersedia dalam
jumlah banyak. Salah satu metode yang dipergunakan saat ini adalah Metode
Hash. Metode Hash atau Hashing adalah proses untuk melakukan kalkulasi
pencarian posisi dari kunci pada table yang didasarkan pada nilai dari kunci
Java
Secure
Applications Multiplatform
Applications
Web
Applications
GUI - Based
Applications Distributed
networking
Applications
Mission - Critical
Applications
Multithreaded
Applications
Object - Oriented
Applications
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
tersebut (Adam Drozdek, 2008). Hashing digunakan sebagai metode untuk
menyimpan data dalam sebuah array agar proses penyimpanan data, pencarian
data dan penghapusan data dapat dilakukan dengan cepat. Pada hashing ini
terjadi proses menghitung posisi record yang di cari dalam array, bukan
membandingkan record yang ada dengan isi array.
Proses untuk mengkonversi nilai kunci (key) ke posisi larik atau array di sebut
fungsi hash. Sedangkan array atau larik yang digunakan untuk menyimpan data
di sebut table hash.
a. Fungsi Hash
Fungsi Hash (dilambangkan dengan h) bertugas untuk menghitung indeks
array yang berasal dari perhitungan kunci (indeks array dari perhitungan
kunci disebut kode hash). Untuk mencari kunci di dalam tabel hash kita perlu
menghitung kode hash kunci tersebut. Ada beberapa fungsi hash yang banyak
digunakan saat ini
1. Metode Pembagian Sisa (Division – remainder method)
Metode pembagian sisa menggunakan jumlah lokasi memori yang
tersedia sebagai pembagi untuk membagi nilai yang asli dan
menghasilkan sisa bagi. Sisa bagi tersebut adalah nilai hashnya. Secara
umum rumus dari fungsi hash ini adalah h(k) = k mod m, k adalah nilai
kunci dan m adalah jumlah lokasi memori yang tersedia pada array(larik).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
Fungsi hash ini akan menempatkan record dengan kunci (k) pada
lokasi memori yang memiliki alamat (h(k)).
Sebagai contoh, jika kita ingin menempatkan nomor mahasiswa
dengan nomor mahasiswa 65314057 ke dalam table hash. Misalkan
memori memiliki 100 buah alamat yang masing – masing alamat terdiri
dari 2 karakter : 00…99. Untuk menentukan alamat dari NIM tersebut
kita pilih bilangan prima yang dekat dengan 99, misalkan m = 97. Dengan
menggunakan fungsi h(k) = k mod m, diperoleh h(65314057) = 77.
Dengan demikian, nomor mahasiswa 65314057 akan disimpan dalam
alamat 77.
2. Metode Midsquare
Dalam metode ini, kunci yang diketahui dikuadratkan dan nilai tengah
dari hasil kuadrat dari kunci tersebut diambil angka tengahnya sebagai
alamat. Rumus untuk metode midsquare adalah sebagai berikut :
h(k)= l
nilai l diperoleh dengan menghapus digit – digit angka pada dua sisi dari
k2, dengan catatan bahwa banyak digit di sebelah kiri dan sebelah kanan
harus sama. Jika jumlah digit tidak sama, jika tidak sama maka digit
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
angka disebelah kiri seolah – olah ditambahkan dengan angka nol.
Sehingga menghasilkan alamat yang benar.
Sebagai contoh, ketika ingin menentukan alamat untuk nilai k =
65314057, adalah dengan mengkuadratkan nilai ktersebut kemudian
mengambil nilai tengah dari hasil dari k2 tersebut.
k = 65314057
k2=4265926|04|1799249
h(k) = 04
b. Resolusi Collision(Tabrakan)
Dalam memasukan nilai kunci ke alamat dapat timbul kemungkinan
bahwa rekaman(record) dengan nilai kunci yang sama dimasukan pada satu
alamat rekaman yang sama. Kita harus memiliki satu cara untuk mengatasi
tabrakan yang mungkin terjadi, yang disebut dengan collision resolution. Cara
yang baik untuk mengatasi adanya tabrakan antarai lain dengan perbandingan
banyaknya data kunci (n) dalam k, dan banyaknya alamat hash(m) dalam
l(array atau larik). Perbandingan ini memiliki rumus,
. kemampuan
fungsi hash yang dilengkapi dengan prosedur untuk mengatasi tabrakan diukur
dengan adanya perbandingan kunci yang diperlukan untuk mencari alamat dari
rekaman yang mempunyai kunci k. efesiensi terhadap faktor beban dan diukur
menggunakan dua besaran berikut ini :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
B() = rata – rata probe untuk pencarian yang berhasil
G() = rata – rata probe untuk pencarian yang gagal
1. Open Addressing (Pengalamatan Terbuka)
Di dalam metode pengalamatan terbuka, ketika kunci bertabrakan
dengan kunci yang lain. Tabrakan dapat diselesaikan dengan menemukan
tabel alamat hash yang kosong. Jika ternyata alamat hash sudah terisi,
maka harus dicari alamat lain yang masih kosong. Ada beberapa cara
yang digunakan untuk mengatasi tabrakan dengan open addressing
sebagai berikut :
a. Linear probing
Cara termudah adalah dengan menggunakan linear probing,
yaitu dengan mencari alamat berikutnya yang masih kosong. Dengan
rumus :
Keterangan :
h = Index pada table hash
m = Panjang table hash
h+1 mod m
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
Berikut adalah contoh kasus untuk LinearProbing, jika data 7,
13, 25, 27 ingin dimasukan ke dalam table hash dengan m = 13.
Gambar 2.2 Contoh Linear Probing
Tabrakan yang terjadi pada data 39 di indeks 0 diselesaikan
dengan bergeser ke indeks 1. Karena indeks 1 juga telah terisi maka
data 39 bergeser ke indeks 2. Karena indeks 2 masih kosong maka
data 39 dapat dimasukkan.
b. Quadratic Probing
Quadratic Probing mencari alamat baru untuk ditempati
dengan proses perhitungan kuadratik yang lebih kompleks. Tidak ada
rumus baku pada quadratic probing. Kita dapat menentukan sendiri
rumus yang akan digunakan.
c. Double Hashing
Double hashing adalah salah satu metode pengalamatan terbaik
yang tersedia untuk pengalamatan terbuka(open addressing) sebab
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
permutasi yang dihasilkan mempunyai banyak karakteristik permutasi
yang terpilih secara acak(Thomas H. Cormen, 2009).
Double Hashing menggunakan fungsi hash kedua dan
menangani tabrakan dengan menempatkan item di dalam kolom yang
tersedia(kosong). Fungsi hash kedua yang digunakan setelah alamat
yang didapat dari fungsi hashawal telah terisi. Syarat dari metode ini
adalah ukuran table hashmerupakan bilangan prima, untuk
menghindari siklus pencarian slot yang sama.
Contoh fungsi hash adalah h1 = k mod m, dimana k adalah nilai
kunci dan m adalah panjang tablehash. Jika hasil dari h1 mengalami
tabrakan kunci pada table hash maka dapat menggunakan fungsi hash
kedua
Keterangan :
h2 = Fungsi hash ke – dua
k = Indeks table hash yang mengalami tabrakan
s = Nilai jarak lompatan
m = Panjang table hash
h2 = (k+s) mod m
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
Dengan s didapat dari rumus berikut :
c adalah konstanta dengan syarat nilai c harus bilangan prima
dan lebih kecil dari panjang table hash. Contoh kasus untuk double
hashing adalah sebagai berikut :
Jika data 76, 93, 40, 47, 10, dan 55 ingin dimasukan ke dalam
tablehash dengan m = 7 dan nilai kontanta = 5.
Gambar 2.3 Contoh Double Hashing
(Sumber : https://www.cs.washington.edu)
Kelemahan dari open addressing adalah ukuran array(table hash) yang
disediakan harus lebih besar dari jumlah data. Selain itu dibutuhkan
memori yang lebih besar untuk meminimalkan terjadinya collision.
s = c – (k mod c)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
Separate Chaining(Pengandengan)
Metode pengandengan merupakan metode lain yang digunakan untuk
mengatasi kemungkinan adanya tabrakan alamat hash. Metode ini
memanfaatkan senarai berantai yang dipasang pada setiap alamat hash
yang diketahui. Pada metode pengandengan ini, jumlah elemen yang dapat
disimpan hanya dibatasi oleh kapasistas memori komputer yang tersedia.
Jika kita memiliki sebuah alamat hash lengkap dan senarai menyimpan
rekaman – rekaman yang mempunyai alamat hash yang sama, maka kita
akan melihat adanya sebuah senarai tunggal berkepala.
Sebagai contoh, jika kita mempunyai rekaman – rekaman yang kunci
rekamanya dituliskan sebagai berikut :
35 56 15 50 91 100 28 11 29 79
83 43
Fungsi hash yang digunakan adalah k mod 10. Dengan demikian,
alamat hashakan terdiri dari 10 buah alamat yang memiliki nomor 0
sampai 9.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
Gambar dibawah ini menunjukan alamat hash lengkap dengan senarai
berantainya untuk menyimpan rekaman - rekaman di atas.
Gambar 2.4 Metode Chaining(Pengandengan)
c. Fungsi Hash Metode Pembagian Sisa Pada String
Penanganan tipe data String pada fungsi hash adalah mengubah nilai
karakter pada String diubah menjadi nilai char berdasarkan kode ASCII. Dan
dilakukan proses untuk menghitung nilai kunci, dan akan diperoleh nilai kunci
yang unik, dari beberapa String yang memiliki karakter kata yang sama tetapi
akan di peroleh nilai kunci yang berbeda.
Alamat Hash Rekaman
0
1
2
3
4
5
6
7
8
9
35
56
15
50
91
100
28
11
29 79
83 43
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
Penanganan ukuran kunci haruslah dilakukan secara hati – hati, hal ini
dilakukan untuk membuat ukuran kunci hasil transformasi menjadi tidak
terlalu besar sehingga sulit untuk disimpan di memori. Ini dapat diselesaikan
dengan memecah kunci transformasi menjadi potongan – potongan nilai, dan
kemudian mengkombinasikan potongan – potongan nilai itu (Adi Nugroho,
2008).
Penggunaan fungsi hash pada String menggunakan fungsi hash metode
pembagian sisa(Division Remainder) yang diperbaharui dengan menambahkan
proses penanganan tipe data String. Fungsi hash metode pembagian
sisa(Division Remainder) String tersebut ditunjukan dengan rumus sebagai
berikut :
Keterangan :
NK = Nilai Kunci
A = Nilai karakter kata pada String
X = Jumlah keseluruhan karakter pada ASCII yaitu 128
h = Panjang table hash
Pada rumus di atas terlebih dahulu nilai dari karakter kata akan
dikalikan dengan X, kemudian akan dilakukan modulu. Nilai dari karakter kata
NK = (((((An*X) mod h) * X + A1) mod h) * X + A0) mod h
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
yang telah di modulu tersebut akan dikalikan dengan X dan kemudian nilainya
akan ditambahkan dengan nilai karakter kata selanjutnya kemudian akan
modulukan lagi. Proses tersebut akan terus berlanjut sampai dengan karakter
kata habis, Setelah semua proses selesai maka akan didapat hasil dari nilai
Kunci dari kata tersebut. Setiap katakter kata sebelum ditambahkan dengan
karakter kata selanjutnya akan dikalikan dengan 128, hal tersebut dilakukan
untuk mendapatkan nilai karakter yang unik. Dan selesai penambahan
karakter kata akan dilakukan modulu panjang table hash, hal tersebut
dilakukan agar nilai kunci tidak terlalu besar dari pada panjang table hash.
Untuk mempermudah pemahaman tentang penangangan String di atas,
disertakan contoh, jika ada 2 buah kata yaitu kau dan aku. Dua kata tersebut
memiliki karakter yang sama. Dengan menggunakan penanganan string biasa
kita hanya akan menambahkan nilai karakter kata tersebut(berdasarkan kode
ASCII) sehingga menghasilkan nilai dari kata tersebut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
Gambar 2.5 Karakter ASCII
Untuk Karakter kau memiliki 3 karakter kata yaitu k,a,u. dan untuk aku
memiliki 3 karakter kata a,k,u. Jika dilakukan penanganan string dengan biasa
akan di dapat hasil sebagai berikut :
Nilai Kata 1 = „k‟+‟a‟+‟u‟, setiap karakter diubah berdasarkan kode ASCII
= 107+97+117
= 321
Nilai Kata 2 = „a‟+‟k‟+‟u‟ setiap karakterdiubah berdasarkan kode ASCII
= 97+107+117
= 321
Dari hasil di atas didapatkan bahwa kedua kata tersebut memiliki nilai kata
yang sama sehingga kita di lakukan fungsi hash, maka kedua kata tersebut akan
mengalami tabrakan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
Maka dari itu akan dilakukan penanganan string yang lebih unik yaitu dengan
menggunakan rumus di atas, agar nilai String yang dihasilkan menjadi lebih unik.
Nilai Kata 1 = ((((k*128)Mod 13)*128+a)Mod 13)*128+u)Mod 13
( setiap karakter diubah berdasarkan kode ASCII)
= ((((107*128)Mod 13)*128+97)Mod 13)*128+117)Mod 13
= 3
Nilai Kata 2 = ((((a*128)Mod 13)*128+k)Mod 13)*128+u)Mod 13
(setiap karakterdiubah berdasarkan kode ASCII)
= ((((97*128)Mod 13)*128+107)Mod 13)*128+117)Mod 13
= 11
Dari hasil diatas di dapat bahwa dengan menggunakan penanganan string yang
lebih khusus akan menghasilkan nilai kata yang lebih unik.
2.3 Kamus
Kamus secara etimologi, kata kamus berasal dari kata dalam bahasa arab,
yaitu qamus. Bahasa Arab menyerap kata qamus dari bahasa yunani kuno,
okeanos, yang berarti lautan. Jika kita mencoba memahami sejarah kata itu maka
jelaslah bahwa kata kamus memiliki makna dasar “wadah pengetahuan”.
Khususnya, pengetahuan bahasa yang tidak terhingga dalam dan luas.
Beberapa pakar telah memberikan definisi mengenai kamus. Di antaranya
di sebutkan sebagai berikut;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
[1] Kamus adalah buku referensi yang memuat daftar kata atau gabungan kata
dengan keterangan mengenai pelbagai segi maknanya dan penggunaanya
dalam bahasa; biasanya disusun menurut abjad(dalam tradisi Yunani –
Romawi menurut urutan abjad Yunani – Romawi), kemudian menurut abjad
bahasa bersangkutan; dalam tradisi Arab menurut urutan jumlah konsonan
(Kridalaksanan. 1982).
[2] Kamus adalah buku berisi kumpulan kata –kata sebuah bahasa yang disusun
secara alfabetis diikuti dengan definisi atau terjemahannya dalam bahasa lain
(Pirre Labrouse, 1977).
[3] Menurut kamus besar Bahasa Indonesia, kamus adalah buku acuan yang
memuat kata, saran dan ungkapan yang disusun menurut abjad berikut
keterangan tentang maknanya, pemakainya atau terjemahannya.
Menurut penulis, Kamus adalah kumpulan kata satu bahasa atau lebih
yang disusun secara alfabetis beserta dengan arti, definisi ke dalam satu
bahasa atau lebih, dan dimuat ke dalam sebuah buku baik dalam bentuk
digital dan tertulis.
2.3.1 Fungsi Kamus
Kamus merupakan hasil akhir dari kerja leksikografi adalah himpunan
semua kosakata yang ada di dalam suatu bahasa. Berikut di bawah ini
adalah fungsi – fungsi praktis dari kamus tersebut :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
(1) Makna Kata
Fungsi sebuah kamus yang pertama adalah menjelaskan makna
atau arti sebuah kata. Namun, tidak semua kamus dapat memberikan
informasi mengenai makna sebuah kata. Kamus besar atau kamus
yang ideal mungin dapat memberi informasi makna semua kata yang
ada dalam kamus suatu bahasa, tetapi mungkin juga tidak karena isi
kamus terbatas.
(2) Lafal Kata
Sebuah kamus yang ideal juga berfungsi untuk menjelaskan lafal
atau ucapan sebuah kata, yang baku atau tidak baik. Pada bahasa –
bahasa yang sistem pengejaan katanya tidak ideal seperti bahasa
inggris. Maka di dalam kamusnya setiap kata tentu disertai dengan
ejaan fonetis untuk menunjukan lafal – lafal kata – kata itu.
(3) Ejaan Kata
Sebuah kamus yang ideal memiliki fungsi memberi petunjuk
bagaimana ejaan yang benar dari setiap kata saat ini untuk bahasa
Indonesia, ejaan yang berlaku adalah Ejaan Yang
Disempurnakan(EYD).
(4) Penyukuan Kata
Kamus juga memiliki fungsi agar kita bisa mengetahui suku kata,
dengan membuka kamus kita dapat mengetahui suku kata yang kita
cari atau ingin kita ketahui pada sebuah kamus. Contohnya :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
- Lab – rak atau la – brak
- Ge – og – ra – fi atau ge – o – gra – fi
Untuk mengetahui pemengalan yang benar, kita dapat melihatnya ke
dalam kamus yang ideal.
(5) Kebakuan Kata
Sebuah kamus yang ideal dapat menunjukan mana kata yang
baku dan mana pula yang tidak baku, misalnya dengan cara memberi
tanda rujuk silang, artinya kata – kata yang tidak baku tetap didaftar
sebagai lema, tetapi mengetahui makna dan informasi lainnya.
2.3.2 Cara Penyusunan Kamus
Cara penyusunan kamus terbagi menjadi beberapa tahapan penting
sebagai berikut :
1. Perancangan
2. Pembinaan data korpus
3. Pengisian dan Pengabjadan data
4. Pengolahan data
5. Pemberian makna
2.3.3 Berbagai Masalah Dalam Perkamusan
a. Tujuan Kamus
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
Tujuan dari kamus disusun, menyangkut masalah kamus tersebut
ditujukan kepada siapa dan seberapa besar ruang lingkupnya.Jika
kamus tersebut di tujukan kepada pemilik bahasa itu sendiri, maka
yang akan disusun adalah kamus ekabahasa. Jika kamus tersebut
disusun bukan untuk orang yang bukan pemilik bahasa itu, maka yang
harus disusun adalah kamus dwibahasa.
Ruang lingkup kamus mengenai seberapa besar lema – lema yang
akan dimuat, dan seberapa jauh makna serta definisi yang akan
diberikan. Tujuan dari kamus diharapkan dapat memberikan semua
informasi berkenaan dengan kosakata suatu bahasa.
b. Korpus Data
Kalau tujuan penyusunan sebuah kamus sudah ditentukan, maka
masalah kedua yang muncul adala korpus data, yakni sumber yang
akan digunakan untuk mengumpulkan data. Korpus data menyangkut
masalah subtansi bahasa sumber, bahasa sasaran, dan ruang lingkup
kamus yang akan dibuat. Jika bahasa sumbernya belum mempunyai
ragam bahasa tulis, maka satu – satunya jalan untuk mendapatkan
korpus data itu adalah merekam bahasa tersebut dari pertuturan yang
dilakukan oleh para penutur bahasa itu. Jika bahasa sumber telah
mempunyai ragam bahasa tulis, maka korpus data diambil dari
naskah, buku, Koran, majalah atau terbitan lain tergantung dari tujuan
kamus yang akan dibuat.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
Data untuk kamus dwi bahasa, kita dapat mengambilnya dari
kamus bahasa sumber yang sudah ada dan kualitasnya cukup
memadai. Kemudian kita tinggal mencari padanan kata dari bahasa
sasaran.
c. Pengumpulan Data
Setelah masalah korpus telah diatasi, masalah selajutnya yang
akan muncul adalah mengenai pengumpulan data. Misalnya saja yang
disusun adalah kamus ekabahasa Indonesia. Maka data yang akan di
kumpulkan bisa berupa kata kasar, kata berimbuhan, kata berulang,
kata gabung, bentuk – bentuk idiomatik, ungkapan dan pribahasa.
d. Susunan Lema dan Sublema
Data yang dikumpulkan dari korpus akan menjadi lema dan
sublema dalam kamus yang akan disusun. Lema dalam bahasa
Indonesia berupa morfem dasar, baik yang bebas (seperti batu, pergi,
dan pulang) maupun yang terikat (esperti juang, henti, dan abai).
Sedangkan sublema berupa bentuk turunan, baik yang berimbuhan,
berulang, maupun yang berkomposisi. Prinsip utama susunan lema
dan sublema adalah mudah diikuti.Yang dimaksud mudah diikuti
adalah kalau lema dan sublema itu disusun secara alfabetis, baik
secara vertikal maupun horizontal.
e. Masalah makna
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
Tujuan orang membuka kamus adalah untuk mengetahui makna
kata. Oleh karena itu, sudah seharusnya makna dalam kamus dibuat
baik dan selengkap mungkin. Hari hal itu, segala kemungkinan makna
yang dimiliki oleh sebuah kata harus diterakan didalam kamus.
Namun, dalam pemberian makna ini banyak masalah yang akan
timbul antara lain :
(1) Apa patokan yang menyatakan bahwa sebuah kata telah diberi
makna atau definisi. Pemberian makna dalam kamus dwibahasa
terlihat lebih mudah sebab sudah dianggap memadai kalo hanya
diberi padanan katanya saja. Misal kamus Inggris – Indonesia.
Table Meja
Waterair
Zip resleting.
(2) Sering kali sukar dalam memberikan makna untuk kata kerja.
Misalnya kata duduk, makan, dan tidur. Kesulitan seperti ini
biasanya diatas dengan memberikan contoh pemakaian kata
tersebut.
(3) Banyak kata yang maknanya di suatu tempat tidak sama dengan
tempat lain.
(4) Banyak kata yang maknanya telah berubah, baik total, meluas,
maupun menyempit. Misalnya, dulu kata ceramah bermakna
“Uraian mengenai suatu topik dimuka orang banyak”, tetapi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
sekarang bermakna bawel. Makal hal seperti ini diinformasikan
dalam rumusan makna dalam kamus.
f. Label – label Informasi
Sebagai bagian dari penjelasan makna kata, maka pada setiap
lema utama perlu diberi keterangan dalam bentuk singkatan yang
berkenaan dengan :
(1) Kelas kata, yakni verba(v), nomina(n), adjektiva(a), adverbial(ad),
numeralia(num) dan sebagainya.
(2) Asal - Usul Kata
Untuk kepentingan ilmiah kata – kata yang masih terasa asing
perlu diberi keterangan mengenai asal – usulnya. Misalnya kata
ngaben dari bahasa bali. Kata – kata serapan yang sudah sangat
umum tidak perlu diberi label asal – usulnya.
(3) Bidang Pemakaian
Kata – kata, terutama yang disebut istilah, perlu diberi keterangan
bidang pemakaianya. Misalnya kata fonem dari bidang
linguistik(ling), kata deposito dari bidang perbangkan(bank).
(4) Kata – kata arkais
Kata – kata arkais adalah kata – kata yang saat ini tidak digunakan
lagi dalam penuturan. Namun, kita bisa dapati saat kita membaca
naskah – naskah lama. Misalnya kata tebuk, ungkai, oasik,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
dansayhdan. Dibelakang kata – kata ini perlu diberi label
ark(arkais).
2.3.4 Jenis Kamus
Berdasarkan lingkup isinya, Jenis kamus di bagi menjadi beberapa
bagian sebagai berikut :
a. Kamus Umum, yaitu kamus yang memuat semua kata dalam sebuah
bahasa, Misalnya Kamus Umum Bahasa Indonesia.
b. Kamus Khusus atau Kamus Istilah, yaitu kamus yang hanya memuat
kata – kata dari bidang tertentu, contohnya kamus linguistic, kamus
istilah kedokteran, kamus instilah teknologi dan banyak lagi.
c. Kamus Eka Bahasa, yaitu kamus yang memuat kata – kata dari satu
bahasa , biasanya berisi definisi, sinonim, dan contoh penggunaan
dalam kalimat. Misalnya Kamus Besar Bahasa Indonesia.
d. Kamus Dwibahasa yaitu kamus memuat dua bahasa, biasanya berisi
kata dari sebuah bahasa yang makna atau definisinya dijelaskan
dengan bahasa lain (Bahasa terjemahannya). Contohnya Kamus
Bahasa Indonesia – Bahasa Inggris.
e. Kamus Multibahasa yaitu kamus yang memuat lebih dari dua bahasa.
Misalnya Kamus Bahasa Prancis – Indonesia – Inggris.
2.3.5 Kamus yang Ideal
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
Dalam dunia perkamusan dan leksikografi sangat disadari bahwa
tidak akan ada kamus yang sempurna, yang dapat memberikan semua
informasi mengenai kata dengan makna. Hal ini terjadi karena bahasa
yang menjadi obyek kamus itu selalu berubah, seiring dengan perubahan
sosial budaya dari masyarakat yang menggunakan kamus itu. Akibat dari
hal tersebut, kamus yang ideal adalah kamus yang selalu terus – menerus
direvisi agar kamus tersebut dapat terus – menerus mengupdate informasi
yang diperlukan
2.4 Bahasa Dayak Ngaju
Bahasa Dayak Ngaju atau bahasa Ngaju adalah bahasa yang tuturkan suku
Dayak Ngaju dan suku – suku lain yang berada di provinsi Kalimantan Tengah.
Jumlah penutur bahasa Dayak Ngaju ini lebih dari 1.000.000 orang, termasuk
didalamnya yang berdialek Bakumpai, Mengkatip dan Mendawai.
Terdapat perbedaan dialek dalam sub etnis yang ada di dalam suku Dayak
Ngaju, seperti pada dialek Kapuas dan Kahayan, Katingan dan Mentawai,
Mendawai dan Mengkantip. Perbedaan ini umumnya pada pilihan kata dan
pengucapan kata, namun memiliki arti yang berbeda.Walaupun begitu perbedaan
ini mudah untuk dipahami oleh para penuturnya sendiri.
Menurut Tjilik Riwut, Pengguna bahasa ini adalah 54 anak suku Dayak
Ngaju, antara lain adalah Balantikan, Kapuas, Rungan, Manuhing, Katingan,
Saruyan, Mentobi, Mendawai, Bara-dia, Bara – Nio, Bara – ren, Mengkatip,
Bukit, Berangas, dan Bakumpai.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
Contoh dan perbandingan antara kosakata bahasa Dayak Ngaju berdialek
Bakumpai, bahasa Dayak Ngaju Kahayan, serta Bahasa Indonesia.
Bakumpai Ngaju Indonesia
Jida Dia Tidak
Beken Beken Bukan
Kueh Kueh Mana
Si Kueh Bara Kueh Dari Mana
Hituh Hetuh Sini
Tukep/Parak Tukep Dekat
Mihup Mihop Minum
Batapas Bapukan Mencuci
Tabel 2.2 Kosakata
2.5 Bentuk Susunan Kamus Bahasa Dayak Ngaju
Susunan lema di atur atas dasar pertimbangan :
1. Kemudahan
Kemudahan berarti bahwa kamus itu tidak menimbulkan kesulitan bagi
pemakainya pada waktu penggunaan kamus.
2. Kepraktisan
Kepraktisan berarti kamus tidak rumit serta mudah dalam pemakaiannya.
3. Manfaat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
Dari segi manfat, semoga dengan adanya kamus ini akan diperoleh banyak
manfaat yang didapat dari pemakaian kamus ini.
4. Pembinaan dan Pengembangan Bahasa Dayak Ngaju
Dari segi pembinaan dan pengembangan bahasa, kamus bahasa Dayak Ngaju
ini diharapkan dapat menunjang usaha dan pengembangan bahasa Dayak
Ngaju.
Susunan Kamus Bahasa Dayak Ngaju - Indonesia disusun atas pokok pikiran
berikut :
(1) Kata Dasar
Kata dasar atau bentuk dasar yang menjadi dasar pembentukan kata.
Diberlakukan sebagai kata lema, sedangkan bentuk – bentuk derivasinya
diberlakukan sebagai sub lema. Contoh kata dasar dan bentuk derivasinya
adalah pukul dan kata mamukul, hapukul, rapukul, pamukul adalah bentuk
derivasinya.
(2) Kata Ulang
Perlakukan terhadap kata ulang dalam Kamus Bahasa Dayak Ngaju
Indonesia adalah sebagai berikut :
- Bentuk kata ulang yang mennjukan jamak( kata benda) seperti huma –
huma/ rumah – rumah, bua – bua / buah – buah, tidak dimasukan
secara langsung ke dalam kamus. Karena dalam bahasa dayak jarang
sekali mengunakan kata ulang dalam hal yang menyangkut kata benda.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
- Bentuk kata yang seolah – olah merupaka bentu ulang, seperti andang
– andangalamat, di muat sebagai lema.
- Bentuk ulang yang menunjukan jamak dalam proses, seperti
manampayah – payah/ melihat – lihat, diberlakukan sebagai kata sub
lema dan di letakan langsung sesudah bentuk kata yang di ulang.
Contoh :
Manampayah – payah
Diletakan sesudah manampayah.
- Bentuk kata ulang seperti lulang luli/ bolak – balik, yang salah satu
unsur pembentuk katanya mempunyai betuk kata lain seperti haluli
diberlakukan sebagai kata sublema yang diletakan sesudah kata lema
yang menjadi dasar bentuk ulang itu.
- Bentuk kata ulang seperti :birak – biraiporak poranda, kanih kate /
kacau balau, yang masing – masing unsure pembantuknya katana tidak
berderivikasi diperlakukan sebagai kata lema.
Contoh :
Birak – birai 1 porak poranda; 2 cerai berai
Kanih – kate 1 berhamburan; 2 berserakan
(3) Gabungan Kata
- Gabungan kata atau kelompok kata yang merupakan frasa idiomatic
ataupun tidak, berakfit atau tidak, tidak berdevirasi tidak diberlakukan
sebagai kata lema, atau kata sublema. Tetapi diberlakukan sebagai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
contoh pemakaian yang berupa frasa yang diberi penjelasan. Letaknya
langsung di bawa kata lema atau kata sublema yang berkaitan, yaitu
kata pertama unsur pembentuk kata gabungan itu. Di susun berderet ke
samping secara berurutan menurut abjad
Contoh :
Panjangapanjang,
- Lenge panjang tangan; orang yang suka mencuri
- Tampayah banyak pengalaman; orang perantauan
- Gabungan kata yang berdevirasi baik idiomatic maupun tidak seperti
campur aduk, himbing lenge, atau bahambin lenge, diberlakukan
sebagai kata lema dan diikuti bentuk – bentuk derivasinya sebagai sub
lema.
Contoh
Campur aduk acampur aduk
- Bacampur aduk 1
- Macampur aduk 1
(4) Peribahasa
Peribahasa di perlakukan secara khusus, dicetak miring dan di tempatkan
seem gabungan kata yang berupa frasa. Jika terdapat lebih dari satu
peribahasa(dari sebuah kata lema), pribahasa itu di susun mernurut abjab
dengan berpgang teguh pada huruf awal pada kata pertama peribahasa
Contoh
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
Bakei nkera berekor panjang; bulu abu – abu; suka makan buah
- Kilau bakei bagai kera
Baliong nbeliung; alat perkakas tukang kayu
- Hasundai baliong beliung bertemu kayu keras; bermusuhan
(5) Urutan Susunan Kata Lema
Kata lema di susun menurut abjad, baik secara horizontal maupun secara
vertikal. Secara horizontal, misalnya kata lema yang mempunyai huruf
b.a.b.a.idiletakan sesudah kata lema yang mempunyai sesudah kata lema
yang memiliki deretan huruf b.a.b.a.h
Contoh
Balik n ….
Babalik…
Pambalik….
Tambalik….
Baling n……
Babaling…..
Baliong n…….
Balo …
Balua v…..
(6) Label dan Singkatan Kata
1. Label Kelas Kata
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
Label Arti
N Nomina / Kata Benda
V Verba / Kata kerja
A Adjective / Kata Sifat
Adv Adverbial / Kata Keterangan
Num Numeralia / Kata Bilangan
P Partikel / Kata Tugas
Pron Pronominal / Kata Ganti
Sangiang Bahasa Dayak Kuno
Alk Alkitab
2. Label – label lain
Label Arti
Akr Akronim
Cak Ragam
Hor ragam halus
Kas ragam kasar
Ki Kiasan
Pb Peribahasa
Np nama pohon
Ni nama ikan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
Nb nama binatang
Nt nama tumbuhan
2.6 Android
a. Sejarah Android
Android adalah sebuah sistem operasi untuk perangkat mobileberbasis
linux. Android dibuat dan dikembangkan oleh Android Inc, kemudian Google
Inc membeli Android Inc tersebut. Kemudian untuk mengembangkan Android
dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan piranti
keras, piranti lunak, dan telekomunikasi, termasuk Google.Inc.
Pada Juli 2000, Google Inc bekerjasama dengan Android Inc, dalam
pengembangan perangkat mobile ini. Pada saat itu banyak yang menganggap
fungsi Android hanya sebagai perangkat mobile atau telepon seluler biasa.
Pada saat rilis perdana Android, 5 September 2007. Android bersama Open
Handset Alliance menyatakan mendukung pengembangan standar terbuka
pada perangkat seluler.
Pada 22 Oktober 2008, untuk pertama kalinya Google merilis Nexus One
salah satu jenis smartphone yang menggunakan android sebagai sistem
operasinya. Pada penghujung tahun 2009 diperkirakan di dunia ini paling
sedikit terdapat 18 jenis telepon seluler yang menggunakan android
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
b. Sistem Operasi Android
Android adalah sistem operasi untuk perangkat mobile yang open source.
Android menyediakan platform bagi para pengembang untuk menciptakan dan
mengembangkan sendiri aplikasinya. Google Inc merilis kode – kode android
dibawah lisensi Apache, sebuah lisensi perangkat lunak yang standard Open
Source.
c. Arsitektur Android
Arsitektur Sistem Operasi Android terdiri dari 5 bagian sebagai berikut :
1. Applications dan Widgets
Applications dan Widgets ini adalah layer dimana kita berhubungan
dengan aplikasi saja, dimana biasanya kita mendownload aplikasi
kemudian kita melakukan instalasi dan menjalankan aplikasi tersebut.
Layer ini terdapat aplikasi inti termasuk klien email, aplikasi sms,
kalender, map, browser, kontak, dan lain – lain. Semua aplikasi ditulis
menggunakan java programming language (Bahasa Pemograman Java)
2. Applications Frame works
Android memberikan kemampuan pada pengembang untuk
membangun aplikasi yang bagus dan kreatif. Pengembang bebas
mengakses perangkat keras, akses informasi, resources, menjalankan
services background, mengatur alarm, dan menambahkan status
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
notification, dan sebagainya. Pengembang memiliki akses penuh menuju
API framework seperti yang dilakukan oleh aplikasi kategori inti.
Arsiektur aplikasi dirancang supaya kita dengan mudah dapat
menggunakan kembali komponen yang sudah digunakan
Application Frameworks ini adalah layer dimana para pembuat aplikasi
melakukan pengembangan atau pembuatan aplikasi yang akan dijalankan
di sistem operasi android.
Komponen – komponen yang termasuk didalam Applications
Frameworks adalah sebagai berikut :
a) Views
b) Content Provider
c) Resource Manager
d) Notification Manager
e) Activity Manager
3. Libraries
Libraries adalah layer dimana fitur – fitur android berada, biasanya
para pembuat aplikasi mengakses libraries untuk menjalankan
aplikasinya. Berjalan di atas kernel, layer ini meliputi berbagai library
C/C++ inti seperti Libc dan SSL, serta libraries lain sebagai berikut :
Libraries media untuk memutar mp3 dan video.
Libraries untuk manajemen tampilan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
Libraries Graphics mengcakup SGL dan OpenGL untuk grafis 2D dan
3D.
Libraries SQLite untuk dukungan database.
Libraries SSL dan Webkits terintegrasi dengan web browserd an
security.
Libraries LiveWebcoremencakup modern web browserdengan engine
embedded web view
4. Android Run Time
Android Run Time adalah layer yang membuat aplikasi android dapat
dijalankan di mana dalam prosesnya menggunakan implementasi Linux.
Dalvik Virtual Machine merupakan machine yang membentuk dasar
kerangka aplikasi Android. Di dalam Android Run Time di bagi menjadi
dua bagian yaitu :
Core Libraries : Aplikasi Android di bangun dalam bahasa java,
sementara Dalvik sebagai virtual mesinnya bukan virtual machine
java, sehingga di perlukan sebuah libraries yang berfungsi untuk
menterjemahkan bahasa java/c yang ditangani oleh Core Libraries
Dalvik Virtual Machine (DVM): Virtual mesin berbasis register yang
dioptimalkan untuk menjalankan fungsi – fungsi secara efisien,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
dimana merupakan pengembangan yang mampu membuat linux
kernel untuk melakukan threading dan manajemen tingkat rendah.
5. Linux Kernel
Linux Kernel adalah layer di mana inti dari Operating System dari
Android itu berada. Berisi file – file sistem yang mengatur sistem
processing memory, resource, drivers, dan sistem – sistem operasi
android lain. Linux kernel yang digunakan android adalah linux kernel
release 2.6.
d. Fundamental Aplikasi Android
Aplikasi Android ditulis dalam bahasa pemrograman java. Kode java
dikompilasi bersama dengan data file resource yang dibutuhkan oleh aplikasi,
di mana proses di package oleh tools yang dinamakan “apt tools” ke dalam
paket Android sehingga menghasilkan file dengan ekstensi apk.
Ada enam jenis komponen pada aplikasi android, yaitu :
a) Activities
Suatu activity akan menyajikan user interface (UI) kepada penggunanya,
sehingga pengguna dapat melakukan interaksi. Satu activity biasanya
akan dipakai untuk menampilkan aplikasi atau yang bertindak sebagai
user interface (UI) saat aplikasi diperlihatkan kepada user. Untuk pindah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
dari satu activity ke activity lain kita dapat melakukan satu even, misalnya
klik tombol, memilih opsi atau menggunakan triggers tertentu.
b) Service
Service tidak memiliki Graphics User Interface (GUI), tetapi service
berjalan secara background, sebagai contoh dalam memainkan musik,
service mungkin memainkan music atau mengambil data dari jaringan,
tetapi setiap service harus berada dalam kelas induknya.
c) Broadcast Receiver
Broadcast Receiver berfungsi menerima dan bereaksi untuk
menyampaikan notifikasi. Contoh broadcast seperti notifikasi zona waktu
berubah, baterai low, gambar telah selesai diambil oleh camera, atau
mengubah referensi bahasa yang digunakan. Aplikasi juga dapat
menginisiasi broadcast missalanya memberikan informasi pada aplikasi
lain bahwa ada data yang diunduh ke perangkat dan siap untuk
digunakan.
Broadcast Receiver tidak memiliki User Interface (UI), tetapi memiliki
sebuah activity untuk merespon informasi yang mereka terima, atau
mungkin menggunakan Notification Manager untuk memberitahukan
kepada pengguna, seperti lampu latar atau vibrating dan lain sebagainnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
d) Content Provider
Content Provider membuat kumpulan aplikasi data secara spesifik
sehingga digunakan oleh aplikasi lain. Data disimpan dalam file sistem
seperti dataSQLite. Content Providermenyediakan cara untuk mengakses
data yang dibutuhkan oleh suatu activity, misalnya ketika kita
menggunakan aplikasi yang membutuhkan peta (Map) , atau aplikasi
yang membutuhkan untuk mengakses data kontak dan navigasi, maka
disinilah fungsi Content Provider
e. Android Versi 2.2 (Froyo : Frozen Yoghurt)
Android Versi 2.2 diluncurkan pada bulan Mei 2010. Android ini sekarang
banyak beredar di pasaran, salah satunya adalah dipakai di Samsung FX tab
yang sudah ada di pasaran. Fitur yang tersedia di Android versi ini sudah
kompleks diantaranya adalah :
1. Kerangka aplikasi memungkinkan penggunaan dan pengahpusan
komponen yang tersedia.
2. Dalvik Virtual Machine dioptimalkan untuk perangkat mobile.
3. Grafik : grafik di 2D dan grafis 3D berdasarkan libraries OpenGL
4. SQLite untuk penyimpanan data
5. Mendukung media : audio, video, dan berbagai format gambar.
6. GSM, Bluetooth, EDGE, 3G, dan Wifi.
7. Kamera, Global Positioning System(GPS), kompas dan accelerometer.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
f. Siklus Hidup Activity
Activitymemiliki tiga status dasar :
1. Running
Status ini ketika activity berjalan di foreground, activity yang berkaitan
aktif dengan pengguna.
2. Pause
Jika activity telah kehilangan focus tetapi masih dapat dilihat oleh
pengguna yang berarti ada activity yang berjalan di atas activity ini, sebuah
activity yang transparan atau tidak menutupi layar penuh sehingga activity
dalam status pause dapat terlihat. Sebuah activity dalam status pause tetap
hidup, yaitu android tetap mempertahankan semua informasi dan tetap
melekat pada WIndowManager hingga akhirnya dapat dimatikan oleh
sistem ketika memori sanggat rendah.
3. Stop
Activity benar – benar dihentikan karena ada activity yang lain memenuhi
layar. Semua informasi dipertahakan tetapi tidak dapat dlihat oleh
pengguna sehingga jendela tersembuni dan dapat dimatikan oleh sistem
ketika memori di butuhkan.
Metode yang terdapat pada Activity :
- OnCreate ()
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
Dipanggil ketika activity pertama kali dibuat. Biasanya merupakan
metode dimana view yang ingin ditampilkan dibuat, membuka data
file, maupun menginisiasi activity. Saat memanggil OnCreate,kerangka
Android melewati sebuah Bundle obyek yang mengandung state
activity yang disimpan ketika activity pertama dijalankan.
- OnStart()
Dipanggil sebelum activity terlihat pada layar. Ketika activity dapat
menjadi activity foredround , maka akan dipanggil method
OnResume() sedangkan jika tidak akan dipanggil method OnStop().
- OnResume()
Dipanggil setelah OnStart()apabila activity dapat menjadi foreground.
Saat ini, activity dapat bereaksi dengan pengguna. OnResume()juga
akan dipanggil ketika activity ini tidak menjadi foreground karena ada
activity lain lalu activity lain akhirnya selesai dan activity kembali
menjadi foreground.
- OnPause()
Dipanggil ketika activity lain dibawa ke foreground. Pada status ini
activity tidak memiliki asks ke layar.
- OnStop()
Dipanggil ketika activity tidak lagi terlihat karena adanya activity lain
yang dibawa ke foreground atau activity ini dimatikan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
- OnDestroy()
Dipangil terakhir sebelum activity dimatikan ketika Androi
membutuhkan smber daya ang digunakan oleh activity.
g. Daur Hidup Service
Daur hidup service hamper sama dengan activity tetapi memiliki beberapa
perbedaan detailnya.
Nama Service Keterangan
OnCreate() dan OnStart() Dipanggil apabila seseorag klien
memanggilcontext.startService(intent). Jika
service belum berjalan maka android aka
membuatnya dan memanggil OnCreate() diikuti
method OnStart(). Apabila service telah
berjalan android hanya akan memanggil
OnStart().
OnBind() Ketika klien membutuhkan koneksi ke serice
maka akan dipanggil context.bind. pemanggilan
ini akan mengakibatkan pembuatan service
apabila service tidak sedang berjalan tanpa
memanggil OnStart()
OnDestroy() Sama degan activity, method ini akan dipanggil
ketika service akan dimatikan. Android akan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
mematikan service apabila telah tidak lagi klien
yang memulai.
h. Kelebihan Android
Banyak sekali platform untuk perangkat seluler saat ini, termasuk di dalamnya
Symbian, Iphone, Windows mobile, Blackberry, Java Mobile Edition, Linux
Mobile, dan banyak lain. Namun ada beberapa hal yang menjadi kelebihan
android. Walaupun beberapa fitur – fitur yang telah mucul sebelumnya pada
platform lain, android adalah yang pertama mengabungkan hal – hal berikut :
1. Keterbukaan, Bebas pengembangan tanpa dikenakan biaya terhadap sistem
karena berbasiskan Linux dan open source. Pembuat perangkat menyukai
hal ini karena dapat membangun platform yang sesuai yang diinginkan
tanpa harus membayar royalti. Sementara pengembang softwaremenyukai
karena Android dapat digunakan diperangkat manapun dan tanpa terikat
oleh vendor manapun.
2. Arsitektur komponen dasar Android terinspirasi dari teknologi internet
Mashup. Bagian dalam sebuah aplikasi dapat digunakan oleh aplikasi
lainnya, bahkan dapat diganti dengan komponen lain yang sesuai dengan
aplikasi yang dikembangkan.
3. Banyak dukungan service, kemudahan dalam menggunakan berbagai
macam layanan pada aplikasi seperti penggunaan layanan pencarian
lokasi, database SQL, browser dan penggunaan peta. Semua itu sudah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
tertanam pada Android sehingga memudahkan dalam
pengembanganaplikasi.
4. Siklus hidup aplikasi diatur secara otomatis, setiap program terjaga antara
satu sama lain oleh berbagai lapisan keamanan, sehingga kerja sistem
menjadi lebih stabil. Pengguna tak perlu kawatir dalam
menggunakanaplikasi pada perangkat yang memorinya terbatas.
5. Dukungan grafis dan suara terbaik, dengan adanya dukungan 2D grafisdan
animasi yang diilhami oleh Flash menyatu dalam 3D
menggunakanOpenGL memungkinkan membuat aplikasi maupun game
yang berbeda.
6. Portabilitas aplikasi, aplikasi dapat digunakan pada perangkat yang ada
saat ini maupun yang akan datang. Semua program ditulis dengan
menggunakan bahasa pemrograman Java dan dieksekusi oleh mesin virtual
Dalvik, sehingga kode program portabel antara ARM, X86, dan arsitektur
lainnya. Sama halnya dengan dukungan masukan seperti penggunaan
Keyboard, layar sentuh, trackball dan resolusi layar semua dapat
disesuaikan dengan program.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
BAB III
ANALISIS DAN DESAIN
Pada bab ini akan dijelaskan analisis dan desain Sistem aplikasi Kamus
Bahasa Dayak Ngaju – Bahasa Indonesiayang akan dikembangkan.
3.1 Analisis Kebutuhan Aplikasi
Analisis sistem adalah penjabaran dari suatu sistem yang utuh ke dalam
bagian – bagian komponen dengan maksud mengidentifikasi dan mengevaluasi
masalah dar sistem tersebut.
3.1 .1 Analisis Fungsional
Analisis Fungsional merupakan gambaran mengenai fitur – fitur yang
akan di masukan ke dalam aplikasi Kamus Bahasa Dayak Ngaju – Bahasa
Indonesia. Fitur – fitur tersebut antara lain.
a. Mampu menampilkan berbagai kosakata Bahasa Dayak Ngaju ke dalam
Bahasa Indonesia.
b. Mampu menampilkan berbagai kosakata Bahasa Indonesia ke dalam
Bahasa Dayak Ngaju.
c. Mampu menampilkan kosakata hasil pencarian Bahasa Dayak Ngaju
dan kosakata hasil pencarian berbahasa Indonesia.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
d. Terdapat metode untuk mengupdate kosakata baru, baik kosakata
Bahasa Dayak Ngaju dan Kosakata Bahasa Indonesia.
3.2 Fungsi Hash Yang Digunakan
Pada aplikasi Kamus Bahasa Dayak Ngaju – Indonesia ini, digunakan
media penyimpanan file untuk menyimpan data – datanya. Database yang
dibuat pada aplikasi ini hanya memanfaatkan file teks yang akan disimpan
pada notepad dengan ekstensi “*.txt”. Sehingga nantinya ada perintah yang
mengintekgrasikan file txt tersebut ke dalam software. Basis data pada
aplikasi ini dibagi menjadi dua macam yaitu basis data yang berisi padanan
kata Bahasa Dayak Ngaju ke Bahasa Indonesia yang disimpan dengan nama
DayakIndo.txt dan basis data yang berisi padanan kata Bahasa Indonesia ke
Bahasa Dayak yang disimpan dengan nama IndoDayak.txt.
Proses pengolahan data dari txt ke dalam sistem adalah dengan
mendapatkan key dan value yang berasal dari data txt. Proses tersebut
dilakukan dengan memecah data – data menjadi lema serta padananya. kata
yang menjadi lema akan menjadi key dan padananya akan menjadi value.
Key tersebut akan dikonversi menjadi nilai key, nilai key tersebut diambil
dari setiap karakter kata berdasarkan kode ASCII. Nilai key dari setiap
karakter kata tersebut akan dihitung. Untuk memasukan key dan value ke
dalam tabel hash terlebih dahulu harus dihitung index darikey
menggunakan fungsi hash. fungsi hash yang akan digunakan adalah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
Metode Pembagian Sisa String atau Division – Remainder String Method.
Jika terdapat nilai key yang sama(terjadi tabrakan antar key) dan akan
digunakan metode double hashing untuk menangani masalah tabrakan
tersebut.
Proses hitung nilai kata(nilai key) dan fungsi hash metode pembagian
sisa string dapat dilihat dengan contoh sebagai berikut :
nilai key dari kata tege untuk dimasukan ke dalam tabel hash. Ukuran
panjang tabel hash(N) untuk contoh ini, digunakan panjang N adalah 10,
proses perhitungan menggunakan rumus fungsi hash metode pembagian
sisa string adalah sebagai berikut :
Nilai key = „t‟+‟e‟+‟g‟+‟e‟
=((((109*13) mod 10)*128+101 mod 10)*128 + 103 mod 10)
*128+101 mod 10 = 8
Nilai key(Kunci) menjadi index pada tabel hash,
Index = 8 mod 10
Index = 8
Maka didapatkan nilai index key untuk kata tege pada tabel hash, yaitu
8. Sehingga key dan value dapat dimasukan ke dalam tabel hash. Berikut ini
adalah contoh gambaran data yang telah dimasukan ke dalam tabel hash. :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
Gambar 3.1 Contoh data yang dimasukan ke dalam Tabel Hash
Untuk Metode Double Hashing menggunakan Fungsi hash yang ke –
dua melibatkan nilai key yang telah di dapat, digunakan untuk mendapatkan
jarak loncatan. Misal, kita ingin memasukan kata ijuk yang memiliki nilai
key 8pada table hash, dengan metode pembagian sisa untuk nilai key 8
didapatkan index key - nya adalah 8. Maka terjadi tabrakan dengan key
untuk kata tege.
Terhadap kata ijuk yang memiliki nilai key sama dengan kata tege,
digunakan double hashing, contoh double hashing sebagai berikut :
Fungsi Hash ke - dua = 5 – (8 mod 5) = 2
Fungsi di atas digunakan untuk mendapatkan increment(jarak
lommpatan) jika terjadi tabrakan pada key.
Index = 8 mod 10
Index = 8
Index Key Value
.
.
.
0
1
tege (v) ada 8
9
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
Index 8 sudah memiliki key dan value, dengan menggunakan metode Double Hashing, bisa didapatkan
posisi index yang baru
Index ke - 8 telah digunakan oleh key kata tege (Gambar 3.1) maka
dilanjutkan perhitungan dengan melakukan double hashing untuk
mendapatkan index posisi pada tabel hash untuk nilai key untuk kata ijuk .
dijelaskan sebagai berikut :
Index = (8+2) mod 10 = 0.
Posisi 0 kosong sehingga didapat index key tersebut, key dan value
dapat dimasukan ke tabel hash index 0.
Index Key Value
Gambar 3.2 Struktur Data HashTable setelah dilakukan proses
Double Hashing
0
1
3
2
4
5
7
ijuk (n) sapu
6
8
9
ijuk tege (v) mandi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
3.3 Pseudocode Metode hash
Pada pseudocode metode hash ini akan dijelaskan Proses Hitung Nilai
kata, Metode Pembagian sisa, Metode double hashing, serta proses
pencarian kata. Selanjutnya untukpseudocode proses hitung nilai kata(nilai
key), metode pembagian sisa, metode double hashing, dan pencarian
dijelaskan dengan pseudocode berikut ini :
a. Pseudocode Hitung nilai kata(nilai key)
Pseudocode 3.1
Pada Pseudocode 3.1diawali dengan variabel kata yang memiliki nilai
tege, terlebih dahulu Baris ke 1 sampai ke 3setiap karakter kata tege
dikonversi berdasarkan kode ASCII, kemudian dihitung dan dimasukan
ke dalam array nilaiKata. Baris ke – 4 dilakukan perulangan
berdasarkan panjang array dari nilaiKata. Baris ke – 5 dilakukan
perhitungan setiap nilai katakter kata yang terdapat pada index array
nilaiKata
1 kata = tege(Contoh Kata)
2 kata.tocharArray();
3 NilaiKata = 0
4 for i = 0 to panjang array nilaiKata do
5 NilaiKata = (NilaiKata * 128 + kata[i]) % panjang array
6 end for
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
b. Pseudocode Metode Pembagian Sisa String atau Division – Remainder
String Method
Pseudocode 3.2
Pada Pseudocode 3.2 baris ke – 1 sampai baris ke – 6 (lihat Pseudocode
3.1) di awali dengan proses Hitung nilai kata. Metode Pembagian Sisa
String terdapat Baris ke – 9 sampai baris ke – 10 dilakukan proses
Modulu untuk mendapatkan nilai hasilBagi. Sehingga nilai variabel kata
dapat di masukan ke dalam array iTabel dan index pada array iTabel
untuk nilai variabel kata tersebut didapatkan dari nilai hasilBagi.
1 kata = tege(Contoh kata)
2 kata.tocharArray();
3 NilaiKata = 0
4 for i = 0 to panjang array nilaiKata do
5 NilaiKata = (NilaiKata * 128 + kata[i]) % panjang array
6 end for
7 nilaiKey = NilaiKata
9 ukuranTabel = 10 (Contoh ukuran table hash = 10)
8 iTabel []
9 hasilBagi = 0
10 hasilBagi = nilaiKey Mod ukuranTabel
11 iTabel [hasilBagi] = kata
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
57
c. Pseudocode Metode Double Hashing
Pseudocode 3.3
Pada Pseudocode 3.3 baris ke – 1 sampai baris ke – 6 (lihat Pseudocode
3.1) di awali dengan proses Hitung nilai kata. Baris ke – 9 nilai M
digunakan untuk proses mendapatkan jarak lompatan(iJarak) dan nilai
M tersebut diambil sembarang dengan syarat nilai M harus bilangan
prima dan nilainya harus lebih kecil dari panjang penyimpanan index.
Baris ke – 13 dilakukan proses Modulu untuk mendapatkan nilai
hasilBagi. Sehingga nilai variabel kata dapat dimasukan ke dalam array
iTabel dan index pada array iTabel untuk nilai variabel kata tersebut
didapatkan dari nilai hasilBagi. Baris ke – 14 dilakukan proses fungsi
hash kedua untuk mendapatkan nilai iJarak. Proses ke – 15 sampai ke –
1 kata = ijuk (Contoh kata)
2 kata.tocharArray();
3 NilaiKata = 0
4 for i = 0 to panjang array nilaiKata do
5 NilaiKata = (NilaiKata * 128 + kata[i]) % panjang array
6 end for
7 nilaiKey = NilaiKata
8 ukuranTabel = 10
9 M = 7
10 iTabel []
11 hasilBagi = 0
12 iJarak = 0
13 hasilBagi = nilaiKeyMod ukuranTabel
14 iJarak = M - (nilaiKey Mod M)
15 while(index[hasilBagi] != null)
16 hasilBagi = hasilBagi + iJarak
17 hasilBagi = hasilBagi % ukuranTabel
18 end while
19 iTabel [hasilBagi] = kata
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
17 adalah proses Double Hashing yang dilakukan saat nilai dari index
array iTabel tidak sama dengan null atau index tersebut sudah terisi.
d. Pseudocode Proses Pencarian kata
Pseudocode 3.4
Pada Pseudocode 3.4 baris ke – 2 sampai baris ke – 6 di awali dengan
proses Hitung nilai kata. Baris ke – 11, dari nilai hasilBagi akan didapatkan
index pada iTabel. Baris ke – 14 terjadi proses membandingkan isi(key)
dari nilai array iTable yang memiliki index dari hasilBagi apakah sama
dengan iKataInput. Jika sama nilai value akan dikembalikan. Jika tidak,
akan dilakukan proses baris ke – 16 dan 17 untuk mendapatkan hasilBagi
untuk index dari nilai array iTable yang lain kemudian dijalankan kembali
ke proses baris ke – 15.
1 Read iKataInput
2 iKataInput.tocharArray();
3 iJumlah = 0
4 for i = 0 to panjang array nilaiKata do
5 iJumlah = (iJumlah * 128 + iKataInput[i]) % panjang array
6 end for
7 nilaiKey = iJumlah
8 ukuranTabel = 10
9 M = 7
10 iTabel []
11 iJarak = 0
12 hasilBagi = nilaiKeyMod ukuranTabel
13 iJarak = M - (nilaiKey Mod M)
14 while(index[hasilBagi] != null)
15 if(index[hasilBagi].key = iKataInput)
16 Return Index[hasilBagi].value
17 hasilBagi = hasilBagi + iJarak
18 hasilBagi = hasilBagi % ukuranTabel
19 end while
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
59
3.4 Diagram Alir
Diagram alir merupakan bagan – bagan yang mengambarkan aliran
program Berikut adalah diagram Alir Penyusunan Kamus Bahasa Dayak -
Indonesia:
Gambar 3.3 Diagram Alir Penyusunan Kamus Bahasa Dayak Ngaju – Indonesia
Hasil Jumlah Nilai
Kata(nilai key)
Ukuran Tabel = N
Fungsi Hash
Index = key mod N
Data Pada Tabel
Hash Kosong ?
Simpan key dan value
Selesai
Fungsi Hash2
Hash2 = M – (key mod M)
Index = key mod N
Index = (Index+ Hash2) mod N
Mulai
Baca File
Hitung Nilai Kata
(nilai key)
Tidak
Ya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
60
Gambar 3.4 Diagram Alir Pencarian Panadan Kata Pada Kamus
Bahasa Dayak Ngaju – Indonesia
Mulai
Input Kata
Ukuran Tabel = N
Pencarian ke - 1
Index = Nilai Kata Input mod N
Data pada
Index = Kata Input
Output = value
Selesai
Pencarian ke – 2
Hash2= M – (key mod M)
Index = key mod N
Index = (Index+ Hash ke – dua) mod N
Index Tabel = null
Kata tidak ditemukan
Jumlah Nilai Kata Input
Hitung Nilai Kata Input
Tidak
Ya
Tidak
Ya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
61
Penjelasan Diagram Alir
Penjelasan diagram alir ini digunakan untuk menjelaskan
proses yang terjadi pada Diagram Alir Penyusunan Kamus Bahasa
Dayak Ngaju – Indonesia dan Diagram Alir Pencarian Padanana Kata
Pada Kamus Bahasa Dayak Ngaju – Indonesia. Penjelasan tentang
Diagram Alir di atas dapat dilihat pada lampiran I.
3.5 Arsitektur Aplikasi
Aplikasi ini akan dibuat menjadi 2 aplikasi berbeda, Untuk User(Pengguna
Biasa) dan admin untuk melakukan riset. Aplikasi untuk user akan ada proses
penyusunan kamus, pencarian padanan kata dan pembaharuan database
kamus. Aplikasi untuk admin akan ada proses penyusunan kamus, pencarian
padanan kata, menganti modulu pembagi penyusunan kamus dan
pembaharuan database kamus. Pada aplikasi untuk admin akan menampilkan
jumlah tabrakan kata dan jumlah kata yang mengalami tabrakan, yang
digunakan untuk keperluan riset
Pada aplikasi ini metode hash proses penyusunan kamus dan pencarian
padanan kata dilakukan di dalam aplikasi. Pada awal program data kata serta
padananya diambil dari database yang berada didalam aplikasi. Untuk proses
update isi database kamus userdan admin akan terhubung dengan server
melalui jaringan internet. Aplikasi tidak terhubung langsung dengan
internet(offline) kecuali untuk proses pengupdatetan database.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
62
WebServer Aplikasi
Gambar 3.5 Arstektur Aplikasi Kamus Bahasa Dayak Ngaju - Indonesia
3.6 Use Case Diagram
Use Case diagram merupakan pemodelan untuk behavior aplikasi yang
akan dibuat. Use Case mendekripsikan sebuah interaksi satu atau lebih
aktor dengan aplikasi yang akan dibuat. Secara umum, Use Case dibuat
untuk mengetahui fungsi apa saja yang ada di dalam sebuah aplikasi dan
siapa saja yang berhak menggunakan fungsi – fungsi dalam aplikasi
tersebut.
user
Internet
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
63
Gambar 3.6 Diagram Use Case Kamus Bahasa Dayak Ngaju –
Indonesia
Pada diagram di atas terdapat 2 aktor yaitu user dan Admin. 2 use
case yang dikerjakan oleh user dan 3 use case dikerjakan oleh Admin.
Nama Use Case Deskripsi Use Case Aktor
Mencari Arti Kata Use Case ini
mengambarkan user
melakukan pencarian
padanan kata Bahasa
Dayak Ngaju –
Indonesia dan begitu
juga sebaliknya.
User, Admin
Mengupdate database
kamus
Use Case ini
mengambarkan user
User, Admin
User
Sistem
Mencari Arti
Kata
Mengupdate
Kamus
Admin Menganti
Modulu
Menganti
Konstanta
Tampil
Tabrakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
64
melakukan update
database aplikasi
kamus.
Menganti Modulu Use Case ini
mengambarkan admin
mengubah Modulu.
Modulu tersebut
digunakan dalam
penyusunan Kamus.
Admin
Menganti Konstanta Use Case ini
mengambarkan admin
mengubah konstanta.
Modulu tersebut
digunakan dalam
penyusunan Kamus.
Tampil Tabrakan UseCase ini
mengambarkan admin
menampilkan jumlah
tabrakan kata dan
jumlah kata yang
mengalami tabrakan
dalam penyusunan
kamus.
Tabel 3.3 Penjelasan Use Case
Skenario Use Case
Skenario Use Case digunakan untuk mengembangkan kejadian
yang terjadi dalam aplikasi dan yang telah teridentifikasi dari diagram
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
65
use case Kamus Bahasa Dayak Ngaju – Indonesia pada gambar 3.6.
Skenario use case dari diagram use case diatas, dapat dilihat pada
lampiran II.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
66
3.7 Diagram Aktivitas
Berikut adalah diagram aktivitas dari aplikasi Kamus Dayak Ngaju –
Indonesia Menggunakan Metode Hash :
a. Diagram Aktifitas : Mencari Arti Kata
User/Admin Sistem
Gambar 3.7 Diagram Aktifitas Mencari arti kata
Mengklik Menu “Dayak
Ngaju – Indonesia“
Menampilkan Halaman
Pencarian Padanan Kata
Memasukan kata Dayak
Ngaju atau Indonesia
Memproses kata yang di input
dan melakukan pencarian pada
database
Menampilkan hasil pencarian
kepada pengguna
Melakukan Klik pada
button “Cari”
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
67
b. Diagram Aktifitas : Mengupdate Kamus
User / Admin Sistem Server
Gambar 3.8 Diagram Aktifitas Mengupdate Database Kamus
Mengklik Menu
“Download File“
Mengirimkan inputan ke
server
Menerima inputan dan mengirimkan file
database ke aplikasi
Melakukan download file database kamus dari
server
Menganti file database
yang lama dengan yang baru
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
68
c. Diagram Aktifitas : Menganti Modulu
Admin Sistem
Gambar 3.9 Diagram Aktifitas Menganti Modulu
Mengklik Menu
Menampilkan Halaman
Setting
Menganti Modulu
Menerima Input dan
menganti modulu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
69
d. Diagram Aktifitas : Menganti Konstanta
Admin Sistem
Gambar 3.10 Diagram Aktifitas Menganti Konstanta
Mengklik Menu
Menampilkan Halaman
Setting
Menganti Konstanta
Menerima Input dan
menganti Konstanta
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
70
e. Diagram Aktifitas : Tampil Tabrakan
Admin Sistem
Gambar 3.11 Diagram Aktifitas Tampil Tabrakan
Mengklik Button“Hasil
Tabrakan”
Menerima dan memproses
Input
Menampilkan Jumlah tabrakan
dan jumlah kata yang
mengalami tabrakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
71
Input kata, klik
button cari
Cari Table cari sama
dengan kata input
Kembalikan nilai kata
Tampil kata dan arti
Klik ganti Bahasa
Cari
Table cari sama
dengan kata input
Kembalikan nilai
kata
Tampil kata dan arti
Input kata, klik
button cari
3.8 Diagram Sequence
Berikut adalah diagram sequence dari aplikasi Kamus Dayak Ngaju –
Indonesia Menggunakan Metode Hash :
a. Diagram Sequence Use Case : Mencari Arti Kata
Gambar 3.12 Sequence Diagram Mencari Arti Kata Dayak - Indonesia
Alternatif 1
Gambar 3.13 Sequence Diagram Mencari Arti Kata Indonesia - Dayak
Form Kamus Kamus Kata
Form Kamus Kamus Kata
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
72
Internet
Model Analisis
Kelas Analisis
No Nama Kelas Tipe Dekripsi
1 Form Kamus Interface Untuk menampilkan form
pencarian padanan kata
2 Kamus Entity Untuk mengatur proses
Pembentukan kamus dan
pencarian kata
3 Kata Entity Untuk menyimpan kata dan
padanan kata.
Tabel 3.11Kelas Analisis Use Case Mencari Kata
b. Diagram Sequence Use Case : Mengupdate Database Kamus
Gambar 3.14 Sequence Diagram Mengupdate Database Kamus
Model Analisis
mengantiFile
Mengirimkan
file
Koneksi ke server
Form
Utama
Kata Kamus Form Kamus
Server
Klik button
Download File
Form Update Server
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
73
input
modulu
Kelas Analisis
No Nama Kelas Tipe Dekripsi
1 Form Update Interface Untuk menampilkan form
update database, proses
download file database dari
server, proses menganti file
database kamus
2 Server Entity
Tabel 3.15Kelas Analisis Use Case Mengupdate Database Kamus
c. Diagram Sequence Use Case: Menganti Modulu
Gambar 3.15 Sequence Diagram Ganti Modulu
Model Analisis
Kelas Analisis
No Nama Kelas Tipe Dekripsi
1 FormGantiModulu Interface Untuk menampilkan form ganti
Modulu dan Konstanta untuk
admin.
Tabel 3.16Kelas Analisis Use Case Ganti Modulu
Form
GantiModulu
FormGantiModulu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
74
input
Konstanta
d. Diagram Sequence Use Case: Menganti Konstanta
Gambar 3.16 Sequence Diagram Ganti Konstanta
Model Analisis
Kelas Analisis
No Nama Kelas Tipe Dekripsi
1 FormGantiModulu Interface Untuk menampilkan form ganti
Modulu dan Konstanta untuk
admin.
Tabel 3.17Kelas Analisis Use Case Ganti Konstanta
FormGantiModulu
Form
GantiModulu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
75
klik button
Jumlah Tabrakan
Membentuk Kamus Dayak
Tampil tabrakan
Kembalikan
tabrakan
klik button
Jumlah Tabrakan
Membentuk Kamus Indo
Tampil Tabrakan
kembalikan
tabrakan
Klik ganti Bahasa
e. Diagram Sequence Use Case: Tampil Tabrakan
Gambar 3.17 Sequence Diagram Tampil Tabrakan Kata Bahasa Dayak
Alternatif 1
Gambar 3.18 Sequence Diagram Tampil Tabrakan Kata Bahasa Indonesia
Form Kamus Kamus
Form Kamus Kamus
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
76
Model Analisis
Kelas Analisis
No Nama Kelas Tipe Dekripsi
1 Form Kamus Interface Untuk menampilkan pesan
Jumlah Tabrakan Kata
yang mengalami tabrakan
dan menampilkan pesan
jumlah tabrakan kata
2 Kamus Entity Untuk mengatur proses
Perhitungan Jumlah Kata
yang mengalami tabrakan
dan jumlah tabrakan kata
Tabel 3.18Kelas Analisis Use Case Tampil Tabrakan
3.8 Diagram Kelas
a. Diagram Kelas User
Gambar 3.19 Diagram Kelas User
FormUtama
+ attribut
+ method
FormKamus
+ attribut
+ method
Kamus
+ attribut
+ method
Kata
+ attribut
+ method
FormUpdate
+ attribut
+ method
FormTentang
+ attribut
+ method
Kamus Form Kamus
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
77
b. Diagram Kelas Admin
Gambar 3.20 Diagram Kelas Admin
3.9 Model Desain Antar Muka Aplikasi
Model desain antarmuka adalah salah satu bagian penting dalam
pengembangan aplikasi ini. Karena saat aplikasi ini digunakan yang pertama
kali yang akan dilihat oleh pengguna adalah tampilan antar muka aplikasi.
FormUtama
+ attribut
+ method
FormKamus
+ attribut
+ method
Kamus
+ attribut
+ method
Kata
+ attribut
+ method
FormUpdate
+ attribut
+ method
FormGantiModulu
+ attribut
+ method
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
78
a. Desain Antar Muka Kamus Dayak Ngaju Admin
1. Perancangan Antar Muka Menu Utama
Desain :
Gambar 3.21 Desain Tampilan Menu Utama
Fungsi :
- Untuk menampilkan menu aplikasi yang akan dipilih oleh user.
Komponen Gambar :
(1) Judul Halaman
(2) Tombol Kamus
(3) Tombol Update
(4) Logo
(1)HOME - Kamus Dayak
Indonesia
(2)Kamus
(3)Update
(5)
Logo
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
79
Home
2. Perancangan Antar Muka Menu Kamus
Desain :
Gambar 3.19 Desain Tampilan Kamus
Fungsi :
- Untuk memasukan kata berbahasa Dayak Ngaju maupun kata
berbahasa Indonesia.
- Untuk melakukan pencarian dari kata yang dimasukan
Komponen Gambar :
(1) Text Dayak
(2) Tombol Ganti
(3) Text Indo
(4) Kolom Input Kata
(5) Tombol Cari
Kata :
(1)Dayak (2) (3)Indo
(4)Masukan kata di sini
Arti :
(6)
(5)
Cari
(7)Tampil Hasil Tabrakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
80
Home
(6) Kolom Hasil Pencarian
(7) Tombol Tampil Tabrakan
3. Perancangan Antar Muka Menu Update
Desain :
Gambar 3.20 Desain Tampilan Update
Fungsi :
- Untuk mengupdate file database kamus, baik file untuk database
dayakindo.txt atau indodayak.txt.
- Melakukan download file database dari webserver.
Komponen Gambar :
(1) Tombol Download File
(1)Download File
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
81
4. Perancangan Antar Muka Menu Ganti Modulu
Desain :
Gambar 3.21 Desain Tampilan Ganti Modulu
Fungsi :
- Untuk tampilan menganti modulu dan konstanta dalam proses
penyusunan kamus
Komponen Gambar :
(1) Tombol Menganti Konstanta
(2) Tombol Menganti Modulu
(1) Menganti Konstanta
(2) Menganti Modulu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
82
b. Model Desain Antar Muka User
1.Perancangan Antar Muka Menu Utama
Desain :
Gambar 3.22 Desain Tampilan Menu Utama
Fungsi :
- Untuk menampilkan menu aplikasi yang akan dipilih oleh user.
Komponen Gambar :
(1) Judul Halaman
(2) Tombol Kamus
(3) Tombol Update
(4) Tombol Tentang
(5) Logo
(1)HOME - Kamus Dayak
Indonesia
(2)Kamus
(3)Update
(4)Tentang
(5)
Logo
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
83
Home
2. Perancangan Antar Muka Menu Kamus
Desain :
Gambar 3.23 Desain Tampilan Kamus
Fungsi :
- Untuk memasukan kata berbahasa Dayak Ngaju maupun kata
berbahasa Indonesia.
- Untuk melakukan pencarian dari kata yang dimasukan
Komponen Gambar :
(1) Text Dayak
(2) Tombol Ganti
(3) Text Indo
(4) Kolom Input Kata
(5) Tombol Cari
Kata :
(1)Dayak (2) (3)Indo
(4)Masukan kata di sini
Arti :
(6)
(5)
Cari
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
84
Home
(6) Kolom Hasil Pencarian
3. Perancangan Antar Muka Menu Update
Desain :
Gambar 3.24 Desain Tampilan Update
Fungsi :
- Untuk mengupdate file database kamus, baik file untuk database
dayakindo.txt atau indodayak.txt.
- Melakukan download file database dari webserver.
Komponen Gambar :
(1) Tombol Download File
(1)Download File
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
85
Home
4. Perancangan Antar Muka Menu Tentang
Desain :
Gambar 3.25 Desain Tampilan Tentang
Fungsi :
- Sebagai tampilan informasi Kamus Bahasa Dayak Ngaju - Indonesia
Komponen Gambar :
(1) Logo Kamus
(2) Text Judul
(3) Logo Universitas Sanata Dharma
(4) Text penjelasan tentang software
(5) Text Informasi Label Kata
(2)Aplikasi Kamus Bahasa
Dayak Ngaju - Indonesia
(3)Logo
Sanata
Dharma
(1)
Logo
(4)Sekilas Tentang Software
(6)Kontak dan Email
(5)Informasi Label
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
86
BAB IV
IMPLEMENTASI DAN PENGUJIAN
Pada Tahap ini pengembangan rancangan menjadi kode program. Pada bagian
awal akan dijelaskan spesifikasi perangkat keras dan lunak. Bagian utama adalah
mengimplementasikan rancangan menjadi kode program yang ditulis dengan
menggunakan kode program berbasis bahasa pemrograman java. Di lanjutkan dengan
melakukan riset jumlah kata yang mengalami tabrakan saat penyusunan ke dalam
kamus dan jumlah keseluruhan tabrakan kata. Disamping itu juga tampilan aplikasi
akan diimplementasikan pada Smartphone Samsung galaxy Y Duos s6102.
4.1 Spesifikasi Perangkat Keras dan Lunak
4.1.1 Spesifikasi Perangkat Keras
Dalam menerapkan proses implementasi aplikasi ini membutuhkan
beberapa perangkat keras sebagai berikut :
1. Smartphone yang menggunakan Sistem Operasi Android
Smarphone ini digunakan untuk menjalakan aplikasi yang telah di
kembangkan. Smartphone yang digunakan adalah Smartphone
Samsung galaxy Y Duoss6102 dengan spesifikasi sebagai berikut :
Sistem Operasi : Android 2.3 (Gingerbread)
CPU : 832 Mhz
Memory : 290 MB
Dimensi Layar : 3.14 Inci
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
87
Konektivitas : Dual SIM, Bluetooth V 3.0, 3G Network
2. Bluetooth
Fungsi dari Bluetooth adalah untuk menghubungkan antara komputer
dengan Smartphone.
3. Satu unit komputer dengan spesifikasi sebagai berikut :
Prosesor : Dual Core 2.20 GHz
Memori : 1 Gb
Ruang Penyimpanan : 80 Gb
4.1.2 Spesifikasi Perangkat Lunak
Untuk membuat aplikasi dari rancangan yang telah dibuat, dibutuhkan
beberapa perangkat lunak sebagai berikut :
1. Java SDK
2. Sistem Operasi
3. Dropbox
4. IDE Eclipse Juno 4.0
5. Android SDK
6. Android Development Tools(ADT)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
88
4.2 Implementasi Desain Antar Muka
Berdasarkan perancangan, akan diimplementasi tampilan untuk user dan
admin. Pembuatan tampilan antar muka pada sistem Android diimplementasikan
dalam bentuk XML file. Implementasi desain antar muka ini akan di jelaskan pada
lampiran III.
4.3 Impementasi Diagram Kelas
a. Implementasi Diagram Kelas User
Diagram Kelas User :
No. Kelas Atribut Method Tipe
1 FormUtama.java
basepath : String
extStorageDirectory : File
kamusBtn : ImageButton
tentangBtn : ImageButton
updateBtn : ImageButton
copyFile(InputStream,
OutputStream) : void
copyFileToExternalSD() :
void inisialisasi() : void
onClick(View) : void
onCreate(Bundle) : void
Interface
2 FormKamus.java
btnCari : Button
btnGanti : Button
cariKata : Kata
d : Kata
directory : File
editText : EditText
sdCard : File
tabelHashDayak : Kamus
tabelHashIndo : Kamus
token : StringTokenizer
txtDayak : TextView
txtIndo : TextView
txtV : TextView
txtVInput : TextView
Inisialisasi() : void
membentukKamusDayak(int
, int) : void
membentukKamusIndo(int,
int) : void
onClick(View) : void
onCreate(Budle) : void Interface
3 FormUpdate.java
extStorageDirectory : File
basepath : String
progressBar :
ProgressDialog progressBarStatus : int
progressBarHandler :
Handler fileSize : long
btnUpdate : button
onCreate(Bundle) : void
Download() : int
BukaKoneksi(String) :
InputStream DownloadFIle(String,String
) : int
copyFile(InputStream,
OutputStream) : void
Interface
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
89
4 FormAbout.java onCreate(Budle) : void Interface
5 Kata.java kunci : String
nilai : String
kata(String, String) Entity
6 Kamus.java
tableHash : Kata[]
modPembagi : int
Kamus(int,int) :
Konstruktor fungsiHash(String) : int
getIncrement(String) : int
masukanKata(Kata) : void
Cari(String) : Kata
Entity
Tabel 4.1 Kelas, Atribut, Method dan Tipe
Tipe Interface kelas FormUtama.java, FormKamus.java,
FormUpdate.java, dan FormAbout.java merupakan tampilan antarmuka
aplikasi untuk user. Selain sebagai tampilan kelas FormUtama.javauntuk
melakukan proses copy file dari resource android ke dalam penyimpanan
eksternal di smartphone. KelasFormKamus.java selain sebagai tampilan akan
digunakan sebagai pembentuk kamus dan pencarian kata dan arti kata. Pada
kelas FormUpdate.java selain sebagai tampilan juga akan digunakan untuk
menjalankan proses update database. Kelas – kelas interface di gambarkan
dengan table sebagai berikut :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
90
FormUtama
basepath : String
extStorageDirectory : File
kamusBtn : ImageButton
tentangBtn : ImageButton
updateBtn : ImageButton
copyFile(InputStream,
OutputStream) : void
copyFileToExternalSD() : void
inisialisasi() : void
onClick(View) : void
onCreate(Bundle) : void
Untuk kelasFormUtama.java, FormKamus.java dan FormUpdate.java
akan dijabarkan sebagai berikut :
1. FormUtama.java
Selain sebagai tampilan FormUtama.java akan melakukan copy file
database dari aplikasi recourse ke dalam penyimpanan eksternal di
smartphone.
Fungsi :
- Sebagai tampilan menu utama menu
- Melakukan copy file database dari resourse ke penyimpanan ekternal.
Proses Algoritma :
FormKamus
btnCari : Button
btnGanti : Button
cariKata : Kata
d : Kata
directory : File
editText : EditText
sdCard : File
tabelHashDayak : Kamus
tabelHashIndo : Kamus
token : StringTokenizer
txtDayak : TextView
txtIndo : TextView
txtV : TextView
txtVInput : TextView
Inisialisasi() : void
membentukKamusDayak(int,int) :
void membentukKamusIndo(int,int) :
void onClick(View) : void
onCreate(Budle) : void
FormUpdate
extStorageDirectory : File
basepath : String
progressBar : ProgressDialog
progressBarStatus : int
progressBarHandler : Handler
fileSize : long
btnUpdate : button
onCreate(Bundle) : void
Download() : int
BukaKoneksi(String) : InputStream
DownloadFIle(String,String) : int
copyFile(InputStream,
OutputStream) : void
FormAbout
onCreate(Budle) : void
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
91
Langkah
1
1 membuat tempat penyimapan file
2 mendapatkan file dari resource
3 for
3.1 melakukan proses copy file
3.2 menutup proses copy file
Source Code Copy File
File extStorageDirectory = Environment.getExternalStorageDirectory();
String basepath = extStorageDirectory + "/DatabaseKamus/";
AssetManager assetManager = getResources().getAssets();
String[] files = null;
try {
files = assetManager.list("databasekamus");
} catch (Exception e) {
Log.e("read Data ERROR 1", e.toString());
e.printStackTrace();
Toast.makeText(getBaseContext(), "Proses Membaca Data Error",
Toast.LENGTH_SHORT).show();
}
for (int i = 0; i < files.length; i++) {
InputStream in = null;
OutputStream out = null;
try {
in = assetManager.open("databasekamus/" + files[i]);
out = new FileOutputStream(basepath + files[i]);
copyFile(in, out);
in.close();
in = null;
out.flush();
out.close();
out = null;
}
2. FormKamus.java
Dalam pembentukan kamus FormKamus.java memerlukan kelas entity
Kamus.java dan Kata.java. Kelas Kamus.java digunakan sebagai
pembentuk objek tabelHashDayak dan tableHashIndo yang akan
Langkah 2
Langkah 3
Langkah
3.1
Langkah
3.2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
92
digunakan pada pembentukan kamus dan pencarian kata. Kelas Kata.java
akan digunakan sebagai pembentuk objek d dan carikata. Dan obyek d
digunakan untuk pembentukan kamus danobyek carikata akan digunakan
pada pencarian kata.
Fungsi :
- Sebagai tampilan menu pencarian kata
- Membentuk kamus Dayak Ngaju – Indonesia
- Membentuk kamus Indonesia – Dayak Ngaju
- Melakukan Pencarian Kata
Proses Algoritma :
- Algoritma Membentuk Kamus
1 membentuk obyek tabelHash, d
2 membaca data dari database
3 if data !=null
3.1 selama data bisa dibaca
membaca data perbaris
membagi data menjadi kata dan arti kata
data kata = kata
data arti kata = arti kata
d = d (data kata, data arti kata)
tabelHashDayak.Masukan kata (d)
4 tutup koneksi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
93
Proses pembentukan kamus terbagi menjadi 2 bagian yaitu
Membentuk kamus Dayak Ngaju – Indonesia dan kamus Indonesia –
Dayak Ngaju. 2 proses pembentukan kamus diatas menggunakan
algoritma yang sama tetapi yang membedakan adalah obyek yang di
bentuk dari kelas Kamus.java dan bersar modulu yang digunakan.
- Algoritma Pencarian Kata
1 mendapatkan kata input
2 carikata = tabelHashDayak.cari(kata input)
3 if carikata= = null
3.1 pesan “kata yang dicari tidak ada”
4 else
1.1 pesan carikata.kata
1.2 pesan carikata.artiKata
Pencarian kata pada kelas FormKamus.java akan menggunakan
method cari(String) yang terdapat pada kelas Kamus.java. method
cari(String) pada kelas kamus.java akan melakukan perhitungan dan
memberikan nilai balik berupa data indeks, sehingga dapat di ketahui
dimana kata dan arti kata yang dicari ditempatkan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
94
Langkah4.1 dan 4.2
Source Code Membentuk Obyek
Kata d;
Kamus tabelHashDayak;
Kamus tabelHashIndo;
Source Code Membentuk Kamus
tabelHashDayak = new Kamus(1000,1291);
File file = new File(directory, "dayakindo.txt");
FileInputStream fIn = new FileInputStream(file);
if (fIn != null) {
InputStreamReader isr = new InputStreamReader(fIn);
BufferedReader bR = new BufferedReader(isr);
String dataBase;
String key;
String value;
int car;
while ((car = bR.read()) != -1) {
dataBase = (char) car + bR.readLine();
token = new StringTokenizer(dataBase, "=");
key = token.nextToken();
value = token.nextToken();
d = new Kata(key, value);
tabelHashDayak.masukanKata(d);
}
bR.close();
}
Source Code Pencarian Kata
kataInput = editText.getText().toString().trim();
cariKata = tabelHashDayak.Cari(kataInput);
if (cariKata == null) {
Toast.makeText(this, "Kata yang dicari tidak ada",
Toast.LENGTH_SHORT).show();
} else {
txtVInput.setText(kataInput + " ");
txtV.setText(cariKata.nilai);
}
Langkah 1
Langkah 2
Langkah
3
Langkah
3.1
Langkah 4
Langkah 1 dan 2
Langkah 3
Langkah 4
Langkah 3.1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
95
3. FormUpdate.java
Dalam melakukan update database kamus pada FormUpdate.java akan
menggunakan thread.
Fungsi :
- Sebagai tampilan menu download file database
- Mengupdate database kamus
Proses Algoritma :
- Algoritma Koneksi Internet
1 membentuk koneksi internet
2 if koneksi internet bukan koneksi http
3.1 pesan “bukan koneksi http”
3 else
3.1 melakukan koneksi ke internet
3.1.1 Jika koneksi berhasil
3.1.1.1 data diterima
Proses update database menggunakan kelas InputStream agar
nilai balik dari data yang di kirimkan dari jaringan internet dapat
dimasukan ke dalam stream. Untuk koneksi ke jaringan internet
menggunakan kelas URL, URLConnection dan HttpURLConnection
yang telah disediakan oleh androidsdk sendiri.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
96
- Algoritma Menganti File
1 membuat tempat penyimapan file
2 membuat nama file
3 menerima file dari internet
4 melakukan proses ganti file
5 menutup proses ganti file
Pada algoritma menganti file akan menggunakan kelas
InputStream dan OutputStream. Untuk lokasi file akan menggunakan
kelas File untuk dimana lokasi file akan di tempatkan
Source Code Koneksi Internet
URL url = new URL(urlString);
URLConnection conn = url.openConnection();
if (!(conn instanceof HttpURLConnection)) {
thrownew IOException("Not an HTTP connection");
} else {
try {
HttpURLConnection httpConn = (HttpURLConnection) conn;
httpConn.setAllowUserInteraction(false);
httpConn.setInstanceFollowRedirects(true);
httpConn.setRequestMethod("GET");
httpConn.connect();
response = httpConn.getResponseCode();
if (response == HttpURLConnection.HTTP_OK) {
in = httpConn.getInputStream();
}
} catch (Exception ex) {
Log.d("Networking", ex.getLocalizedMessage());
thrownew IOException("Error connecting");
}
}
Langkah 1
Langkah
2
Langkah
3
Langkah
3.1
Langkah
3.1.1 Langkah
3.1.1.1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
97
Langkah
1
Source Code Ganti File
File extStorageDirectory = Environment.getExternalStorageDirectory();
String basepath = extStorageDirectory + "/DatabaseKamus/";
String nama = namaFile;
try {
in = BukaKoneksi(URL);
out = new FileOutputStream(basepath + nama);
copyFile(in, out);
in.close();
in = null;
out.flush();
out.close();
out = null;
}
Kelas tipe entitiy Kata.java akan digunakan sebagai tipe data
berbentuk Array/larik untuk membentuk obyek tablehashpada kelas entity
Kamus.java. obyek tablehash tersebut akan digunakan untuk menyimpan data
kata dan arti kata didalam memory. Pada kelas kamus.java akan terdapat
beberapa method antara lain fungsiHash(String), getIncrement(String),
masukanKata(Kata), dan cari(String). Untuk fungsiHash(String) akan
dilakukan proses perhitungan nilai kata dan perhitungan index table
hash(metode pembagian sisa). Method getIncrement(String) akan melakukan
perhitungan jalan lompatan pencarian indeks table hash jika terjadi kolisi antar
kata. Pada method masukanKata(Kata) akan dilakukan double hashing jika
terjadinya kolisi antar kata. Untuk method cari(String) akan dilakukan proses
perhitungan indeks kata untuk mendapatkan indeks table hash yang dicari.
Langkah 2
Langkah 3
Langkah 4
Langkah 5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
98
4. Kamus.java
Fungsi
- Melakukan proses perhitungan nilai kata
- Melakukan perhitungan jarak lompatan
- Melakukan metode hash
- Melakukan proses pencarian indeks
Proses Algoritma
- Algoritma Hitung nilai kata
1 kata[] data = kata.toCharArray()
2 jumAscii = 0
3 for i = 0 to panjang array nilaiKata do
3.1 NilaiKata = (NilaiKata * 128 + kata[i]) mod panjang
array
4end for
5 return jumAscii
Untuk kata akan dilakukan konversi menjadi karakter char
berdasarkan kode ASCII. Proses konversi dibantu dengan kelas yang
sudah di sediakan oleh java yaitu toCharArray().
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
99
- Agortima perhitungan jarak lompatan
1 kata[] data = kata.toCharArray()
2 nilai = 0
3 for i = 0 to panjang array nilaiKata do
3.1 NilaiKata = (NilaiKata * 128 + kata[i]) mod panjang array
4end for
5 n = 7
6 return nilai = n – (nilai % n)
Untuk kata akan perhitungan dengan melakukan konversi
menjadi karakter char berdasarkan kode ASCII. Untuk nilai n di pilih
sembarang dengan syarat n harus bilangan prima dan nilainya harus
lebih kecil dari nilai panjang arraytable hash.
- Algortima metode hash
1 mendapatkan nilai
2 mendapatkan jarak lompatan
3 if(table[index] != null)
4 while (table[index] != null)
5 index = index + jarak
6 index = index % mod
7 return tabel hash[index] = kata
8 else
9 return tabel hash[index] = kata
- Agortima pencarian indeks
1 mendapatkan kata input
2 mendapatkan index
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
100
3 mendapatkan jarak lompatan
4 while (table[index] != null)
5 if(table[index].data=katainput )
6 return tabel hash[index]
7 index = index + jarak
8 index = index % mod
9 return null
Source Code Hitung Kata
char[] charIndex = Kunci.toCharArray();
int nilaiAscii = 0;
for (int i = 0; i < charIndex.length; i++) {
nilaiAscii = (nilaiAscii* 128 + charIndex[i]) % UkuranTabel;
}
return nilaiAscii % modPembagi;
Source Code Perhitungan Jarak Lompatan
char[] charIndex = Kunci.toCharArray();
int hasil = 0;
for (int i = 0; i < charIndex.length; i++) {
nilaiAscii = (nilaiAscii* 128 + charIndex[i]) % UkuranTabel;}
returnkonstanta–(hasil % konstanta);
Source Code Metode Hash
String kunci = inputKunci.kunci;
int index = fungsiHash(kunci, modPembagi);
String doubleHash = inputKunci.kunci;
int jarakLompatan = getIncrement(doubleHash);
if (tabelHash[index] != null) {
while (tabelHash[index] != null) {
index += jarakLompatan;
index %= modPembagi;
}
tabelHash[index]=inputKunci;
} else {
tabelHash[index] = inputKunci;
}
Langkah 1 dan 2
Langkah
3 dan 4 Langkah 3.1
Langkah 5
Langkah 1 dan 2
Langkah
3 dan 4 Langkah 3.1
Langkah 1
Langkah 2
Langkah
3 sampai 8
Langkah 9
Langkah 6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
101
Source Code Pencarian Indeks
int index = fungsiHash(kataInput, modPembagi);
int jarakLompatan = getIncrement(kataInput);
while (tabelHash[index] != null) {
if (tabelHash[index].kunci.equals(kataInput)) {
returntabelHash[index];
}
index += jarakLompatan;
index %= modPembagi;
}
returnnull;
5. Kata.java
Fungsi :
- Digunakan untuk membentuk array obyek pada kelas kamus.java.
- Digunakan untuk membentuk obyek untuk membentuk kamus pada
kelas FormKamus.java
- Digunakan untuk membentuk obyek pada pencarian kata dan arti kata
pada kelas FormKamus.java
Langkah 1 sampai 3
Langkah 4
Langkah 5
Langkah 6
Langkah 7 dan 8
Langkah 9
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
102
b. Implementasi Diagram Kelas Admin
No. Kelas Atribut Method Tipe
1 FormUtama.java
kamusBtn : ImageButton
updateBtn : ImageButton
tentangBtn : ImageButton
extStorageDirectory : File
basepath : String
onCreate(Budle) : void
copyFileToExternalSD() :
void
copyFile(InputStream,
OutputStream) : void
inisialisasi() : void
onClick(View) : void
onCreateOptionsMenu(M
enu) : boolean
onOptionsItemSelected(M
enuItem) : boolean
Interface
2 FormKamus.java
btnCari : Button
btnHslHtg : Button
buttonGanti : Button
d : Kata
cariKata : Kata
directory : File
editText : EditText
inJumTab : String
inJumTabIn : String
jKataDayakTabrakan : int
jKataIndoTabrakan : int
jumTabKamusDayak : int
jumTabKamusIndo : int
kataInput : String
sdCard : File
tabelHashDayak : Kamus
tabelHashIndo : Kamus
textViewInput : TextView
textView : TextView
textDayak : TextView
textIndo : TextView
viewJumTab : TextView
viewJumTabIn : TextView
token : StringTokenizer
konstanta : int
modulu : int
konstantaKamus : String
ModuluKamus : String
onCreate(Budle) : void
onClick(view) : void
setModulu() : void
setInisialisasi() : void
membentukKamusDayak()
: void
membentukKamusIndo()
:void
tampilJumlahTabrakan(int
,int) : void
Interface
3 FormUpdate.java
extStorageDirectory : File
basepath : String
progressBar : ProgressDialog
progressBarStatus : int
progressBarHandler :
Handler fileSize : long
btnUpdate : button
onCreate(Bundle) : void
Download() : int
BukaKoneksi(String) :
InputStream DownloadFIle(String,Stri
ng) : int
copyFile(InputStream,
OutputStream) : void
Interface
4 Kata.java kunci : String
nilai : String
kata(String, String) Entity
5 GantiModulu.java onCreate(Budle) : void Interface
6 Kamus.java tableHash : Kata[]
modPembagi : int
Kamus(int) : Konstruktor
fungsiHash(String) : int Entity
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
103
jumTabrakan : String[]
getIncrement(String, int) :
int
masukanKata(Kata, int) :
int
HitungTabrakanKata(Stri
ng, int) : int
Cari(String) : Kata
Tabel 4.2 Kelas, Atribut, Method dan Tipe
Tipe Interface kelas FormUtama.java, FormKamus.java,
FormUpdate.java, dan GantiModulu.java merupakan tampilan antarmuka
aplikasi. Selain sebagai tampilan kelas FormUtama.javauntuk melakukan
proses copy file dari resource android ke dalam penyimpanan eksternal di
smartphone. KelasFormKamus.java selain sebagai tampilan akan digunakan
sebagai pembentuk kamus, pencarian kata dan arti kata, proses mendapatkan
jumlah tabrakan kata, proses mendapatkan jumlah kata yang mengalami
tabrakan. Pada kelas FormUpdate.java selain sebagai tampilan juga akan
digunakan untuk menjalankan proses update database. Kelas
GantiModulu.java sebagai tampilan reference ganti modulu yang akan di
gunakan pada kelas FormKamus.java. Kelas – kelas interface di gambarkan
dengan table sebagai berikut :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
104
FormUtama
basepath : String
extStorageDirectory : File
kamusBtn : ImageButton
tentangBtn : ImageButton
updateBtn : ImageButton
copyFile(InputStream,
OutputStream) : void
copyFileToExternalSD() : void
inisialisasi() : void
onClick(View) : void
onCreate(Bundle) : void
Untuk kelasFormUtama.java, FormKamus.java, FormUpdate.java dan
GantiModulu.java akan dijabarkan sebagai berikut :
1. FormUtama.java
Untuk kelas interface FormUtama.java admin fungsi, proses
algortima, dan Source Code sama dengan yang di miliki oleh user.
2. FormKamus.java
Dalam FormKamus.java admin fungsi tampilan menu, membentuk
kamus dan pencarian kata, memiliki algoritma dan source yang sama pada
FormKamus.java user. Sedikit perbedaan dengan FormKamus.java user
pada FormKamus.java adminpada method membentukKamusDayak() dan
FormKamus
btnCari : Button
btnGanti : Button
cariKata : Kata
d : Kata
directory : File
editText : EditText
sdCard : File
tabelHashDayak : Kamus
tabelHashIndo : Kamus
token : StringTokenizer
txtDayak : TextView
txtIndo : TextView
txtV : TextView
txtVInput : TextView
copyFile(InputStream,
OutputStream) : void
copyFileToExternalSD() : void
inisialisasi() : void
onClick(View) : void
onCreate(Bundle) : void
FormUpdate
extStorageDirectory : File
basepath : String
progressBar : ProgressDialog
progressBarStatus : int
progressBarHandler : Handler
fileSize : long
btnUpdate : button
onCreate(Bundle) : void
Download() : int
BukaKoneksi(String) : InputStream
DownloadFIle(String,String) : int
copyFile(InputStream,
OutputStream) : void
GantiModulu
onCreate(Budle) : void
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
105
membentukKamusIndo() akan dilakukan proses untuk mendapatkan jumlah
tabrakan kata dan jumlah kata yang mengalami tabrakan. Untuk
mendapatkan jumlah tabrakan dan jumlah kata yang mengalami tabrakan
pada method membentukKamusDayak() dan membentukKamusIndo()akan
memanfaatkan method masukanKata(Kata,int) dan
HitungTabrakanKata(String,int) pada kelas Kamus.java.
sebelum dilakukan proses mendapatkan jumlah tabrakan kata dan
jumlah kata yang mengalami tabrakan pada method
membentukKamusDayak() dan membentukKamusIndo() akan dibentuk 1
buah obyek dari kelas Kamus.java. pada method
membentukKamusDayak() akan dibentuk obyek tablehashDayak dan pada
method membentukKamusIndo() akan dibentuk obyek tablehashIndo. Pada
saat pembentukan kedua obyek ini akan diberikan nilai modulu yang akan
digunakan pada Kamus.java.
Fungsi :
- Sebagai tampilan menu pencarian kata
- Membentuk kamus Dayak Ngaju – Indonesia
- Membentuk kamus Indonesia – Dayak Ngaju
- Melakukan Pencarian Kata
- Mendapatkan jumlah tabrakan kata
- Mendapatkan jumlah kata yang mengalami tabrakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
106
- Menampilkan jumlah tabrakan kata dan jumlah kata yang mengalami
tabrakan
Proses Algoritma :
1 membentuk obyek tabelHash, d
2 membaca data dari database
3 if data !=null
4 while data bisa dibaca
membaca data perbaris
membagi data menjadi kata dan arti kata
data kata = kata
data arti kata = arti kata
d = d (data kata, data arti kata)
TabrakanKata= TabrakanKata+ tabelHashDayak.Masukan kata (d)
jumKataTabrakan=jumKataTabrakan.HitungTabrakanKata(data kata)
5endwhile
6 tutup koneksi
7 endif
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
107
Source Code
tabelHashIndo = new Kamus(modulu);
try {
File file = new File(directory, "indodayak.txt");
FileInputStream fIn = new FileInputStream(file);
InputStreamReader isr = new InputStreamReader(fIn);
BufferedReader bR = new BufferedReader(isr);
if (fIn != null) {
String database;
String key;
String value;
int car;
while ((car = bR.read()) != -1) {
database = (char) car + bR.readLine();
token = new StringTokenizer(database, "=");
key = token.nextToken();
value = token.nextToken();
d = new Kata(key, value);
jumTabKataIndo += tabelHashIndo.masukanKata(d,konstanta);
jKataIndoTabrakan += tabelHashIndo.HitungTabrakanKata(key);
}
fIn.close();
}
Untuk menampilkan jumlah tabrakan kata dan jumlah kata yang
mengalami tabrakan pada kelas interface FormKamus.java akan di
tampilkan dengan memakai method tampilJumlahTabrakan(int,intString).
Untuk pemanggilan method tampilJumlahTabrakan(int,intString) akan di
lakukan pada method onClick(View v). Berikut adalah source code method
tampilJumlahTabrakan(int,intString) dan pemanggilan
tampilJumlahTabrakan(int,intString) pada onClick(View v) :
Langkah 1
Langkah 2
Langkah 5
Langkah 3
Langkah 4
Langkah 6
Langkah 7
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
108
Source Code :
publicvoid tampilJumlahTabrakan(int Jumtabrakan, int jumKataTabrakan, String nama) {
Toast.makeText(getBaseContext(), "Jumlah Tabrakan Kata "+nama+" : " +
String.valueOf(Jumtabrakan) + "\n" +
"Jumlah Kata yang Mengalami Tabrakan : "
+ String.valueOf(jumKataTabrakan), Toast.LENGTH_LONG).show();
}
Source Code pemanggilan method tampilJumlahTabrakan(int,intString): if (textDayak.getText().toString().equals("Dayak")) {
tampilJumlahTabrakan(jumTabKataDayak, jKataDayakTabrakan,"Dayak");
} else {
tampilJumlahTabrakan(jumTabKataIndo, jKataIndoTabrakan,"Indo");
}
3. FormUpdate.java
Untuk kelas interface FormUpdate.java admin fungsi, proses
algortima, dan Source Code sama dengan yang di miliki oleh user.
4. GantiModulu.java
Untuk kelas interface GantiModulu.java akan berfungsi untuk tampilan
input modulu. Modulu yang diinputkan akan digunakan pada kelas
FormKamus.java. berikut adalah source untuk melakukan pemanggilan
tampilan GantiModulu.java :
Source Code :
publicclass GantiModulu extends PreferenceActivity{
@Override
protectedvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.gantimodulu);
}
}
5. Kamus.java
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
109
Kelas Entity Kamus.java admin memiliki beberapa persamaan pada
kelas Entitiy Kamus.java user. Perbedaanya adalah kelas Kamus.java
admin memiliki 1 method tambahan yaitu HitungTabrakanKata(String,int).
Untuk fungsi perhitungan nilai kata, perhitungan jarak lompatan, metode
hash, dan proses pencarian indeks sudah dijelaskan memiliki kesamaan
pada kelas Kamus.java user.
Fungsi
1. Melakukan proses perhitungan nilai kata
2. Melakukan perhitungan jarak lompatan
3. Melakukan metode hash
4. Melakukan proses pencarian indeks
5. Melakukan melakukan proses hitung jumlah tabrakan kata
Proses Algoritma :
Proses Hitung Jumlah Tabrakan Kata
1 mendapatkan nilai
2 mendapatkan jarak lompatan
3 if(table[index] != null)
4 while (table[index] != null)
5 index = index + jarak
6 index = index % mod
7 tabel hash[index] = kata
8 return = 1
9 else
10 tabel hash[index] = kata
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
110
11 return 0
Source code Proses Hitung Jumlah Tabrakan Kata :
int index = fungsiHash(inputKata, modPembagi);
int jarak = getIncrement(inputKata, konstanta);
if (jumTabrakan[index] != null) {
while (jumTabrakan[index] != null) {
index += jarak;
index %= modPembagi;
}
jumTabrakan[index] = inputKata;
return 1;
} else {
jumTabrakan[index] = inputKata;
return 0;
6. Kata.java
Fungsi kelas Kata.java pada kelas admin memiliki fungsi yang
sama kelas Kata.java pada kelas user.
4.4 Pengujian
Tahap akhir dari penelitian ini adalah pengujian sistem dan melakukan riset
pada sistem untuk proses penyusunan kata. Analisis Sistem akan dibagi menjadi
penyelesaian rumusan masalah, kelebihan, serta kekurangan sistem yang telah
dibangun. Pengujian ini berdasarkan pada jumlah data dan panjang
hashtable.Jumlah data pada aplikasi ini adalah 2500 kata bahasa Indonesia dan
2500 Kata bahasa Dayak Ngaju.
Langkah 1
Langkah 2
Langkah 3
Langkah 4 Langkah
5 dan 6
Langkah
7 dan 8
Langkah 9
Langkah
10 dan 11
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
111
4.4.1 Penyelesaian Rumusan Masalah
Pada tahap ini, pengujian dilakukan terhadap data – data masukan,
untuk menguji jumlah tabrakan pada data – data yang di susun di dalam
hashtable. Untuk data kata yang akan menjadi kunci di dalam hashtable
akan ditangani dengan menggunakan proses hitung kata sehingga di
peroleh nilai karakteristik kunci yang unik dan penyusunan kata ke dalam
hashtable akan digunakan metode pembagian sisa. Untuk menangani
tabrakan(kolisi) yang terjadi pada penyusunan kata ke dalam hashtable,
digunakan double hashing.
Hasil pengujian akan terbagi menjadi 2 buah tabel yaitu hasil
pengujian untuk penyusunan Kamus Bahasa Dayak Ngaju dan hasil
pengujian untuk penyusunan Kamus Bahasa Indonesia.
a. Pengujian Kamus Bahasa Dayak Ngaju
Pengujian pada Kamus Bahasa Dayak Ngaju akan diuji
berdasarkan data masukan yaitu 2500 Kata. Dalam pengujian akan
dilakukan menggunakan panjang hashtableyang lebih besar dari
jumlah kata data masukan.
1. Hasil pengujian tabrakan dengan software
Jumlah data : 2500 Kata
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
112
Nom
or
Panjang
Hashtable
Jumlah Kata yang
Mengalami Tabrakan
Jumlah Tabrakan Kata
pada saat terjadi kolisi
Presentase
Penurunan Jumlah
Tabrakan(%)
1 2503 1276 20892 51.04
2 3001 1018 3365 40.72
3 3511 967 2911 38.68
4 4001 759 1504 30.36
5 4507 693 1252 27.72
6 5003 608 1054 24.32
7 5501 597 998 23.88
8 6007 522 786 20.88
9 6521 501 691 20.04
10 7001 473 675 18.92
11 7507 423 601 16.92
12 8009 406 569 16.24
13 8501 393 531 15.72
14 9001 346 473 13.84
15 9511 313 439 12.52
16 10007 274 374 10.96
Tabel 4.3 Hasil Pengujian Kamus Bahasa Dayak Ngaju - Indonesia
2. Hasil Pengujian Regresi
Untuk pengujian Regresi, digunakan fasilitas yang disediakan
oleh MS Excel. Dari perhitungan regresi dapat dibuat persamaan
regresi sebagai berikut :
( )
Dari rumus hasil perhitungan regresi diatas nilai dari Y(jumlah
kata yang mengalami tabrakan) dapat diprediksikan. Dengan
diketahuinya nilai dari X(panjang hashtable) sebagai nilai tetap.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
113
3. Grafik Tabrakan Kata
Gambar 4.1 Grafik Tabrakan Kata Dayak Ngaju
Dari grafik tabrakan, dapat disimpulkan bahwa hubungan
antara panjang hashtable dan jumlah tabrakan dengan data sebanyak
2500, memiliki korelasi negatif. Dengan demikian, jika panjang
hashtable semakin besar maka jumlah tabrakan kata akan semakin
kecil.
b. Pengujian Kamus Bahasa Indonesia
Pengujian pada Kamus Bahasa Indonesia akan diuji
berdasarkan data masukan yaitu 2500 Kata. Dalam pengujian akan
dilakukan menggunakan panjang hashtable yang lebih besar dari
jumlah kata data masukan.
0
200
400
600
800
1000
1200
1400
25
03
30
01
35
11
40
01
45
07
50
03
60
07
65
21
70
01
75
07
80
09
85
01
90
01
95
11
10
00
7
Grafik Tabrakan Kata
Jumlah TabrakanKata
Linear (JumlahTabrakan Kata)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
114
1. Hasil pengujian tabrakan dengan software
Jumlah data : 2500 Kata
Nomor Panjang
Hashtable
Jumlah Kata yang
Mengalami
Tabrakan
Jumlah
Tabrakan Kata
pada saat
terjadi kolisi
Presentase
Penurunan Jumlah
Tabrakan(%)
1 2503 1278 17390 51.12
2 3001 1039 2168 41.56
3 3511 975 2968 39
4 4001 818 1634 32.72
5 4507 752 1395 30.08
6 5003 638 1070 25.52
7 5501 629 1012 25.16
8 6007 536 797 21.44
9 6521 501 768 20.04
10 7001 487 742 19.48
11 7507 431 623 17.24
12 8009 422 624 16.88
13 8501 374 522 14.96
14 9001 360 486 14.4
15 9511 364 456 14.56
16 10007 302 407 12.08
Tabel 4.7 Hasil Pengujian Kamus Bahasa Dayak Ngaju - Indonesia
2. Hasil Pengujian Regresi
Untuk pengujian Regresi, digunakan fasilitas yang disediakan
oleh MS Excel. Dari perhitungan regresi dapat dibuat persamaan
regresi sebagai berikut :
( )
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
115
Dari rumus hasil perhitungan regresi diatas nilai dari Y(jumlah
kata yang mengalami tabrakan) dapat diprediksikan. Dengan
diketahuinya nilai dari X(panjang hashtable) sebagai nilai tetap.
3. Grafik Tabrakan Kata
Gambar 4.2 Grafik Tabrakan Kata Indonesia
Dari grafik tabrakan, dapat disimpulkan bahwa hubungan
antara panjang hashtable dan jumlah tabrakan dengan data
sebanyak 2500, memiliki korelasi negatif. Dengan demikian, jika
panjang hashtable semakin besar maka jumlah tabrakan kata akan
semakin kecil.
Berdasarkan hasil pengujian di atas didapat, baik terhadap data
bahasa Indonesia dan bahasa Dayak Ngaju. Dengan fungsi hash
metode pembagian sisa string dan dengan menggunakan panjang
hashtable yang semakin besar akan mengurangi jumlah tabrakan kata
0
200
400
600
800
1000
1200
14002
50
33
00
13
51
14
00
14
50
75
00
35
50
16
00
76
52
17
00
17
50
78
00
98
50
19
00
19
51
11
00
07
Grafik Tabrakan Kata
Tabrakan Kata
Linear (TabrakanKata)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
116
dan jumlah kata yang mengalami tabrakan pada saat penyusunan kata
ke dalam hashtable. Dari perhitungan regresi berdasarkan data
pengujian didapat 2 buah rumus yaitu
( ) untuk pengujian Kamus Bahasa Dayak Ngaju –
Indonesia dan ( ) untuk Kamus Bahasa
Indonesia – Dayak Ngaju. Sehingga dari kedua rumus tersebut, nilai
dari jumlah tabrakan dapat diprediksikan. Dari dua buah grafik di atas
dapat disimpulkan adanya korelasi negatif antara panjang hashtable
dengan jumlah tabrakan saat penyusunan data ke dalam hashtable.
4.4.2 Uji Coba Aplikasi
Pengujian terhadap aplikasi Kamus Bahasa Dayak Ngaju –
Indonesiadilakukan setelah smartphone yang akan digunakan telah diatur
dan terinstal aplikasi. Pada ujicoba ini user menterjemahkan kata dari
Bahasa DayakNgaju ke Bahasa Indonesia dan sebaliknya.
a. Terjemahan Dayak Ngaju – Indonesia
Dalam menterjemahkan kata Dayak Ngaju ke dalam kata
Indonesia, penguna mula – mula memilih menu kamus. Selanjutnya
akan tampil form cari kata. Untuk mencari kata, penguna
memasukkan keyword, dimana dalam pengisian keyword ini perlu
dimasukan kata secara utuh dari kata Dayak Ngaju yang akan dicari
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
117
terjemahannya.Setelah memasukkan keyword selanjutnya pengguna
akan menekan tombol cari. Selanjutnya di tampilkan keyword dan arti
kata dari keyword yang dimasukan.
b. Terjemahan Indonesia – Dayak Ngaju
Dalam menterjemahkan kata Indonesia ke dalam kata
Indonesia, penguna mula – mula memilih menu kamus. Selanjutnya
akan tampil form cari kata. Untuk mencari kata, penguna
memasukkan keyword, dimana dalam pengisian keyword ini perlu
dimasukan kata secara utuh dari kata Indonesia yang akan dicari
terjemahannya.Setelah memasukkan keyword selanjutnya pengguna
akan menekan tombol cari. Selanjutnya di tampilkan keyword dan arti
kata dari keyword yang dimasukan.
4.4.3 Kelebihan dan Kekurangan
Kelebihan sistem yang dibangun sebagai berikut :
1. Dapat melakukan pencarian pada kata bahasa Dayak Ngaju dan pada
kata bahasa Indonesia dengan cepat.
2. Dapat melakukan update data yang berada di server.
3. Program aplikasi yang dibuat ini sudah dapat dijalankan pada
perangkat smartphone yang berbasis android.
Kekurangan sistem yang dibangun sebagai berikut :
1. User tidak dapat melakukan penambahan data pada database.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
118
2. Jika sistem gagal melakukan update data, pesan gagal tidak bisa di
tampilkan.
3. Aplikasi ini mengabaikan masalah sekuritas untuk transmisi datanya.
4. Apabila data dalam database terlalu banyak akan memerlukan waktu
lama dalam proses penyusunan kamus.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
119
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Pembuatan Aplikasi Kamus Bahasa Dayak Ngaju - Indonesia ini
menggunakan metode hashpada proses penyusunan kamus dan pencarian arti
katanya. Terdapat 2500 kata bahasa Dayak Ngaju dan 2500 kata bahasa Indonesia
sebagai data uji di dalam aplikasi Kamus Bahasa Dayak Ngaju - Indonesia.
Kesimpulan yang diperoleh adalah sebagai berikut :
1. Dari hasil pengujian dengan fungsi hash metode pembagian sisa string dapat
menyimpan data kata kamus dengan baik. Di skripsi ini kasus 2500 kata bisa
disimpan dalam 2503 hashtable
2. Hasil pengujian dari 2500 kata diperoleh jumlah tabrakan dengan panjang
hashtable 2503, jumlah tabrakan kata untuk kamus Dayak Ngaju – Indonesia
adalah 1276 kata dengan penurunan 51.12 % dari total kata dan dengan
kondisi panjang hashtable yang ekstrim yaitu 10007 diperoleh tabrakan kata
sebanyak 274 kata dengan presentase penurunan 10.12 % dari total kata. Dan
jumlah tabrakan kata untuk kamus Dayak – Indonesia adalah 1278 kata
dengan penurunan 51.12 % dari total kata dan dengan kondisi panjang
hashtable yang ekstrim yaitu 10007 diperoleh tabrakan kata sebanyak 302 kata
dengan presentase penurunan 10.96 % dari total kata. Sehingga dapat diambil
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
120
kesimpulan jumlah tabrakan semakin berkurang jika panjang hashtable
bertambah besar
5.2 Saran
Dalam tugas akhir ini, penulis ingin menyampaikan saran yang mungkin
berguna bagi pembaca mengenai penggunaan program aplikasi ini yaitu
Untuk pengembangan aplikasi lebih lanjut sebaiknya dapat menggunakan
proses hitung kata untuk mendapatkan nilai kunci yang memiliki karakteristik
yang lebih unik, menggunakan metode hash yang lain seperti midquare method,
flooding method, dan berbagai metode hash lainnya. Hal itu untuk menunjukan
metode apakah yang lebih optimal dalam menghindari tabrakan kata. Dan untuk
penanganan tabrakan kata(Conclusion) saat terjadi tabrakan kata dalam table hash
sebaiknya menggunakan metode pengalamatan terbuka yang lain seperti liner
probing atau quadratic probing atau menggunakan metode separated chaining.
Hasil terjemahan sebaiknya disertai dengan contoh pemakaian kata dalam
kalimat. Dengan adanya contoh pemakaian kata dalam kalimat diharapkan dapat
lebih memudahkan pengguna aplikasi ini untuk memahami arti dari kata yang
diterjemahkan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
121
DAFTAR PUSTAKA
Buku Teks :
[1] Meier, Retto, 2009, Professional Android Aplication Development, Wiley
Publishing Inc.
[2] Siregar, Ivan Michael, S.T.,M.T, 2011, Membongkar Source Code Berbagai
Aplikasi Android, Penerbit Gava Media
[3] Nugroho Adi. 2008, Algoritma dan Struktur Data Dalam Bahasa Java, C.V
Andy Offset, Yogyakarta
[4] Lafore, Robert, 1998, Data Structure and Algorithms In Java, SAMS
[5] Chaer, Abdul, 2007, Leksikologi dan Leksikografi Indonesia, PT. Rineka
Cipta, Jakarta
[6] Iper, Dunis, 2009, Kamus Bahasa Dayak Ngaju Indonesia, Anugerah Indah
Mandiri, Palangka Raya
[7] Meier, Reto. 2009. Professional Android 2 Application Development.
Indianapolis, Indiana Canada United States of America : Wiley Publishing, Inc
[8] Drozdek, Adam, 2003. Data Structures and Algorithms in Java,
Karya Ilmiah :
[9] Amiral, Muhammad, 2009, Aplikasi Pengingat Sholat dan Arah Kiblat
Menggunakan Global Positioning System(GPS) Berbasis Android 1.8, Teknik
Informatika Institut Teknologi Indonesia.
[10] Rufaida Riffa, 2007, Fungsi Hash dan Metode Collision Resolution,
Teknik Informatika ITB
[11] Heilemen, Gregory L, 2007, How Caching Affects
Hashing,Departement of Electrical and Computer Engineering University of
New Mexico, Albuquerqu,NM
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
122
Situs Website :
[12] Android Developers, Android Documentation, diakses tanggal 19
Desember 2011, http://developer.android.com/guide/topic/data
[13] Google IO, Android Anatomy and Physiology, diakses tanggal 1
Januari 2012, http://sites.google.com/site/io/anatomy-and-physiology-of-and-
android
[14] Thenewboston.org, di akses tanggal 5 Januari 2012, www.thenewboston.org
[15] Android tutorial for expert, diakses tanggal 5 Januari 2012, www.youtubecom
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
123
LAMPIRAN
LAMPIRAN I
DIAGRAM ALIR
1. Penjelasan Diagram Alir Penyusunan Kamus Bahasa Dayak Ngaju – Indonesia
No Diagram Keterangan
1
Proses penyusunan kamus di
mulai
2
Pada bagian ini proses
pembacaan file database di
dalam aplikasi.
3
Aplikasi melakukan proses
perhitungan Nilai Kata (nilai
key)
4
Proses ini mendapatkan hasil
dari jumlah nilai kata (nilai key)
5
Proses ini memperlihatkan
ukuran table hash untuk
menyimpan index dan value.
6
Nilai Keydan Ukuran Tabel akan
di gunakan pada proses ini, yaitu
perhitungan nilai Index
menggunakan fungsi hash.
7
Setelah Index pada table hash
didapatkan dengan
menggunakan fungsi hash
Fungsi Hash
Index = key mod N
N = Ukuran Tabel
Hasil Jumlah Nilai
Kata(nilai key)
Hitung Nilai Kata
(nilai key)
Baca File
Mulai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
124
dilakukanproses perbandingan
untuk menentukan data pada
Index tabel hash sudah terisi atau
belum.
8
Pada flowchat ini proses data key
dan value akan di simpan ke
dalam table hash.
9
Pada proses ini digambarkan
pengalokasian nilai kunci
menggunakan metode hash ke –
dua(double hashing). Untuk
mendapatkan index pada larik
hashtable jika terjadi tabrakan
antar kunci(collision)
10
Proses penyusunan kamus
selesai dijalankan.
2. Penjelasan Diagram Alir Pencarian Padanan Kata Pada Kamus Bahasa Dayak
Ngaju – Indonesia.
No Diagram Keterangan
1
Proses pencarian dimulai
2
Pada proses ini dilakukan proses
penginputan kata
3
Aplikasi melakukan proses
perhitungan Nilai Kata yang
telah diinputkan.
Hitung Nilai Kata Input
Input Kata
Mulai
Selesai
Fungsi Hash ke- dua
Hash ke – dua = M – (key mod M)
Index = key mod N
Index = (Index+ Hash ke – dua) mod N
Simpan key dan value
Data Pada Tabel
Hash Kosong ?
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
125
4
Proses ini mendapatkan hasil dari
jumlah nilai kata yang diinputkan
5
Proses ini memperlihatkan
ukuran table hash untuk
menyimpan index dan value.
6
Nilai Keydan Ukuran Tabel akan
di gunakan pada proses ini, yaitu
perhitungan nilai Index
menggunakan fungsi hash.
7
Proses ini mengambarkan
perbandingkan apakah data pada
index yang di dapat dari
perhitungan fungsi hash di atas
sama dengan kata yang sudah di
inputkan.
8
Proses ini mengambarkan proses
lanjutkan yang terjadi jika data
pada index hash yang didapat
dari perhitungan fungsi hash
diatas nilainya tidak sama dengan
kata input. Sehingga akan di
lakukan pencarian untuk
mendapakan index lain pada
table hash.
9
Proses ini mengambarkan
panjang larik atau array yang
telah di telusuri telah habis atau
null
N = null
Pencarian ke – dua
Hash ke – dua = M – (key mod M)
Index = key mod N
Index = (Index+ Hash ke – dua) mod N
Data pada
Index = Kata Input
Fungsi Hash
Index =Nilai Kata Input mod N
N = Ukuran Tabel
Jumlah Nilai Kata
Input
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
126
10
Proses ini mengambarkan kata
yang diinputkan tidak memiliki
padanan kata pada proses
pencarian di database.
11
Proses ini menunjukan proses
pencarian mendapatkan output
yang kemudian output tersebut
bernilai sama dengan value untuk
kata input yang dicari padanan
katanya.
12
Proses penyusunan kamus selesai
dijalankan.
Selesai
Output = value
Kata tidak ditemukan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
127
LAMPIRAN II
SKENARIO DIAGRAM USE CASE
1. Use Case Mencari arti kata bahasa Dayak Ngaju – Indonesia
Nama Use Case Mencari arti kata bahasa Dayak Ngaju – Indonesia
Tujuan Mendapatkan arti kata dari bahasa Dayak Ngaju ke
bahasa Indonesia
Deskripsi
Dalam proses ini user akan memilih bahasa,
menginputkan kata dari bahasa Dayak Ngaju atau
dari Bahasa Indonesia ke dalam sistem.
Aktor 1. Admin
2. Pengguna / User
Use Case yang Berkaitan -
Skenario Utama
Kondisi Awal User berada di tampilan form Pencarian kata Bahasa
Dayak Ngaju – Indonesia
Aksi Aktor Reaksi Sistem
1. User mengisi kata pada
field, lalu menekan tombol
cari
2. Memeriksa apakah field kosong.
3. Mencocokan data inputan dengan Database
Skenario Alternatif(Jika Gagal)
Aksi Aktor Reaksi Sistem
1. Menampilkan pesan data tidak ada
2. Menampilkan lagi form Pencarian
3. User mengisi data pada
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
128
field, lalu menekan tombol
cari
4. Mencocokan data inputan dengan Database
5. Menampilkan output pada layar
Skenario ALternatif(Jika ingin menganti bahasa)
1. User melakukan klik pada
tanda ganti
2. Menerima inputan user .
3. Melakukan ganti bahasa pencarian(Indonesia ke
Dayak Ngaju)
4. Menampilkan form Pencarian
5. User mengisi data pada
field, lalu menekan tombol
cari
6. Mencocokan data inputan dengan Database
7. Menampilkan output pada layar
Kondisi Akhir User mendapatkan padanan kata yang dicari.
2. Use Case mengupdate Database Kamus
Nama Use Case Mengupdate Database Kamus
Tujuan Mengupdate database yang berada di penyimpanan
sistem
Deskripsi
Dalam proses ini user mengupdate isi database
kamus(Bahasa Indonesia dan Dayak Ngaju), proses
ini update ini terhubung dengan jaringan internet
dan server
Aktor 1. Admin
2. Pengguna / User
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
129
Use Case yang Berkaitan -
Skenario Utama
Kondisi Awal User berada di tampilan form Update Database
Kamus
Aksi Aktor Reaksi Sistem
1. User melakukan klik pada
tombol update database
2. Memeriksa apakah ada data yang sudah di
update.
3. Menerima file dari internet
4. Mengupdate database lama dengan yang baru,
dan menampilkan pesan “berhasil” pada layar.
Kondisi Akhir User memilih dan mengupdate Database Kamus
3. Use Case menganti modulu
Nama Use Case Menganti modulu
Tujuan Menganti modulu untuk proses penyusunan kamus
Deskripsi
Dalam proses ini adminakan melakukan input
jumlah modulu(untuk Bahasa Indonesia atau Bahasa
Dayak Ngaju)
Aktor 1. Admin
Use Case yang Berkaitan -
Skenario Utama
Kondisi Awal Admin berada di tampilan form Utama Kamus
Aksi Aktor Reaksi Sistem
1. Admin melakukan klik
pada tombol menu
2. Sistem menampilkan menu “Setting”
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
130
3. Admin melakukan klik
pada tombol “Setting”
4. Sistem menerima inputan
5. Sistem menampilkan form “Setting”
6. Admin melakukan klik
pada menu “Dayak
Ngaju”
7. Sistem menampilkan form pengisian
8. Admin mengisi form
9. Admin menekan tombol ok
10. Sistem menerima inputan
11. Sistem menampilkan form “Setting”
4. Use Case menganti konstanta
Nama Use Case Menganti konstanta
Tujuan Menganti konstanta untuk proses penyusunan kamus
Deskripsi
Dalam proses ini adminakan melakukan input
jumlah konstanta(untuk Bahasa Indonesia atau
Bahasa Dayak Ngaju)
Aktor 1. Admin
Use Case yang Berkaitan -
Skenario Utama
Kondisi Awal Admin berada di tampilan form Utama Kamus
Aksi Aktor Reaksi Sistem
1. Admin melakukan klik
pada tombol menu
2. Sistem menampilkan menu “Setting”
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
131
3. Admin melakukan klik
pada tombol “Setting”
4. Sistem menerima inputan
5. Sistem menampilkan form “Setting”
6. Admin melakukan klik
pada menu “Dayak
Ngaju”
7. Sistem menampilkan form pengisian
8. Admin mengisi form
9. Admin menekan tombol ok
10. Sistem menerima inputan
11. Sistem menampilkan form “Setting”
5. Use Case Tampil Tabrakan
Nama Use Case Tampil Tabrakan
Tujuan Untuk menampilkan jumlah tabrakan kata dan
jumlah kata yang mengalami tabrakan
Deskripsi
Dalam proses ini adminakan melakukan ganti
bahasa dan melakukan klik pada tombol hitung
untuk menampilkan jumlah tabrakan kata dan
jumlah kata yang mengalami tabrakan
Aktor 1. Admin
Use Case yang Berkaitan -
Skenario Utama
Kondisi Awal Admin di tampilan form Pencarian kata Bahasa
Dayak Ngaju – Indonesia
Aksi Aktor Reaksi Sistem
1. Adminmelakukan klik
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
132
pada tombol hitung
2. Sistem akan menerima inputan
3. Sistem akan menampilkan hasil jumlah tabrakan
kata dan jumlah kata yang mengalami tabrakan.
Skenario ALternatif(Menampilkan jumlah tabrakan)
1. User melakukan klik pada
tanda ganti
2. Menerima inputan user .
3. Melakukan ganti bahasa pencarian(Indonesia ke
Dayak Ngaju)
4. Menampilkan form Pencarian
5. Adminmelakukan klik
pada tombol hitung
6. Sistem akan menerima inputan
7. Sistem akan menampilkan hasil jumlah tabrakan
kata dan jumlah kata yang mengalami tabrakan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
133
LAMPIRAN III
IMPLENTASI ANTAR MUKA
b. Implementasi Desain Antar Muka User
Aplikasi Kamus Bahasa Dayak Ngaju – Indonesia untuk user memiliki 3
menu utama dan 1 menu tambahan. 3 menu utama antara lain menu utama,
menu kamus dan menu update. 1 menu tambahan digunakan sebagai informasi
tentang aplikasi ini. Sebelum mengakses menu kamus, menu update, dan
menu tentang terlebih dahulu harus mengakses menu utama.
1. Implementasi Antar Muka Menu Utama
Antar muka menu utama menjadi tampilan utama dalam aplikasi.
Tampilan utama ini diakses sebelum mengakses menu – menu lain. Kode
program untuk tampilan antar muka Utama adalah sebagai berikut :
<?xmlversion="1.0"encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/background1" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:gravity="center"> <TextView android:id="@+id/Judul" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="center" android:gravity="center" android:text="@string/judulFormUtama"
android:textAppearance="?android:attr/textAppearanceLarge" android:textSize="32sp"/> <TextView
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
134
android:id="@+id/txtViewDownloadSukses" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/txtJudulFormUtama2" android:textAppearance="?android:attr/textAppearanceLarge"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="0.59" android:orientation="vertical" android:gravity="center"> <ImageButton android:id="@+id/ibKamus" android:layout_width="90dp" android:layout_height="90dp" android:layout_gravity="center" android:contentDescription="@string/imageIconKamus" android:src="@drawable/iconkamus"/> <ImageButton android:id="@+id/ibUpdate" android:layout_width="90dp" android:layout_height="90dp" android:contentDescription="@string/imageIconUpdateKamus" android:src="@drawable/iconupdate"/> <ImageButton android:id="@+id/ibTentang" android:layout_width="90dp" android:layout_height="90dp" android:contentDescription="@string/imageIconAboutKamus" android:layout_gravity="center" android:src="@drawable/icontentang"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:id="@+id/txtUraian2" android:layout_gravity="center" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textKetFormUtama" android:textAppearance="?android:attr/textAppearanceSmall"/>
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
135
</LinearLayout> </LinearLayout>
Tampilan Implementasi Antar Muka :
2. Implementasi Antar Muka Menu Kamus
Antar muka kamus adalah tampilan untuk melakukan pencarian kata
Bahasa Dayak Ngaju – Indonesia dan Bahasa Indonesia – Dayak Ngaju.
Antar muka ini diakses setelah user mengakses antar muka menu utama.
Kode program untuk tampilan antar muka kamus adalah sebagai berikut :
<?xmlversion="1.0"encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:background="@drawable/background1"> <LinearLayout android:id="@+id/LinearLayout01" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#ff9900" android:gravity="center"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
136
android:orientation="vertical"> <LinearLayout android:id="@+id/LinearLayoutPilih" android:layout_width="match_parent" android:layout_height="40dp"> <LinearLayout android:id="@+id/LinearLayoutPilih01" android:layout_width="135sp" android:layout_height="40sp"> <TextView android:id="@+id/txtViewDayak" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_gravity="center" android:gravity="center" android:text="@string/textDayak" android:textColor="#ffffff" android:textSize="25sp"/> </LinearLayout> <LinearLayout android:id="@+id/LinearLayoutPilihGanti" android:layout_width="50sp" android:layout_height="40sp"> <Button android:id="@+id/buttonGanti" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/arrow"/> </LinearLayout> <LinearLayout android:id="@+id/LinearLayoutPilih02" android:layout_width="135sp" android:layout_height="40sp"> <TextView android:id="@+id/txtViewIndo" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_gravity="center" android:gravity="center" android:text="@string/textIndo" android:textColor="#ffffff" android:textSize="25sp"/> </LinearLayout>
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
137
</LinearLayout> <LinearLayout android:id="@+id/LinearLayoutCari" android:layout_width="match_parent" android:layout_height="wrap_content"> <EditText android:id="@+id/editKata" android:layout_width="249dp" android:layout_height="wrap_content" android:ems="10" android:hint="@string/txtHint" android:singleLine="true"> <requestFocus/> </EditText> <Button android:id="@+id/btnCari" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:text="@string/btnCariKata"/> </LinearLayout> </LinearLayout> <ScrollView android:id="@+id/scrollView1" android:layout_width="match_parent" android:layout_height="wrap_content"> <LinearLayout android:id="@+id/LinearLayoutLema" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:id="@+id/txtKata" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textStyle="bold" android:text=""/> <TextView android:id="@+id/txtLema" android:layout_width="wrap_content" android:layout_height="wrap_content"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
138
android:textStyle="italic" android:text=""/> </LinearLayout> </ScrollView>
</LinearLayout>
Tampilan Implementasi Antar Muka :
3. Implementasi Antar Muka Menu Update
Antar muka kamu adalah tampilan untuk melakukan update database
kata Bahasa Dayak Ngaju – Indonesia dan Bahasa Indonesia – Dayak
Ngaju. Antar muka ini diakses setelah user mengakses antar muka menu
utama. Kode program untuk tampilan antar muka kamus adalah sebagai
berikut :
<?xmlversion="1.0"encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
139
android:layout_height="match_parent" android:orientation="vertical" android:background="@drawable/background1" android:gravity="center"> <Button android:id="@+id/btnDownload" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/btnDownload"/>
</LinearLayout>
Tampilan Implementasi Antar Muka :
4. Implementasi Antar Muka Menu Tentang
Antar muka kamu adalah tampilan untuk informasi kamus Bahasa
Dayak Ngaju - Indonesia. Antar muka ini diakses setelah user mengakses
antar muka menu utama. Kode program untuk tampilan antar muka kamus
adalah sebagai berikut :
<?xmlversion="1.0"encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/background1" android:orientation="vertical">
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
140
<LinearLayout android:id="@+id/LinearLayoutUtama" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <ScrollView android:id="@+id/scrollView1" android:layout_width="match_parent" android:layout_height="wrap_content"> <LinearLayout android:id="@+id/LinearLayoutJudul" android:layout_width="match_parent" android:layout_height="40sp" android:gravity="center" android:orientation="vertical"> <TextView android:id="@+id/Judul" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/app_name" android:textSize="18sp" android:textStyle="bold"/> <LinearLayout android:id="@+id/LinearLayoutUraian" android:layout_width="match_parent" android:layout_height="97dp" android:gravity="center" android:orientation="vertical"> <TextView android:id="@+id/txturaian" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/uraian" android:textAppearance="?android:attr/textAppearanceSmall"/> </LinearLayout> <LinearLayout android:id="@+id/LinearLayoutJudulFitur" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:id="@+id/txtFitur"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
141
android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/fitur" android:textSize="14sp" android:textStyle="bold"/> </LinearLayout> <LinearLayout android:id="@+id/LinearLayoutFiturUraian" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal"> <LinearLayout android:id="@+id/LinearLayoutUraian1" android:layout_width="wrap_content" android:layout_height="match_parent" android:orientation="vertical" android:weightSum="100"> <ImageView android:id="@+id/imageView1" android:layout_width="22dp" android:layout_height="22dp" android:layout_weight="10" android:src="@drawable/arrow"/> <ImageView android:id="@+id/imageView2" android:layout_width="22dp" android:layout_height="22dp" android:layout_weight="80" android:src="@drawable/arrow"/> <ImageView android:id="@+id/imageView3" android:layout_width="22dp" android:layout_height="22dp" android:layout_weight="10" android:src="@drawable/arrow"/> </LinearLayout> <LinearLayout android:id="@+id/LinearLayoutUraian2" android:layout_width="wrap_content" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:id="@+id/txtUraian1"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
142
android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/txtUraian1"/> <TextView android:id="@+id/txtUraian2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/txtUraian2"/> <TextView android:id="@+id/txtUraian3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/txtUraian3"/> </LinearLayout> </LinearLayout> <LinearLayout android:id="@+id/LinearLayoutPenjelasan" android:layout_width="match_parent" android:layout_height="30sp" android:gravity="center" android:orientation="vertical"> <TextView android:id="@+id/textView7" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/txtViewJudulPenjelasan" android:textSize="14sp" android:textStyle="bold"/> </LinearLayout> <LinearLayout android:id="@+id/LinearLayoutPenjelasanUraian" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:id="@+id/txtUraianks" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20sp" android:text="@string/txtUraian01"/> <TextView android:id="@+id/txtUraiankb" android:layout_width="wrap_content"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
143
android:layout_height="wrap_content" android:layout_marginLeft="20sp" android:text="@string/txtUraian02"/> <TextView android:id="@+id/txtUraiankk" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20sp" android:text="@string/txtUraian03"/> <TextView android:id="@+id/txtUraianKket" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20sp" android:text="@string/txtUraian04"/> <TextView android:id="@+id/txtSangiang" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20sp" android:text="@string/txtUraian05"/> <TextView android:id="@+id/txtPron" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20sp" android:text="@string/txtPron"/> <TextView android:id="@+id/txtnp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20sp" android:text="@string/txtnp"/> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20sp" android:text="@string/txtni"/> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
144
android:layout_marginLeft="20sp" android:text="@string/txtnk"/> <TextView android:id="@+id/textView4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20sp" android:text="@string/txtnt"/> <TextView android:id="@+id/textView5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20sp" android:text="@string/txtark"/> </LinearLayout> <LinearLayout android:id="@+id/LinearLayoutTerimaKasih" android:layout_width="match_parent" android:layout_height="30sp" android:gravity="center" android:orientation="vertical"> </LinearLayout> <LinearLayout android:id="@+id/LinearLayoutJudulTerima" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:id="@+id/txtViewDownloadSukses" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/txtJudulInformasi" android:textAppearance="?android:attr/textAppearanceMedium" android:textSize="14sp" android:textStyle="bold"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:id="@+id/txtViewJum01"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
145
android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/txtNamaPengembang"/> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/txtEmail"/> </LinearLayout> </LinearLayout> </ScrollView> </LinearLayout>
</LinearLayout>
Tampilan Implementasi Antar Muka :
c. Implementasi Desain Antar Muka Admin
Aplikasi Kamus Bahasa Dayak Ngaju – Indonesia untuk admin memiliki 4
menu utama. 3 menu utama antara lain menu utama, menu kamus, menu
update dan menu ganti modulu. Sebelum mengakses menu kamus, menu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
146
update terlebih dahulu harus mengakses menu utama. Sedangkan untuk menu
ganti modulu akan menggunakan PreferenceScreen Android.
2. Implementasi Antar Muka Menu Utama
Antar muka menu utama menjadi tampilan utama dalam aplikasi.
Tampilan utama ini diakses sebelum mengakses menu – menu lain. Kode
program untuk tampilan antar muka Utama adalah sebagai berikut :
<?xmlversion="1.0"encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/background1" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:gravity="center"> <TextView android:id="@+id/Judul" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="center" android:gravity="center" android:text="@string/judulFormUtama" android:textAppearance="?android:attr/textAppearanceLarge" android:textSize="32sp"/> <TextView android:id="@+id/txtViewDownloadSukses" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/txtJudulFormUtama2" android:textAppearance="?android:attr/textAppearanceLarge"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="0.59"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
147
android:orientation="vertical" android:gravity="center"> <ImageButton android:id="@+id/ibKamus" android:layout_width="90dp" android:layout_height="90dp" android:layout_gravity="center" android:contentDescription="@string/imageIconKamus" android:src="@drawable/iconkamus"/> <ImageButton android:id="@+id/ibUpdate" android:layout_width="90dp" android:layout_height="90dp" android:contentDescription="@string/imageIconUpdateKamus" android:src="@drawable/iconupdate"/> <ImageButton android:id="@+id/ibTentang" android:layout_width="90dp" android:layout_height="90dp" android:contentDescription="@string/imageIconAboutKamus" android:layout_gravity="center" android:src="@drawable/icontentang"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:id="@+id/txtUraian2" android:layout_gravity="center" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textKetFormUtama" /> </LinearLayout> </LinearLayout>
Tampilan Implementasi Antar Muka :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
148
3. Implementasi Antar Muka Menu Kamus
Antar muka kamus adalah tampilan untuk melakukan pencarian kata
Bahasa Dayak Ngaju – Indonesia dan Bahasa Indonesia – Dayak Ngaju
dan menghitung serta menampilkan tabrakan kata dalam penyusunan
kamus. Antar muka ini diakses setelah admin mengakses antar muka menu
utama. Kode program untuk tampilan antar muka kamus adalah sebagai
berikut :
<?xmlversion="1.0"encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/background1" android:orientation="vertical" android:weightSum="100"> <LinearLayout android:id="@+id/layout1" android:layout_width="match_parent" android:layout_height="wrap_content"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
149
android:layout_weight="5.19" android:background="#ff9900" android:gravity="center" android:orientation="vertical"> <LinearLayout android:id="@+id/linearLayout2" android:layout_width="match_parent" android:layout_height="40dp"> <LinearLayout android:id="@+id/linearLayout3" android:layout_width="135sp" android:layout_height="40sp"> <TextView android:id="@+id/textViewDayak" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_gravity="center" android:gravity="center" android:text="@string/textDayak" android:textColor="#ffffff" android:textSize="25sp"/> </LinearLayout> <LinearLayout android:id="@+id/linearLayout4" android:layout_width="50sp" android:layout_height="40sp"> <Button android:id="@+id/buttonGanti" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/arrow"/> </LinearLayout> <LinearLayout android:id="@+id/linearLayout5" android:layout_width="135sp" android:layout_height="40sp"> <TextView android:id="@+id/textViewIndo" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_gravity="center" android:gravity="center" android:text="@string/textIndo"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
150
android:textColor="#ffffff" android:textSize="25sp"/> </LinearLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <EditText android:id="@+id/editKata" android:layout_width="250dp" android:layout_height="wrap_content" android:ems="10" android:hint="@string/textHint" android:singleLine="true"> <requestFocus/> </EditText> <Button android:id="@+id/btnCari" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:text="@string/btnCari"/> </LinearLayout> </LinearLayout> <ScrollView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="95.44"> <LinearLayout android:id="@+id/layout2" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:id="@+id/textViewKey" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textHasil"android:textAppearance="?android:attr/textAppearanceLarge" android:textStyle="bold"/> <TextView
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
151
android:id="@+id/textViewHasil" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textHasil"android:textAppearance="?android:attr/textAppearanceLarge" android:textStyle="italic"/> </LinearLayout> </ScrollView> <LinearLayout android:id="@+id/layout3" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:gravity="center"> <Button android:id="@+id/btnHasilHitung" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/btnLihatHasil"/> </LinearLayout> </LinearLayout>
Tampilan Implementasi Antar Muka :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
152
4. Implementasi Antar Muka Menu Update
Antar muka kamu adalah tampilan untuk melakukan update database
kata Bahasa Dayak Ngaju – Indonesia dan Bahasa Indonesia – Dayak
Ngaju. Antar muka ini diakses setelah adminmengakses antar muka menu
utama. Kode program untuk tampilan antar muka kamus adalah sebagai
berikut :
<?xmlversion="1.0"encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/LinearLayoutUtama" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:orientation="vertical" android:background="@drawable/background1"> <Button android:id="@+id/btnDownloadFile" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/btnDownloadFile"/>
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
153
</LinearLayout>
Tampilan Implementasi Antar Muka :
5. Implementasi Antar Muka Ganti Modulu
Antar muka kamu adalah tampilan untuk menginputkan modulu
pembagi yang akan digunakan dalam penyusunan kamus Dayak Ngaju -
Indonesia. Antar muka ini diakses setelah adminmengakses antar muka
menu utama. Admin harus melakukan klik “menu” pada hardware button
android terlebih dahulu agar menu freference dapat ditampilkan. Kode
program untuk tampilan antar muka kamus adalah sebagai berikut :
<?xmlversion="1.0"encoding="utf-8"?> <PreferenceScreenxmlns:android="http://schemas.android.com/apk/res/android"> <EditTextPreference android:key="konstanta" android:summary="Input Konstanta" android:title="Konstanta" /> <EditTextPreference android:key="mod" android:summary="Input Modulu" android:title="Modulu"/>
</PreferenceScreen>
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
154
Tampilan Implementasi Antar Muka :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI