• Tidak ada hasil yang ditemukan

BAB 2 LANDASAN TEORI 2.1. Kamus - Penerapan Algoritma Brute Force pada Perancangan Aplikasi Kamusta Bahasa Indonesia-Inggris Berbasis Android

N/A
N/A
Protected

Academic year: 2019

Membagikan "BAB 2 LANDASAN TEORI 2.1. Kamus - Penerapan Algoritma Brute Force pada Perancangan Aplikasi Kamusta Bahasa Indonesia-Inggris Berbasis Android"

Copied!
10
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

2.1. Kamus

Menurut Kamus Besar Bahasa Indonesia, pengertian kamus adalah buku acuan yang memuat kata dan ungkapan yang biasanya disusun menurut abjad berikut keterangan maknanya, pemakaiannya dan terjemahannya. Kamus juga dapat digunakan sebagai buku rujukan yang menerangkan makna kata – kata yang berfungsi untuk membantu seseorang mengenal perkataan baru.

Selain pengertian kamus yang telah disebutkan di atas, pengertian kamus yang dikemukakan oleh beberapa para ahli Chaer (2007 : 179).

1. Kridalaksana menyebutkan bahwa kamus adalah buku referensi yang memuat daftar kata atau gabungan kata dengan keterangan mengenai pelbagai segi maknanya dan penggunaannya dalam bahasa, biasanya disusun menurut abjad. 2. Dalam American Every Dictionary disebutkan bahwa kamus adalah sebuah

buku berisi kata-kata dari sebuah bahasa, biasanya disusun secara alfabetis, disertai keterangan akan artinya ucapannya, ejaannya, dsb.

3. Labrousse (1997) menyebutkan bahwa kamus adalah buku berisi kumpulan kata-kata sebuah bahasa yang disusun secara alfabetis, diikuti dengan defenisi atau terjemahannya dalam bahasa lain.

(2)

2.2. Kamusta

Kamusta ialah sebuah aplikasi kamus yang dirancang dengan mode offline dan online

yang dapat menerjemahkan dari bahasa Indonesia ke bahasa Inggris dan sebaliknya dengan fitur tambahan seperti text to speech, online translator, speech recognition dan fitur copy-paste.

2.3. Pencocokan String (String Matching)

”Algoritma pencarian string atau sering disebut juga pencocokan string adalah algoritma yang melakukan pencarian sebuah pattern pada sebuah teks” (Charras, et al.2001). Algoritma pencocokan string dapat diklasifikasikan menjadi tiga bagian menurut arah pencariannya, yaitu:

1. Pencarian dari arah kiri ke kanan yang merupakan arah untuk membaca, algoritma yang termasuk kategori ini adalah algoritma Brute Force dan algoritma Knuth Morris Pratt.

2. Pencarian dari arah kiri ke kanan yang biasanya menghasilkan hasil yang terbaik secara praktial,contohnya adalah algoritma boyer-moore, algoritma

turbo boyer-moore, algoritma tuned boyer-moore dan algoritma zhu-takaoka. 3. Pencarian dari arah yang sudah ditentukan secara spesifik oleh algoritma

tersebut,arah ini menghasilkan hasil yang terbaik secara teoritis, contohnya adalah algoritma Colossi dan algoritma Crochemore - Perrin.

2.4. Algoritma Brute Force

Algoritma Brute Force, yang juga disebut sebagai “naive” merupakan algoritma paling sederhana yang dapat digunakan pada pencarian pola. Algoritma ini tidak membutuhkan preprocessing (proses sebelumnya) dari pola atau teks (Abdeen, 2011).

(3)

2. Dari kiri ke kanan, algoritma ini akan mencocokan karakter per karakter

pattern dengan karakter di teks yang bersesuaian, sampai salah satu kondisi berikut dipenuhi :

a. Karakter di pattern dan di teks yang dibandingkan tidak cocok b. Semua karakter di pattern cocok. Kemudian algoritma akan

memberitahukan penemuan di posisi ini.

3. Algoritma kemudian terus menggeser pattern sebesar satu langkah ke kanan dan mengulangi langkah ke-2 sampai pattern berada di ujung teks.

2.5.Android

Sebagai sebuah sistem operasi untuk perangkat mobile yang berbasis linux maka

Android pada dasarnya mencakup sistem operasi middleware dan aplikasi (penerapan). Dengan demikian maka Android menyediakan platform yang terbuka bagi siapa saja yang berminat untuk mengembangkan lebih jauh tentang sistem ini yang bertujuan untuk pencapaian dari aplikasi tersebut.

Sebagai generasi baru dari platform mobile maka platform yang disediakan oleh Android bagi pengembang untuk pengembangan lebih lanjut dari sistem yang telah terbuka untuk memperoleh hasil yang lebih maksimal Android menggunakan sistem operasi GNU sesuai dengan lisensi yang diperolehnya yang lebih dikenal dengan General Public Lisensi Versi 2 (GPL v2). Lisensi itu terkenal dengan nama

copyleft.

(4)

2.5.1. Arsitektur android

Secara garis besar Arsitektur Android dapat dijelaskan dan digambarkan pada Gambar 2.1.

Gambar 2.1. Arsitektur Android

(Sumber: Learning Android, 2011) a. Application dan Widgets

Application dan Widgets ini adalah layer di mana kita berhubungan dengan aplikasi saja, dimana biasanya kita download aplikasi kemudian kita lakukan instalasi dan jalankan aplikasi tersebut. Di layer terdapat aplikasi inti termasuk klien email, program SMS, kalender, peta, browser, kontak dan lain-lain. Semua aplikasi ditulis menggunakan bahasa pemrograman Java”.

b. Applications Frameworks

Applications Frameworks adalah layer dimana para pembuat aplikasi melakukan pengembangan / pembuatan aplikasi yang akan dijalankan di sistem operasi Android, karena pada layer inilah aplikasi dapat dirancang dan dibuat, seperti content-providers

yang berupa sms dan panggilan telepon”.

c. Libraries

(5)

d. Android Run Time

Android Run Time terbagi menjadi dua bagian yaitu:

- Core Libraries: Aplikasi Android dibangun dalam bahasa java, sementara Dalvik sebagai virtual mesinnya bukan Virtual Machine Java, sehingga diperlukan sebuah library yang berfungsi untuk menerjemahkan bahasa

Java C, yang ditangani oleh Core Library.

- Dalvik Virtual Machine: Virtual machine berbasis register yang dioptimalkan untuk menjalankan fungsi-fungsi secara efisien, dimana merupakan pengembangan yang mampu membuat linux kernel untuk melakukan threading dan manajemen tingkat rendah”.

e. Linux Kernel

”Linux kernel adalah layer dimana inti dari operating system dari Android itu berada. Berisi file-file system yang mengatur sistem processing, memory, resource drivers dan sistem-sistem operasi processing, memory, resource, drivers dan system-sistem operasi Android lainnya. Linux kernel yang digunakan Android adalah linux kernel release 2.6”.

2.6. Java

Java adalah sebuah teknologi dimana pada teknologi tersebut mencakup java sebagai bahasa pemrograman yang memiliki sintaks dan aturan pemrograman tersendiri, juga mencakup java sebagai platform dimana teknologi ini memiliki virtual machine dan

library yang diperlukan untuk menulis dan menjalankan program yang ditulis dengan bahasa pemrograman java (Rickyanto, 2003).

Alasan terbesar dalam pembuatan bahasa pemrograman java adalah keinginan akan terbentuknya suatu bahasa pemrograman yang bisa berjalan di berbagai perangkat tanpa harus terikat oleh platform, sehingga java ini bersifat portable dan

(6)

2.7. Eclipse

”Eclipse merupakan kakas universal untuk semua platform yang mana sifat universal Eclipse didapat dari kemampuannya untuk menerima aneka modul tambahan (plug-in) di dalamnya” (Nugroho, 2008). Eclipse bisa disebut juga sebagai sebuah IDE (Integrated Development Environment) yang berfungsi untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Eclipse merupakan sebuah software yang dapat digunakan untuk membuat sebuah pemrograman Android dimana di dalamnya dapat dimasuki oleh Software Development Kit ( SDK ) dari Android tersebut.

Eclipse menjadi salah satu IDE yang banyak digemari dikarenakan banyak sekali kelebihan yang dimiliiki olehnya, salah satu kelebihannya adalah kemampuannya untuk dapat dikembangkan oleh pengguna atau developer dengan sebuah komponen yaitu plugin. Berikut ini adalah sifat – sifat dari Eclipse :

1. Multi – Platform

Target sistem operasi pada Eclipse adalah Microsoft Windows, Linux,Solaris, AIX, HP – UX dan Mac OS X.

2. Multi – Language

Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya,seperti : C / C++, Cobol, Python, Perl dan PHP.

3. Multi – Role

Selain sebagai IDE untuk pengembangan aplikasi, Eclipse juga dapat digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, tes perangkat lunak dan pengembangan web.

2.8.Database

”Basis data (database) adalah kumpulan informasi yang disimpan didalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut” (Sutanta, 2004).

(7)

2. Data dapat digunakan oleh pemakai yang berbeda-beda atau beberapa program aplikasi tanpa perlu mengubah basis data.

3. Data dalam basis data dapat berkembang dengan mudah baik volume

maupun strukturnya.

4. Data yang ada dapat memenuhi kebutuhan sistem - sistem baru secara mudah.

5. Data dapat digunakan dengan cara yang berbeda-beda. 6. Kerangkapan data (data redundancy) minimal.

2.9. UML (Unified Modelling Language)

UML (Unified Modeling Language) adalah Bahasa pemodelan untuk sistem atau perangkat lunak yang berparadigma berorientasi objek (Nugroho, 2010). UML ini berfungsi untuk membantu para developer untuk menggambarkan alur dari sebuah sistem yang akan dibangun, gambaran mengenai alur sistem tersebut akan terwakili oleh simbol-simbol yang ada dalam diagram – diagram.

2.9.1. Use case diagram

Use case pada dasarnya merupakan unit fungsionalitas koheren yang diekspresikan sebagai transaksi-transaksi yang terjadi antara actor dan sistem (Nugroho, 2008). Kegunaan use case sesungguhnya adalah untuk mendefinisikan suatu bagian perilaku sistem yang bersifat koheren tanpa perlu menyingkap struktur internal sistem/perangkat lunak yang sedang dikembangkan. Berikut adalah beberapa simbol di dalam use case diagram :

(8)

2.9.2. Activity diagram

Activity diagram sesungguhnya merupakan bentuk khusus dari state machine yang bertujuan memodelkan komputasi-komputasi dan aliran-aliran kerja yang terjadi dalam sistem / perangkat lunak yang sedang dikembangkan (Nugroho, 2008). Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Berikut adalah beberapa simbol di dalam activity diagram :

Tabel 2.2.Tabel simbol activity diagram

2.9.3. State diagram

(9)

Tabel 2.3.Tabel simbol state diagram

2.9.4. Class Diagram

Diagram kelas atau class diagram menunjukkan interaksi antar kelas dalam sistem (Sholiq, 2006). Diagram kelas mengandung informasi dan tingkah laku segala sesuatu yang berkaitan dengan informasi tersebut. Adapun kegunaan dari class diagram

adalah sebagai berikut (Hariyanto, 2004) :

1. Mengelompokkan obyek – obyek menjadi kelas – kelas berarti mengabstraksikan masalah yang sedang dihadapi.

2. Definisi – definisi common (seperti nama kelas dan atribut) cukup disimpan sekali per instan kelas (obyek).

2.10. Penelitian Terdahulu

(10)

Inexact String Matching dan Sri Wahyuni Husain (2013) menerapkan algoritma

Gambar

Gambar 2.1. Arsitektur Android(Sumber:  Learning Android, 2011)
Tabel 2.1.Tabel simbol dalam use case diagram
Tabel 2.2.Tabel simbol activity diagram
Tabel 2.3.Tabel simbol state diagram
+2

Referensi

Dokumen terkait

kegiatan Posyandu dan perlu jadwal yang teratur dalam. pelaksanaan

Dalam metode penelitian ini bertujuan untuk perencanaan konstruksi alat uji Tarik yang dibuat meliputi pengambilan data-data dari studi literature, data hasil

Secara umum jika dilihat dari karakteristik tingkat maturitas penyelenggaraan SPIP (Tabel1), pada tingkat level ini berarti pemerintah kota Pekanbaru telah

Mendisain Tampilan Dampak Sampah Terhadap Lingkungan 39 Mendisain Tampilan Dampak Sampah Terhadap Air 41 Mendisain Tampilan Dampak Sampah Terhadap Tanah 43 Mendisain

Di antara Protozoa tersebut yang termasuk dalam kelompok Flagellata adalah A. Burung, buaya, ikan, katak, dan kambing digolongkan dalam subfilum yang sama!. berdasarkan

Model turbin yang menjaga keluaran dari penelitian ini diperoleh dari gabungan disain turbin mini dengan head rendah jenis propeller dengan rumah-rumah berbentuk

pandang nilai dan kepercayaan? 3.1.4 Pemeriksaan Fisik 1) Aktivitas: lelah, dan tidak bertenaga. 2) Sirkulasi: sirkulasi O2 < 95% , sianosis, nadi mungkin tidak teratur.

Penelitian ini bertujuan untuk mengetahui hubungan asupan niasin terhadap kadar sdLDL pada pasien PJK sehingga diharapkan penelitian ini dapat bermanfaat dalam