• Tidak ada hasil yang ditemukan

Deteksi String Palindrom Menggunakan Pemrograman Java.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Deteksi String Palindrom Menggunakan Pemrograman Java."

Copied!
93
0
0

Teks penuh

(1)

FAKULTAS TEKNOLOGI INDUSTRI

Jl. Rungkut Madya Gunung Anyar Surabaya 60294 Tlp. (031) 8706369, 8783189 Fax (031) 8706372 Website: www.upnjatim.ac.id

KETERANGAN REVISI

Mahasiswa di bawah ini :

Nama : Taufik Restu Hendrawan NPM : 0734010064

Program Studi : Teknik Informatika Telah mengerjakan revisi skripsi dengan judul :

“ DETEKSI STRING PALINDROME MENGGUNAKAN PEMROGRAMAN JAVA”.

Oleh karenanya mahasiswa tersebut diatas dinyatakan bebas revisi skripsi dan diijinkan untuk membukukan skripsi dengan judul tersebut.

Surabaya, Oktober 2012 Dosen Penguji yang memerintahkan revisi:

1.) Basuki Rahmat, S.Si. MT

{

}

NIP/NPT. 3 6907 06 0209 1

2.) Intan Yuniar Purbasari. S.kom, MSc

{

}

NIP/NPT. 3 8006 04 0198 1

3.) I Gede Susrama Mas Diyasa, ST, MT

{

}

NIP/NPT. 270 060 640 210

Mengetahui, Dosen Pembimbing Dosen Pembimbing Utama

Rr. Ani Dijah R, ST, M.CS NIP/NPT. 19730512 2005 01 2 003

Dosen Pembimbing Pendamping

(2)

Pembimbing II :Dr.Ir. Ni Ketut Sari, MT Penyusun :Taufik Restu Hendrawan

i ABSTRAK

Ilmu adalah sebuah cara yang dipakai untuk mempelajari suatu aspek agar seseorang dapat memahami dan selanjutnya menguasainya sebagai kompentensi diri. Sementara pengetahuan adalah segala hal yang menjadi seseorang mengetahui seluk beluk aspek kehidupan. Dengan demikian seseorang dapat mengartikan secara bebas bahwa ilmu pengetahuan adalah cara yang dipakai untuk mempelajari segala sesuatu yang ada dalam aspek kehidupan. Ilmu telah mengalami perkembangan yang sangat pesat. Indikasi untuk itu adalah munculnya ilmu-ilmu yang baru, semakin bertambahnya cabang-cabang dari ilmu tertentu yang telah ada, serta ditemukannya teori-teori ilmiah dalam berbagai bidang. Berkembangnya ilmu membawa keuntungan dan kemudahan bagi kehidupan manusia yaitu banyaknya persoalan yang dapat terpecahkan dan banyaknya pekerjaan yang dapat diselesaikan secara efektif dan efisien. Tidak dapat dipungkiri bahwa ilmu beserta penerapannya, yaitu teknologi, merupakan unsur kebudayaan yang sangat dibutuhkan bagi kehidupan manusia. Oleh karena itu, mengingat arti penting sebuah ilmu untuk pembelajaran, penulis mengangkat sebuah ide untuk menjadi bahan rujukan yaitu penambahan wawasan ilmu pengetahuan pembelajaran sebuah kata dengan aplikasi yaitu mendeteksi kalimat berbahasa Indonesia khususnya, apakah didalam kalimat berita tersebut terkandung kalimat atau kata-kata yang memiliki unsur palindrome. Palindrom sendiri merupakan sebuah kata, frasa, angka maupun susunan lainnya yang dapat dibaca dengan sama baik dari depan maupun belakang. Contoh: ada, apa, ara, asa, bab, ini, katak, kodok, makam, malam, radar, taat, dan lain-lain.

Oleh karena itu, dalam penelitian skripsi ini, penulis mengangkat suatu topik dimana dapat mengaplikasi suatu program yang ditulis dengan bahasa pemrograman Java, yaitu aplikasi deteksi string palindrom yang dapat melakukan proses deteksi string untuk menentukan apakah string tersebut termasuk palindrom atau tidak, baik secara horizontal maupun vertikal.

(3)

ii

Dengan nama Allah SWT Yang Maha Pengasih dan Maha Penyayang Segala puji dan syukur bagi Allah SWT karena atas rahmat dan hidayahNya-lah penulis dapat menyelesaikan tugas akhir yang berjudul “Deteksi String Palindrom Untuk Teks Berita Bahasa Indonesia Menggunakan Pemrograman Java” . Sholawat dan Salam atas junjungan kita Nabi Besar Muhammad SAW. Beserta keluarga dan para sahabat sekalian.

Skripsi ini disusun dengan tujuan memenuhi syarat untuk memperoleh gelar Sarjana Komputer di Universitas Pembangunan Nasional “Veteran” JATIM.

Pengarahan, bimbingan dan dukungan dari semua pihak merupakan faktor yang sangat membantu penulis dalam menyelesaikan karya ini, maka dari itu dalam kesempatan ini penulis ingin mengucapkan terima kasih kepada :

1. Kedua Orang Tua penulis ( Bpk.Edi Suhardono dan Ibu Prihandani ) beserta Adik ku yang tercinta ( Wirawan Navianto dan Eprin Fadilah ) yang telah memberikan doa, serta bantuan dan dorongan semangat baik secara moril maupun materil yang tidak ternilai harganya, kebahagiaanmu adalah tujuan hidupku.

2. Bapak Ir Sutiyono, MT, selaku Dekan FTI, UPN “Veteran” Jawa Timur. 3. Ibu Dr.Ir.Ni Ketut Sari, MT selaku ketua jurusan Teknik Informatika, FTI,

UPN “Veteran” Jawa Timur.

(4)

iii

Yoppy (TF), Bayu (TF), Helmy (TF), Rased (TF), Almon (TF), Prima (TF), Bingkar (SI), Sandy (TF), Tammy (SI), Terima kasih atas doa dan semua dukungannya.

7. Teman-teman Seperumahan yang memberikan semangat, motifasi dan doa. 8. Dan semua pihak yang telah membantu dalam penyusunan tugas akhir ini,

penyusun tidak dapat menyebutkan satu persatu.

Akhir kata penulis menyadari bahwa Skripsi ini masih jauh dari sempurna, oleh karena itu penulis sangat mengharapkan kritik dan saran yang bersifat membangun. Namun, penulis tetap berharap agar karya ini dapat bermanfaat bagi para pembaca khususnya bagi rekan - rekan mahasiswa.

Surabaya, Agustus 2012

(5)

DETEKSI STRING PALINDROME MENGGUNAKAN

PEMROGRAMAN JAVA

Disusun Oleh :

TAUFIK RESTU HENDRAWAN

NPM : 0734010005

Telah disetujui mengikuti Ujian Negara Lisan

Gelombang Agustus Tahun Akademik 2012/2013

Menyetujui,

Pembimbing Utama

Rr. Ani Dijah R, ST, M.CS

NIP/NPT. 19730512 2005 01 2 003

Pembimbing Pendamping

Dr. Ir. Ni Ketut Sari, MT

NIP/NPT. 19650731 199203 2 001

Mengetahui,

Kepala Program Studi Teknik Informatika

Fakultas Teknologi Industri

Universitas Pembangunan Nasional “Veteran” Jawa Timur

(6)

DETEKSI STRING PALINDROME MENGGUNAKAN

PEMROGRAMAN JAVA

Disusun Oleh :

TAUFIK RESTU HENDRAWAN NPM : 0734010064

Telah dipertahankan dihadapan dan diterima oleh Tim Penguji Skripsi Program Studi Teknik Informatika, Fakultas Teknologi Industri

Universitas Pembangunan Nasional “Veteran” Jawa Timur Pada tanggal Oktober 2012

PEMBIMBING : 1.

Rr. Ani Dijah R, ST, M.CS

NIP/NPT. 19730512 2005 01 2 003 2.

Dr. Ir. Ni Ketut Sari, MT

NIP/NPT. 19650731 199203 2 001

TIM PENGUJI :

Dekan Fakultas Teknologi Industri

Universitas Pembangunan Nasional “Veteran” Jawa Timur

Ir. Sutiyono, MT

(7)

iv

Halaman

LEMBAR PENGESAHAN

ABSTRAK ... i

KATA PENGANTAR ... ii

DAFTAR ISI ... iv

DAFTAR GAMBAR ... vii

DAFTAR TABEL ... X BAB I PENDAHULUAN ... 1

1.1. Latar Belakang ... 1

1.2. Rumusan Masalah ... 2

1.3. Batasan Masalah ... 2

1.4. Tujuan Penelitian ………... 3

1.5. Manfaat Penelitian... 3

1.6. Metode Penelitian……… 3

1.7. Sistematika Penulisan ... 5

BAB II TINJAUAN PUSTAKA ... 7

2.1 Konsep Palindrom ... 7

(8)

2.3. Tipe Java ... 14

BAB III METODE PERANCANGAN SISTEM……….. 41

3.1 Kebutuhan Sistem ... 41

3.2 Bahan – bahan penelitian ... 41

3.3 Diagram alir sistem ... 42

(9)

3.5 Perancangan Fungsi……... 43

3.6 Perancangan Antar Muka ………… ... 48

BAB IV HASIL IMPLEMENTASI SISTEM ………...50

4.1 Implementasi Hasil Perancangan ... 50

4.1.1 Implementasi Fungsi ubah teks dalam bentuk Array Of String ... 50

4.1.2 Implementasi Fungsi ubah Array Of String 1D ke Array Of Char 2D ... 51

4.1.3 Implementasi Fungsi Transpose Matrik……….. 52

4.1.4 Implementasi Fungsi ubah Array Of Char 2D ke Array Of String 1D……….. 53

4.1.5 Implementasi Fungsi Pemeriksaan Palindrom………. 53

4.2 Implementasi Antar Muka ………. 55

4.2.1 Implementasi form pilih dan membaca file ……… 55

4.2.2 Implementasi form transpose matrik ………56

4.2.3 Implementasi pemeriksaan atau pemrosesan palindrome … 57 BAB V HASIL DAN PEMBAHASAN ... . 58

5.1 Pengujian Aplikasi ... 58

5.1.1 Pengujian Dengan Baris Tunggal ... 58

5.1.2 Pengujian Dengan Baris Jamak ... 65

(10)

6.1. Kesimpulan ... 77

6.2. Saran ... 77

(11)

vii

Gambar 2.1. Palindrom Matematika ………. 8

Gambar 2.2. Proses palindrom matematika ………... 9

Gambar 2.3. IDE Netbeans 7.1 ………40

Gambar 3.1. Diagram Alir Sistem ………42

Gambar 3.2. Rancangan Form Aplikasi ………48

Gambar 4.1. Ubah teks dalam bentuk array of string ……… 51

Gambar 4.2. Ubah array of string 1D ke array of char 2D ……… 52

Gambar 4.3. Transpose matrik ……….. 52

Gambar 4.4. Ubah array of char 2D ke array of string 1D ……… 53

Gambar 4.5. Pemeriksaan Palindrom ……… 54

Gambar 4.6. Implementasi form pilih dan membaca file ………. 56

Gambar 4.7. Implementasi form transpose matrik ……… 56

Gambar 4.8. Form Implementasi palindrome ……… …57

Gambar 5.1. Pengujian Pertama (halaman pertama) ………60

Gambar 5.2. Hasil Pengujian Pertama (halaman kedua) ………61

Gambar 5.3. Pengujian kedua (halaman pertama) ………61

Gambar 5.4. Hasil Pengujian kedua (halaman kedua) ………62

Gambar 5.5. Pengujian ketiga (halaman pertama) ………62

Gambar 5.6. Hasil Pengujian ketiga (halaman kedua) ………63

Gambar 5.7. Pengujian keempat (halaman pertama) ………63

Gambar 5.8. Hail Pengujian keempat (halaman kedua) ………64

Gambar 5.9. Pengujian kelima (halaman pertama) ………64

(12)

Gambar 5.12. Hasil Pengujian keenam (halaman kedua) ………65

Gambar 5.13. Pengujian ketujuh (halaman pertama) ………66

Gambar 5.14. Hasil Pengujian ketujuh (halaman kedua) ………66

Gambar 5.15. Pengujian kedelapan (halaman pertama) ………66

Gambar 5.16. Hasil Pengujian kedelapan (halaman kedua) ………67

Gambar 5.17. Pengujian kesembilan (halaman pertama) ………67

Gambar 5.18. Hasil Pengujian kesembilan (halaman kedua) ………67

Gambar 5.19. Pengujian kesepuluh (halaman pertama) ………68

Gambar 5.20. Hasil Pengujian kesepuluh (halaman kedua) ………68

Gambar 5.21. Pengujian kesebelas (halaman pertama) ………69

Gambar 5.22. Hasil Pengujian kesebelas (halaman kedua) ………69

Gambar 5.23. Pengujian keduabelas (halaman pertama) ………70

Gambar 5.24. Hasil Pengujian keduabelas (halaman kedua) ………70

Gambar 5.25. Pengujian ketigabelas (halaman pertama) ………71

Gambar 5.26. Hasil Pengujian ketigabelas (halaman kedua) …...………71

Gambar 5.27. Pengujian keempatbelas (halaman pertama) ………71

Gambar 5.28. Hasil Pengujian empatbelas (halaman kedua) …...………72

Gambar 5.29. Pengujian kelimabelas (halaman pertama) ………72

Gambar 5.30. Hasil Pengujian kelimabelas (halaman kedua) …..………72

Gambar 5.31. Pengujian keenambelas (halaman pertama) ……..…….………73

Gambar 5.32. Hasil Pengujian keenambelas (halaman kedua) …… ………73

Gambar 5.33. Pengujian ketujuhbelas (halaman pertama) ……..……….74

Gambar 5.34. Hasil Pengujian ketujuhbelas (halaman kedua) ……….……74

(13)
(14)

X

(15)

1 1.1. Latar Belakang

(16)

Palindrom sendiri merupakan sebuah kata atau frasa yang dapat dibaca dengan sama baik dari depan maupun belakang. Kata "palindrom" berasal dari bahasa Yunani: palin ("balik") dan dromos ("pacuan kuda"). Kata palindrome juga dapat disusun dalam sebuah kotak yang dapat dibaca secara vertikal maupun horisontal seperti: sator, arepo, tenet, opera, rotas. Kata-kata yang termasuk palindrom dalam bahasa Indonesia misalnya: ada, apa, ara, asa, bab, ini, katak, kodok, makam, malam, radar, taat, dan lain-lain.

Maka dalam penelitian skripsi ini, penulis mengangkat suatu topik dimana dapat mengaplikasi suatu program yang ditulis dengan bahasa pemrograman Java, yaitu Aplikasi deteksi string palindrom yang dapat melakukan proses

deteksi string untuk menentukan apakah string tersebut termasuk palindrom atau tidak.

1.2. Perumusan Masalah

Rumusan masalah yang digunakan dalam tugas akhir ini adalah bagaimana menerapkan suatu sistem pendeteksian string yang ber-palindrome untuk teks yang berbahasa Indonesia?

1.3. Batasan Masalah

Adapun batasan masalah yang dipergunakan dalam tugas akhir ini adalah:

1. File yang dimasukkan berupa file dengan ekstensi *.txt

(17)

3. Teori menggunakan String Pattern Matching.

4. Metode yang di gunakan menggunakan algoritma brute force. 5. Bahasa pemrograman yang dipergunakan adalah Java: 1.7.0_01 6. Developer IDE yang digunakan adalah NetBeans IDE 7.1.1

7. Sistem Operasi yang dipergunakan adalah Microsoft Windows 7 Ultimate.

1.4. Tujuan

Tujuan dari pembuatan aplikasi tugas akhir ini adalah :

1. Mengetahui kata-kata apa saja yang dikategorikan sebagai kata yang ber-palindrom.

2. Mengaplikasikan suatu program yang mampu mendeteksi pola kata-kata dengan bahasa pemrograman Java.

1.5. Manfaat

Adapun manfaat penulis yang ingin diperoleh dari pengerjaan tugas akhir ini adalah dapat membuat perangkat lunak berbasis bahasa pemrograman Java untuk melakukan deteksi suatu string yang bersifat palindrome yang dapat dijadikan bahan rujukan untuk menambah wawasan pembelajaran ilmu pengetahuan tentang sebuah palindrom dan penambahan sebuah kosa-kata bahasa Indonesia.

1.6. Metode Penelitian

(18)

sistematis. Metodologi penelitian in digunakan sebagai pedoman penelitian dalam pelaksanaan penelitian ini agar hasil yang dicapai tidak menyimpang dari tujuan yang telah ditetapkan sebelumnya. Adapun metode penelitian yang dipergunakan dalam pengerjaan tugas akhir ini adalah :

a. Studi Literatur

Mencari referensi dan bahan pustaka tentang teori-teori yang berhubungan dengan permasalahan yang akan dikerjakan dalam tugas akhir ini.

b. Studi Kasus

Mencari contoh-contoh kasus serupa yang berhubungan dengan permasalahan dalam tugas akhir ini.

c. Analisis dan Perancangan

Membuat analisa berdasarkan data-data yang sudah dimiliki, membuat model matematisnya dan merancang alur penyelesaian berdasarkan algoritma Huffman dan encoding base64. Perancangan aplikasi dimulai dengan perancangan antar muka aplikasi, kemudian merancang detail kombinasi dari kedua algoritma tersebut.

d. Implementasi Program

Mengimplementasikan teknik algoritma yang akan digunakan. Detail mengenai implementasi program dilakukan sesuai hasil analisis dan perancangan aplikasi pada tahapan sebelumnya.

e. Pengujian Aplikasi

(19)

f. Evaluasi dan Penarikan kesimpulan

Evaluasi dilakukan untuk mengetahui kinerja aplikasi pencari string palindrom sesuai data input berupa teks, selanjutnya dilakukan penarikan kesimpulan.

1.7. Sistematika Penulisan

Sistematika penulisan tugas akhir ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut :

BAB I PENDAHULUAN

Bab ini berisi latar belakang masalah, identifikasi masalah, maksud dan tujuan yang ingin dicapai, batasan masalah, metodologi penelitian yang diterapkan dalam memperoleh dan mengumpulkan data serta sistematika penulisan.

BAB II TINJAUAN PUSTAKA

Membahas berbagai konsep dasar dan teori-teori yang berkaitan dengan topik masalah yang diambil dan hal-hal yang berguna dalam proses analisis permasalahan.

BAB III ANALISIS DAN PERANCANGAN

Menganalisis masalah dari model penelitian untuk memperlihatkan keterkaitan antar variabel yang diteliti serta model struktur data untuk analisisnya.

BAB IV HASIL DAN PEMBAHASAN

(20)

BAB V HASIL PENGUJIAN

Melakukan pengujian terhadap aplikasi yang telah di implementasikan tersebut.

BAB VI PENUTUP

(21)

7 2.1. Konsep Palindrom

Palindrom adalah sebuah kata atau frasa yang dapat dibaca dengan sama baik dari depan maupun belakang. Kata "palindrom" berasal dari bahasa Yunani: palin ("balik") dan dromos ("pacuan kuda"). Palindrom Latin "Sator Arepo Tenet

Opera Rotas" sangat unik karena ia akan megulang kalimatnya lagi jika kita membentuk kata dari huruf pertama setiap kata kemudian disambung dengan huruf kedua setiap kata, dan seterusnya. Karena itu ia juga dapat disusun dalam sebuah kotak yang dapat dibaca secara vertikal maupun horizontal seperti berikut, sator, arepo, tenet, opera, rotas. Dalam bahasa indonesia kalimat seperti di bawah ini juga merupakan palindrom, Kasur ini rusak. Kasur Nababan rusak. Kata-kata yang termasuk palindrom misalnya: ada, apa, ara, asa, bab, ini, katak, kodok, makam, malam, radar, taat.

Palindrom sebenarnya bukan hanya ditujukan pada kata-kata atau

kalimat-kalimat saja namun bisa juga ditujukan untuk angka-angka. Palindrom bilangan di sini tidak hanya sebatas menuliskan bilangan sehingga membentuk suatu palindrom, tetapi bagaimana melakukan operasi bilangan-bilangan sehingga membentuk bilangan palindrom. Bilangan yang paling mudah untuk digunakan membentuk palindrom adalah pasangan bilangan yang semua angkanya adalah 1.

(22)

1111 x 1111 = 1234321 11111 x 11111 = 123454321 111111 x 111111 = 12345654321 1111111 x 1111111 = 1234567654321 11111111 x 11111111 = 123456787654321 111111111 x 111111111 = 12345678987654321

1111111111 x 1111111111 = 12345679010987654321 Ini hampir bekerja, tetapi tidak cukup. Sayangnya, regrouping reruntuhan pola. Dunia palindrom terus di dalam semua jenis arah-itu adalah semacam rekreasi matematika. Memang menyenangkan untuk bermain-main dengan dan untuk melihat apa yang dapat ditemukan tentang palindrom. Bahkan ada dugaan palindrome yang belum diselesaikan. dugaan ini menyatakan bahwa nomor apapun belum palindrome dapat diubah menjadi palindrome dengan menggunakan membalikkan dan menambahkan memerintah jumlah terbatas kali. Cara kerja

(23)

Gambar 2.2. Proses palindrom matematika. Sumber : (Stephanie Fuehrer, 2009).

2.2. Pemrograman Java

Java dikembangkan pertama kali oleh James Gosling dari Sun Microsystem pada tahun 1990-an. Java pertama kali dikembangkan untuk memenuhi kebutuhan akan sebuah bahasa computer yang ditulis satu kali dan dapat dijalankan di banyak sistem computer. Dari pertama dikembangkan, Java telah memiliki tujuh generasi hingga saat ini.

(24)

1. J2EE (Java 2 Enterprise Edition)

J2EE biasa di gunakan pada pemrograman aplikasi server, atau aplikasi berbasis web server.

2. J2SE (Java 2 Standard Edition)

Paket ini paling banyak digunakan pada pembuatan aplikasi desktop. 3. J2ME (Java 2 Micro Edition)

Banyak digunakan untuk pembuatan aplikasi pada wireless device atau mobile device.

James Gosling, Mike Sheridan, dan Patrick Naughton memulai proyek bahasa Java pada bulan Juni 1991. Bahasa ini awalnya diberi nama Oak yaitu sebuah pohon “ek” yang berada di luar kantor James Gosling pada waktu itu. Pada tanggal 13 November 2006, Sun Microsystem meluncurkan bahasa java sebagai bahasa pemrograman open source di bawah ketentuan GNU General Public License (GPL). Sekitar tahun 2009-2010 Sun Microsystem diakuisisi oleh Oracle Corporation dan sekaligus pengembangan bahasa java dilanjutkan oleh perusahaan ini.

Sumber : (Irawan, 2011).

Java adalah bahasa pemrograman yang terkenal. Java banyak digunakan untuk membangun program. Pemrograman berorientasi objek (object oriented programming atau OOP) adalah suatu pendekatan yang memungkinkan suatu

(25)

dipahami. Salah satu fitur dalam OOP adalah pewarisan. Fitur inilah yang membuat suatu kode yang telah ditulis dalam bentuk kelas sangat mudah untuk diwariskan ke kelas lain guna mendukung sifat reusable.

Dalam teknologi OOP, kelas adalah suatu cetakan untuk membentuk objek. Sebagai contoh, Java menyediakan kelas bernama String. Dengan menggunakan kelas tersebut, objek (atau terkadang disebut instan kelas) yang berisi nama orang serta objek yang berisi alamat orang bias dibentuk.

Sebuah kelas mengandung dua bagian penting yang disebut atribut dan perilaku. Atribut adalah data yang membedakan satu objek dengan objek lain. Atribut dinyatakan dengan variable instan. Perilaku menyatakan suatu tindakan yang dikenakan terhadap suatu objek; misalnya untuk mengubah atribut dalam objek. Perilaku diimplementasikan dengan menggunakan metode.

Sumber : (Abdul Kadir, 2012).

Fitur penting bahasa java adalah bahasa ditunjukan untuk membuat beragam jenis aplikasi secara seragam, yaitu :

1. Program di lingkungan web browser

Applet, program ini dieksekusi di web browser dari halaman web yang memuat Java applet. Web browser kemudian menugaskan Java interpreter (JRE – Java Runtime Environtment) untuk mengeksekusi Java applet yang diterima. Java applet membuat langkah besar, memungkinkan web menjadi sarana/media

(26)

2. Program di lingkungan web server

Java Server Pages, sebagai web scripting serupa ASP, PHP dan sebagainya. Program ditempelkan di halaman html. Html ini tidak langsung dikirim ke web browser tapi diolah dulu oleh web server dan hasilnya yang berupa dokumen html dikirim web server ke web browser. Pemrograman JSP mengakomodasi pemrograman gaya tempelan seperti PHP, gaya tagging seperti Cold Fusion dan orientasi komponen JavaBeans.

Java Servlet, Komponen ini adalah semacam modul di web server. JSP akan diterjemahkan menjadi servlet agar mempercepat proses eksekusi.

3. Program mandiri (atau biasa disebut stand-alone application).

Java merupakan pilihan bagus untuk membuat applet, sekaligus sebagai bahasa bermaksud umum (general-purpose language) untuk mengembangkan semua jenis program yang dapat dijalankan dikomputer, sistem operasi apa pun asalkan terdapat Java interpreter di platform itu. Untungnya hampir seluruh platform menyediakan Java interpreter karena spesifikasi Java bytecode

disebarkan secara terbuka. Filosofi program Java dapat dijalankan di platform computer dan sistem operasi apapun dikenal sebagai “WORA – write once, run anywhere”. Aplikasi mandiri ini dapat berbasis konsol maupun berbasis grafis.

(27)

4. Program mandiri sebagai pustaka komponen untuk pengembangan aplikasi.

Java menyediakan Bean untuk mendukung RAD (rapid application development) yang berbasis visual seperti Visual Basic atau Borland Delphi.

5. Bahasa untuk pengembangan aplikasi objek-objek tersebar skala enterprise.

Terdapat teknologi Java untuk mengembangkan komponen yaitu EJB (Enterprises JavaBeans) yang berjalan di application server. EJB mendukung Component-based Software Engineering. Application server adalah middleware

yang bertugas menjadi intermediasi beragam server di aplikasi tersebar skala enterprise. Dukungan java terhadap sistem tersebar berupa spesifikasi J2EE

lengkap meliputi JDBC (Java Database Connectivity), RMI (Remote Method Invocation), EJB (Enterprise Java Beans), JMS (Java Messaging System), Socket Programming, SQLJ (SQL di Java) dan sebagainya.

JavaScript bukan merupakan program java namun sintaks dan semantiknya seperti bahasa Java. JavaScript tidak termasuk teknologi Java. JavaScript adalah karya Netscape. Awalnya bernama LiveScript. Karena bahasa Java popular, berubah nama menjadi JavaScript. JavaScript tidak termasuk di teknologi Java Sun Microsystems. Pendekatan Java script ternyata saat ini berkembang lagi sejak ditemukan penggunaan untuk membuat web lebih responsive, yaitu lewat AJAX (Asynchronous JavaScript and XML).

(28)

diinterpretasi atau dioptimasi secara dinamis, ber bytecode, netral arsitektur, mempunyai garbage-collector, multithreading mempunyai mekanisme penanganan kekecualian (exception handling), berbasis tipe untuk penulisan program mudah diperluas secara dinamis serta telah diperuntunkan sistem tersebar.

Fitur penting yang perlu dikaji adalah : Bahasa yang sederhana, Bahasa orientasi objek, Bahasa yang statically typed, Bahasa yang dikompilasi, Bahasa yang kecil dan sederhana, Bahasa yang aman, Bahasa yang independen terhadap platform.

Sumber : (Dr. Bambang Hariyanto, 2011).

2.3. Tipe Java

Java menyediakan berbagai tipe data dasar atau primitive, sebagaimana diperlihatkan pada tabel 2.1. di bawah ini yang menjelaskan bahwa pemilihan tipe data yang tepat harus disesuaikan dengan data yang akan diolah. Sebagai contoh, Jika anda ingin memproses sebuah bilangan bulat, anda bisa memilih short, byte, int, atau long.

Tabel 2.1. Tipe data primitif.

Tipe Keterangan

(29)

double Menyatakan bilangan real dengan ketelitian tinggi (15 digit). Dapat menampung bilangan antara 10¯ 308 sampai dengan 10 308.

float Menyatakan bilangan real dengan ketelitian rendah (6-7 digit). Dapat menampung bilangan antara 10¯ 38 sampai 10 38.

byte Menyatakan bilangan bulat antara -128 sampai dengan +127.

short Menyatakan bilangan bulat antara -32768 sampai dengan +32767.

int Menyatakan bilangan bulat antara -2147483648 sampai dengan +2147483647.

long Menyatakan bilangan bulat antara -9232372036854775808 sampai dengan +9232372036854775807.

boolean Menyatakan nilai logika : true atau false.

2.4. Operator Pembanding

Operator pembanding atau disebut juga operator relasional adalah operator yang berguna untuk melakukan pembandingan terhadap dua buah nilai. Hasil pembandingan bernilai 1 atau 0. Dalam hal ini :

1. Nilai nol berarti bahwa pembandingan memberikan hasil bernilai salah, dan

2. Nilai satu berarti bahwa pembandingan memberikan hasil bernilai benar.

(30)

Tabel 2.2. Daftar Operator Pembanding.

Operator Keterangan

> Lebih besar daripada

>= Lebih besar atau sama dengan

< Kurang dari

<= Kurang dari atau sama dengan

!= Tidak sama dengan

== Sama dengan

Sumber : (Abdul Kadir, 2012).

2.5. Java Development Kit

Java Development Kit adalah kumpulan tool yang secara gratis diberikan oleh Sun Microsystem untuk pengembang aplikasi Java. Berbagai tool yang ada pada JDK di jelaskan sebagai berikut ini :

1. Kompilator

(31)

dieksekusi oleh interpreter Java. Kode sumbernya merupakan file berekstensi.java dan hasil kompilasinya merupakan file berekstensi.class. Kompilator ini membuat satu file kelas (berekstensi.class) untuk setiap kelas yang didefinisikan dalam file sumber. Ini berarti dimungkinkan untuk mengkompilasi file kode sumber Java ke dalam beberapa file kelas bilamana file sumbernya berisi beberapa definisi kelas. Kompilator Java adalah utilitas command-line yang bekerja dengan cara yang sama dengan interpreter Java.

2. Interpreter

Interpreter Java digunakan untuk mengeksekusi aplikasi terkompilasi Java dengan mengubah byte code menjadi bahasa mesin.

3. Debugger

Debugger java, jdb, memungkinkan anda mendebug kelas (class) Java. Debugger Java adalah debugger command-line. Meskipun tampak kuno, dengan jdb anda bisa mengatur breakpoint, memeriksa objek dan variable, dan membantu threads. Debugger ini bisa anda gunakan untuk mendebug file yang ditempatkan pada sistem computer local maupun remote. Untuk mendebug file pada sistem computer remote, jdb harus digunakan dengan opsi –host dan –password.

4. Dissasembler

(32)

tahu antarmuka (interface) public (public) suatu kelas, maka dissasembler Java yang disertakan dalam jdk (javap) dapat digunakan untuk menampilkan interface public, baik metode maupun variable, dari suatu kelas. Dissasembler java juga memiliki opsi untuk menampilkan anggota private atau kode byte actual untuk metode kelas. Opsi ini sangat berguna bila anda ingin lebih memahami kode byte yang digunakan oleh interpreter Java. Dissasembler Java digunakan untuk mendisassembly kode byte Java yang telah dikompilasi. Sesudah mendissasembly kode, informasi tentang variabel anggota dan metode ditampilkan.

5. Header File Generator

Java adalah bahasa pemrograman baru yang harus bersaing dengan dominasi C dan C++, maka ke dalam Java diimplementasikan kemampuan untuk menggunakan kode C di dalam kelas Java. Salah satu langkah untuk melakukannya adalah dengan menggunakan pembangkit header file Java, javah. Tool javah membuat file header C dan stub yang diperlukan untuk mengintegrasikan program dalam bahasa C ke dalam Java.

6. Generator Dokumentasi javaDOC

(33)

7. Appletviewer

Applet adalah program yang ditulis dalam bahasa Java yang dirancang untuk diembed ke dalam dokumen HTML. Applet-applet ini tidak dapat dieksekusi terpisah dari dokumen HTML, agar anda dapat menjalankan applet tanpa harus menjalankan browser, anda perlu menggunakan Appletviewer untuk menguji apakah applet yang anda buat bekerja dengan baik atau tidak.

Sumber : (Wahana computer, 2003).

2.6. String Pattern Matching

String merupakan struktur data abstrak yang paling sering dijumpai.

Sering implementasi string direpresentasikan sebagai array karakter. Konsep string adalah rangkaian symbol alphabet, tidak menyatakan implementasinya sebagai array karakter. Penggunaan string merupakan hal yang umum. Dokumen hasil Microsoft Word adalah string sehingga dapat dilakukan operasi-operasi sebagai rangkaian simbol. Pencarian/pencocokan dan pengenalan pola dilakukan dengan memandang ruang persoalan string. Algoritma genetic memandang ruang solusi sebagai string.

(34)

2.6.1. Simbol String

String merupakan rangkain simbol. Simbol-simbol merupakan apa saja

yang diperuntukkan bagi pengodean. Pada persoalan penelitian genetik simbol berupa empat simbol basa yang membentuk string panjang. Pada polimer, simbol-simbol adalah atom. Pada persoalan pencocokan pola pada citra (image) maka simbol-simbol berupa pola-pola atomic dasar misalnya titik, garis, polygon, dan sebagainya. Pada persoalan representasi bahasa manusia maka simbol-simbol di string merupakan himpunan karakter. Terdapat banyak usulan himpunan karakter untuk melambangkan karakter bahasa manusia untuk pengolahan di computer. Beberapa yang terkenal adalah :

1. ASCHII (American Standart Code for Information Interchange) yang menggunakan 7 bit, perluasannya oleh IBM menggunakan 8 bit.

2. BCDIC (Binary Coded Decimal for Interchange Code).

3. Unicode, dimaksudkan untuk dapat mengkodekan seluruh karakter di dunia. Unicode menggunakan 16 bit.

2.6.2. String di Java

Pada Java, string direpresentasikan dengan dua kelas :

1. String, untuk string konstan, yang tidak berubah isinya setelah

penciptaannya.

2. StringBuffer, untuk string yang memerlukan banyak manipulasi.

(35)

literal string ditangani dengan instanisasi string. Instanisasi kelas adalah objek

yang diciptakan berdasar deskripsi kelas. Metode ini sangat berbeda disbanding bahasa C/C++ di mana string direpresentasikan sebagai array karakter. Pada level implementasi sesungguhnya Java merepresentasikan data pemakai. Pemakai disuguhi banyak layanan/operasi di kelas string tanpa perlu menyentuh representasi nyata string.

Berikut adalah string yang dideklarasikan menggunakan kelas string : String aString;

String aName = “Pak Bimbing”;

Dengan kelas string, kita dapat melakukan banyak operasi seperti pencarian, pembandingan dan penyambungan, Kita tidak dapat menyisipkan karakter baru ke string atau mengubah string. Penyambungan sebenarnya diimplementasikan dengan penciptaan string baru kemudian diberikan reference ke variable yang mengacu. Bahasa Java mempunyai garbage collector sehingga objek kelas yang tidak diacu secara otomatis diguna ulang.

Sumber : ( Dr. Bambang Hariyanto, 2011).

2.6.3. Membuat objek string

Java mendefinisikan class string dalam package java.lang.string, sehingga tidak perlu melakukan impor secara eksplisit. Java string digunakan membuat

(36)

Jadi dapat disimpulkan bahwa string terdiri dari data array yang bertipe char, dan kita juga dapat membuat objek string dengan menggunakan keyword new yang biasa digunakan untuk membuat objek dari class.

2.6.4. Menggabungkan String

Seringkali dalam pemrograman kita perlu menggabungkan string untuk mendapatkan string baru. Kita dapat menggunakan operator (+) untuk menggabungkan beberapa String.

Contoh penggunaan: Stringku=”Ini adalah contoh”+”penggabungan String”; Kita juga dapat menggunakan operator += untuk menggabungkan variabel String.

2.6.5. Mengurutkan String

Dapat juga melakukan string dengan method compareTo(). Method ini membandingkan karakter-karakter pada String secara berurutan dari awal String. Misalnya string pertama bernilai “a” dan string kedua bernilai “b”, maka apabila Stringpertama.compareTo (stringkedua) akan menhasilkan nilai negatif (<0) dan apabila sebaliknya akan menghasilkan nilai positif (>0). Nilai 0 akan dihasilkan apabila string pertama dan kedua sama.

2.6.6. Mencari Posisi Karakter atau SubString dari String

(37)

argument berupa karakter dan akan mengembalikan nilai posisi indeks dari karakter yang dicari. Posisi yang dikembalikan nilai posisi pertama dan karakter yang ditemukan. Bila karakter tidak ditemukan, maka akan mengembalikan nilai -1. indexOf(char karakter, int indeks) Sama dengan sebelumnya, tetapi memerlukan tambahan, yaitu indeks posisi awal pencarian dalam interger. Method untuk mencari posisi substring pada string : indexOf(string str) Penggunaan dan fungsi sama dengan method untuk char. indexOf(String str, ont indeks) penggunaan dan fungsi sama dengan method untuk char.

2.6.7. Mendapatkan Substring dari String

Untuk mendapatkan substring dari string, dapat menggunakan dua fungsi : yaitu substring(int indeks). Sebuah string akan dihasilkan oleh fungsi ini, yaitu karakter pertama dari string yang dihasilkan adalah karakter ke-index dari objek string yang menggunakan fungsi ini. substring(int indeksAwal, int indexAkhir). Sebuah string akan dihasilkan oleh fungsi ini, yaitu karakter pertama dari string yang dihasilkan adalah karakter ke-indexAwal dari objek string yang menggunakan fungsi ini dan karakter terakhir dari string yang dihasilkan adalah karakter ke-indexAkhir 1 dari string yang menggunakan fungsi ini.

2.6.8. Membuat Array Karakter Dari String

(38)

Selain method toCharArray(), juga ada method getChars(). Untuk menggunakan method getChars() diperlukan empat argument, yaitu :

1. Awal posisi pada string dalam interger. 2. Akhir posisi pada string dalam interger,

3. Nama variable array char yang dugunakan untuk menyimpan

4. Posisi indeks pertama untuk menyimpan karakter pertama dalam interger.

2.6.9. Mendapatkan string dari array karakter

Selain mengubah string array menjadi array char, class string juga menyediakan method untuk mendapatkan objek string dari array bertipe char[]. Method tersebut adalah : copyValueOf(char[]arraychar). Selain itu juga mendapatkan nilai interger dari string dengan cara menggunakan method parseint dari class interger.

Sumber : (Chrystia Aji Putra, S.Kom, 2010).

Urutan pola (misalnya, string teks) sering digambarkan dengan menggunakan ekspresi reguler dan cocok menggunakan teknik seperti backtracking.

Pencarian string di dalam teks disebut juga pencocokan string (string

matching atau pattern matching).

Persoalan pencarian string dirumuskan sebagai berikut:

Diberikan:

(39)

2. pattern, yaitu string dengan panjang m karakter (m < n) yang akan dicari di dalam teks.

Carilah (find atau locate) lokasi pertama di dalam teks yang bersesuaian dengan pattern. Aplikasi dari masalah pencocokan string antara lain pencarian suatu kata di dalam dokumen (misalnya menu Find di dalam Microsoft Word).

Contoh:

Pattern: hari

Teks: kami pulang hari kamis

⇑ target

Contoh :

Pattern: not

Teks: nobody noticed him

⇑ target.

Contoh :

Pattern: apa

Teks: Siapa yang menjemput Papa

dari kota Balikpapan?

(40)

Operasi yang dilakukan adalah menyesuaikan istilah dalam kueri dengan istrilah yang terdapat dalam suatu dokumen.

Terdapat beberapa algoritma yang dapat dipergunakan untuk pencarian pola string dalam suatu dokumen teks, diantaranya adalah brute force, Knuth Morris Pratt, Booyer Moore dan Karp Rabin. Tetapi dalam tugas akhir ini algorithma yang dipergunakan adalah Algorithma Brute Force. Dengan sumsi bahwa teks berada di dalam array T[1..n] dan pattern berada di dalam array P[1..m], maka algoritma brute force pencocokan string adalah sebagai berikut:

1. Mula-mula pattern P dicocokkan pada awal teks T.

2. Dengan bergerak dari kiri ke kanan, bandingkan setiap setiap karakter di dalam pattern P dengan karakter yang bersesuaian di dalam teks T sampai:

a. semua karakter yang dibandingkan cocok atau sama (pencarian berhasil), atau

b. dijumpai sebuah ketidakcocokan karakter (pencarian belum berhasil)

3. Bila pattern P belum ditemukan kecocokannya dan teks T belum habis, geser pattern P satu karakter ke kanan dan ulangi langkah 2.

(41)

s=3 not

s=4 not

s=5 not

s=6 not

s=7 not

Contoh :

Teks: 10010101001011110101010001

Pattern: 001011

10010101001011110101010001

s=0 001011

s=1 001011

s=2 001011

s=3 001011

s=4 001011

s=5 001011

s=6 001011

s=7 001011

s=8 001011 N-M.

(42)

Kasus terbaik terjadi jika yaitu bila karakter pertama pattern P tidak pernah sama dengan karakter teks T yang dicocokkan. Pada kasus ini, jumlah perbandingan yang dilakukan paling banyak n kali misalnya:

Teks: Ini adalah string panjang yang berakhir dengan zz

Pattern: zz

Kasus terburuk membutuhkan m(n – m + 1) perbandingan, yang mana kompleksitasnya adalah O(mn), misalnya:

Teks: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab

Pattern: aaaab

Sumber : (Ir. Rinaldi Munir, M.T, 2004).

2.7. Konsep Dasar Operasi Matrik

Pengertian matrik adalah susunan elemen-elemen menurut baris dan kolom sehingga berbentuk persegi panjang. Matrik dinotasikan dengan huruf A, B, K dan sebagainya. Banyaknya kolom dan baris suatu matrik menentukan ukuran dari matriks tersebut. Secara umum notasi matrik dapat dirumuskan sebagai berikut :

(43)

Bilangan–bilangan yang tersusun dalam baris-baris dan kolom-kolom tersebut disebut elemen/unsur. Elemen matriks A yang terletak di baris ke-2 dan kolom ke-1 dinotasikan sebagai a 21=13. Contoh: Berapakah nilai a 31 dan a32 untuk matriks A di atas? Jawab: a31=15, a 32 =25. Matriks A di atas mempunyai 4 baris dan 4 kolom. Banyaknya baris dan banyaknya kolom suatu matriks menentukan ukuran dari matriks tersebut.

Berdasarkan ordonya, terdapat jenis matriks sebagai berikut :

a. Matriks bujursangkar atau persegi, yaitu matriks berordo n x n atau banyaknya baris sama dengan banyaknya kolom disebut juga matriks berordo n. Contoh :

Rumus Matriks Bujursangkar.

Penjelasan rumus matriks bujursangkar diatas menjelaskan bahwa, Maka 1 dan 12 dikatakan berada pada diagonal utama B.

b. Matriks baris, yaitu matriks berordo 1 x n atau hanya memiliki satu baris. Contoh :

(44)

c. Matriks tegak, yaitu matriks berordo m x n dengan m > n. Contoh rumus seperti di bawah ini :

Rumus Matriks Tegak.

d. Matriks datar, yaitu matrisk berordo m x n dengan m<n. Contoh rumus sebagai berikut :

Rumus Matriks Datar.

Berdasarkan elemen-elemen penyusunnya terdapat jenis matriks sebagai berikut : a. Matriks nol, yaitu matriks yang semua elemen penyusunnya adalah nol dan

dinotasikan sebagai nol. Contoh perumusannya sebagai berikut :

Rumus Matriks Nol.

(45)

Rumus Matriks Diagonal.

c. Matrik skalar yaitu matrik diagonal yang semua elemen pada diagonalnya sama. Contoh perumusannya sebagai berikut :

Rumus Matriks Skalar.

d. Matrik simetrik yaitu matrik persegi, yang setiap elemennya, selain elemen diagonal, adalah simetri terhadap diagonal utama. Contoh perumusannya sebagai berikut :

Rumus Matriks Simetri.

(46)

Rumus Matriks Simetri Miring.

f. Matrik Identitas/satuan yaitu matrik diagonal yang semua elemen pada diagonal utamanya adalah 1 dan dinotasikan sebagai l. Contoh perumusannya sebagai berikut :

Rumus Matriks Identitas.

g. Matriks segitiga atas yaitu matriks persegi yang elemen-elemen dibawah diagonal utamanya adalah nol. Contoh perumusannya sebagai berikut :

Rumus Matiks Segitiga Atas.

(47)

Rumus Matriks Segitiga bawah.

i. Matriks Transpose yaitu matriks yang diperoleh dengan memindahkan elemen-elemen baris menjadi kolom dan elemen-elemen kolom menjadi baris. Contoh perumusannya sebagai berikut :

Rumus Matriks Transpose. Sumber : (Drs. Markaban, M.Si., 2009).

2.8. Algorithma Dan Pemrograman

(48)

salah satu bagian penting pada komputer, yang mengatur komponen agar melakukan tindakan yang sesuai dengan yang dikehendaki oleh pembuatnya.

Sumber : (Abdul kadir, 2012).

Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar. Dalam beberapa konteks, algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu. Pertimbangan dalam pemilihan algoritma adalah, pertama, algoritma haruslah benar. Artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli sebagus apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma tersebut bukanlah algoritma yang baik. Dalam bidang komputer, algoritma sangat diperlukan dalam menyelesaikan berbagai masalah pemrograman, terutama dalam komputasi numeris. Tanpa algoritma yang dirancang baik maka proses pemrograman akan menjadi salah, rusak, atau lambat dan tidak efisien. Pseudo-code adalah Kode atau tanda yang menyerupai (pseudo) atau merupakan pejelasan cara menyelesaikan suatu masalah. Pseudo-code sering digunakan oleh manusia untuk menuliskan algoritma. Pada pembahasan berikut ini kita akan melihat bagaimana tehnik ini yang pendekatan yang dilakukan secara modular, dapat membantu kita dalam membangun suatu program.

(49)

Tentunya fungsi yang dijalankan oleh setiap modul sangat terbatas sesuai dengan ruang lingkup yang akan dikerjakan. Dengan adanya sejumlah modul program ini tentu saja kesalahan yang timbul dapat dikurangi. Setiap program tentu akan memiliki program utamanya, yang kemudian akan memanggil sejumlah modul-modul yang ada.

Pemrograman secara modular ini dapat diimplementasikan dengan penggunaan subroutine, suatu kelompok instruksi yang menjalankan suatu pengolahan yang sifatnya terbatas seperti pencetakan, pembacaan untuk proses input atau untuk proses penghitungan. Subroutine dapat dikelompokkan menjadi internal subroutine dan external subroutine.

Sumber : (Handout, Algoritma pemrograman dan struktur data 1 prodi sistem informasi ukdw).

2.8.1. Internal Subroutines

Adalah bagian dari suatu program yang digunakan. Dideklarasikan cukup sekali saja, untuk sejumlah proses yang sama akan dilakukan oleh program tersebut. Program akan memanggil subroutines tersebut jika diperlukan dan apabila telah selesai, kontrol selanjutnya dikembalikan ke instruksi berikutnya. Instruksi yang mengendalikan kontrol transfer ke suatu subroutine umumnya dikenal sebagai call dan return.

2.8.2. External Subroutines

(50)

dimana ? , apa namanya ?, bagaimana pengiriman datanya ?, bagaimana jawaban yang akan diperoleh ?. Subroutine ini biasanya digunakan untuk pemrosesan yang komplek, yang dibutuhkan oleh banyak user.

Sumber

(http://www.google.co.id/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&ved= 0CGwQFjAC&url=http%3A%2F%2Fjkw1.files.wordpress.com%2F2007%2F10

%2Fpetruk-pertemuan-10.doc&ei=832kT4-bO43PrQfRopD_AQ&usg=AFQjCNHXZwN5dU8A-Y3cm4nwkotAUKe2rA).

2.9Developer IDE Netbeans

NetBeans IDE adalah sebuah lingkungan pengembangan - sebuah tools untuk programmer menulis, mengompilasi, mencari kesalahan dan menyebarkan program. Netbeans IDE ditulis dalam Java - namun dapat mendukung bahasa pemrograman lain. Terdapat banyak modul untuk memperluas Netbeans IDE. Netbeans IDE adalah sebuah produk bebas dengan tanpa batasan bagaimana digunakan. NetBeans mengacu pada dua hal, yakni platform untuk pengembangan aplikasi desktop java, dan sebuah Integrated Development Environment (IDE) yang dibangun menggunakan platform NetBeans. Platform NetBeans memungkinkan aplikasi dibangun dari sekumpulan komponen perangkat lunak moduler yang disebut ‘modul’.

(51)

modul-modul dapat dikembangkan dengan menambahkan modul-modul-modul-modul baru. Karena modul dapat dikembangkan secara independen, aplikasi berbasis platform NetBeans dapat dengan mudah dikembangkan oleh pihak ketiga secara mudah dan powerful.

Pengembangan NetBeans diawali dari Xelfi, sebuah proyek mahasiswa tahun 1997 di bawah bimbingan Fakultas Matematika dan Fisika Universitas Charles, Praha. Sebuah perusahaan kemudian dibentuk untuk proyek tersebut dan menghasilkan versi komersial NetBeans IDE hingga kemudian dibeli oleh Sun Microsystem pada tahun 1999. Sun kemudian menjadikan NetBeans open source pada bulan Juni tahun 2000. Sejak itu komunitas NetBeans terus berkembang. Lingkungan Pengembangan yang terintegrasi pada netbean IDE, memudahkan pengguna untuk membuat beragam aplikasi dengan mudah.

NetBeans IDE ditulis dalam Java dan dapat berjalan pada Windows, Mac OS, Linux, Solaris dan platform lain yang mendukung JVM kompatibel. Platform NetBeans memungkinkan aplikasi dibangun dari sekumpulan komponen perangkat lunak moduler yang disebut modul. Aplikasi didasarkan pada platform NetBeans (termasuk NetBeans IDE) dapat dikembangkan oleh pihak ketiga.

(52)

dikembangkan secara independen, aplikasi berbasis platform NetBeans dapat dengan mudah dikembangkan oleh pihak ketiga secara mudah dan powerful.

Pengembangan NetBeans diawali dari Xelfi, sebuah proyek mahasiswa tahun 1997 di bawah bimbingan Fakultas Matematika dan Fisika Universitas Charles, Praha. Sebuah perusahaan kemudian dibentuk untuk proyek tersebut dan menghasilkan versi komersial NetBeans IDE hingga kemudian dibeli oleh Sun Microsystem pada tahun 1999. Sun kemudian menjadikan NetBeans open source pada bulan Juni tahun 2000. Sejak itu komunitas NetBeans terus berkembang.

Modul-modul yang tersedia ditempatkan di sebuah registry di dalam memori, dan tugas startup modul dijalankan. Secara umum, kode modul dimuatkan ke dalam memori hanya ketika ia diperlukan.

Aplikasi dapat menginstal modul secara dinamis. Aplikasi dapat memasukkan modul Update Center untuk mengijinkan pengguna aplikasi men-download digitally-signed upgrade dan fitur-fitur baru secara langsung ke dalam aplikasi yang berjalan. Penginstalan kembali sebuah upgrade atau rilis baru tidak memaksa pengguna untuk men-download keseluruhan aplikasi lagi.

Platform NetBeans menawarkan layanan-layanan yang umum bagi aplikasi desktop, mengijinkan pengembang untuk fokus ke logika yang spesifik terhadap aplikasi. Fitur-fitur yang disediakan oleh platform NetBeans:

• Manajemen antarmuka (misal: menu & toolbar)

• Manajemen pengaturan pengguna

• Manajemen penyimpanan (menyimpan dan membuka berbagai macam data)

• Manajemen jendela

(53)

NetBeans IDE adalah IDE open source yang ditulis sepenuhnya dengan bahasa pemrograman Java menggunakan platform NetBeans. NetBeans IDE mendukung pengembangan semua tipe aplikasi Java (J2SE, web, EJB, dan aplikasi mobile). Fitur lainnya adalah sistem proyek berbasis Ant, kontrol versi, dan refactoring. Versi terbaru saat ini adalah NetBeans IDE 7.1.1 yang dirilis februari 2011 mengembangkan fitur-fitur Java EE yang sudah ada (termasuk Java Persistence support, EJB-3 dan JAX-WS). Sementara paket tambahannya, NetBeans Enterprise Pack mendukung pengembangan aplikasi perusahaan Java EE 7.1.1, meliputi alat desain visual SOA, skema XML, web service dan pemodelan UML. NetBeans C/C++ Pack mendukung proyek C/C++. Modularitas: Semua fungsi IDE disediakan oleh modul-modul.

Tiap modul menyediakan fungsi yang didefinisikan dengan baik, seperti dukungan untuk bahasa pemrograman Java, editing, atau dukungan bagi CVS. NetBeans memuat semua modul yang diperlukan dalam pengembangan Java dalam sekali download, memungkinkan pengguna untuk mulai bekerja sesegera mungkin. Modul-modul juga mengijinkan NetBeans untuk bisa dikembangkan. Fitur-fitur baru, seperti dukungan untuk bahasa pemrograman lain, dapat ditambahkan dengan menginstal modul tambahan. Sebagai contoh, Sun Studio, Sun Java Studio Enterprise, dan Sun Java Studio Creator dari Sun Microsystem

(54)
(55)

41 3.1. Kebutuhan Sistem

Aplikasi deteksi string palindrome ini digunakan untuk dapat mengetahui kata-kata berpalindrom dari suatu teks. Sistem akan mendeteksi setiap karakter per karakter pada isi teks, yang nantinya, agar dapat mengetahui kata-kata yang sama dan kemudian akan menampilkan hasil pencarian tersebut.

Dalam membangun aplikasi Palindrome ini, diperlukan batasan yang jelas sebagai tujuan utamanya agar tidak keluar dari rencana yang telah ditetapkan. Beberapa kebutuhan sistem yang akan didefinisikan antara lain : 1. Memiliki kemampuan untuk mendeteksi kata palindrome.

2. Dapat mendeteksi dengan baik secara horizontal maupun vertikal.

3.2. Bahan-bahan Penelitian

(56)

3.3. Diagram Alir Sistem

Gambar 3.1. Diagram Alir Sistem.

Pada gambar 3.1. di atas menjelaskan bahwa pertama sistem membaca file bertipe teks. Sebelum melakukan proses palindrome, teks tersebut di ubah ke dalam array of string yang nantinya teks tersebut akan disimpan sesuai banyaknya jumlah baris dan panjang StrAsal. Kemudian, teks tersebut akan diubah 1D menjadi 2D. Selanjutnya, matriks transpose memindahkan elemen2 teks tersebut

START

Membaca file bertipe teks

Mengubah teks ke dalam bentuk array-of-string

Mengubah array-of-string 1 dimensi menjadi array-of-char 2 dimensi

Melakukan transpose matrik data array-of-char

Mengubah data array-of-char 2 dimensi menjadi array-of-string 1 dimensi

Pencocokan data karakter perkarakter

FINISH

(57)

dengan melakukan parsing per kata dari hasil fungsi ubah 1D menjadi 2D. Sebaliknya, matriks transpose juga melakukan hal yang serupa dalam fungsi ubah array of char 2D ke array of string 1D yang nantinya untuk memudahkan pencarian proses palindrom. Setelah itu, mencari data-data palindrome, dan akan menampilkan hasil kata-kata palindrome tersebut.

3.4. Perancangan Sistem

Proses perancangan merupakan deskripsi dari kebutuhan yang direpresentasikan ke dalam perangkat lunak sehingga dapat diperkirakan kualitasnya sebelum dimulai pembuatan code atau coding. Aplikasi Palindrome ini terdiri dari 5 kelas yaitu : Ubah teks dalam bentuk array of string, Ubah array of string 1D ke array of char 2D, Matrik transpose, Ubah array of char 2D ke array of string 1D, dan Pemeriksaan Palindrome.

3.5. Perancangan Fungsi

Agar proses mendeteksi sebuah kata pada palindrome dapat berlangsung perlu di buat fungsi untuk koneksi. Fungsi untuk ubah teks dalam bentuk array of string seperti di bawah ini :

Fungsi Ubah teks dalam bentuk array of string : Set nilai awal str sesuai dengan jumlah baris

(58)

for (int i=0; i<jumlahBaris; i++) str[i] = ""

while (j < n)

char ch = strAsal.charAt(j); j++

if ((ch >= (char)32) && (ch <= (char)127)) then str[i] += ch

else break

set variabel terbanyak = str[0].length(); for (int i=1; i<str.length; i++)

if (str[i].length() > terbanyak) then terbanyak = str[i].length(); for (int i=0; i<str.length; i++)

n = str[i].length()

for (j=0; j<terbanyak-n; j++) str[i] += " "

return str;

Pada penjelasan fungsi di atas menjelaskan bahwa pertama kali sistem akan menghitung jumlah baris dalam file teks yang akan dibaca kemudian mengalokasikan memori pada variabel yang akan dipergunakan untuk operasi manipulasi karakter dalam kalimat tersebut.

(59)

Fungsi ubah array of string 1D ke array of char 2 : Set jumlahBaris sama dengan panjang string asal

Set jumlahKolom sama dengan panjang string asal indeks ke nol

Set Array dataHasil 2D dengan panjang baris sama dengan nilai pada variabel jumlahBaris] dan banyaknya kolom sama dengan nilai pada variabel jumlahKolom.

for (int i=0; i<jumlahBaris; i++)

dataHasil[i] = strAsal[i].toCharArray() return dataHasil;

Pada penjelasan fungsi di atas menjelaskan bahwa proses pengubahan array of string 1D ke bentuk array of char 2D dilakukan dengan cara mendeklarasikan terlebih dahulu variabel untuk menentukan jumlah baris dan jumlah kolom. Setelah itu mengalokasikan variabel bertipe array of char 2D dengan jumlah baris dan kolom mengikuti nilai variabel jumlahBaris dan jumlahKolom. Kemudian dilakukan proses pemindahan karakter secara iteratif ke dalam variabel penampung.

Fungsi transpose matrik :

Set alokasi variabel dataHasil dengan jumlah baris sama dengan nilai variabel dataSumber dengan indeks 0 dan jumlah kolom sama dengan panjang pada variabel dataSumber

for (int i=0; i<dataSumber.length; i++) for (int j=0; j<dataSumber[i].length; j++)

dataHasil[j][i] = dataSumber[i][j] return dataHasil

(60)

2D untuk menampung hasil pemindahan nilai dari matrik sumber. Proses ini dilakukan secara iteratif dengan memindah nilai kolom matrik sumber ke nilai baris matrik hasil dan nilai baris matrik sumber ke nilai kolom matrik hasil secara satu per satu hingga seluruh nilai telah dipindahkan.

Fungsi ubah array of char 2D ke array of string 1D :

Alokasikan variabel dataHasil sesuai dengan panjang variabel sumber for (int i=0; i<charSumber.length; i++)

dataHasil[i] = new String(charSumber[i]) return dataHasil

Pada penjelasan fungsi di atas menjelaskan bahwa pengubahan array of char 2D ke array of string 1D dilakukan dengan mendeklarasikan terlebih dahulu variabel dataHasil sesuai dengan panjang data dari variabel sumber. Kemudian proses pengubahan dilakukan secara iteratif dari variabel sumber ke variabel hasil hingga seluruh isi variabel sumber selesai dipindakan.

Fungsi pemeriksaan palindrome : for (int i=0; i<teks.length; i++) do maxHuruf = teks[i].length() awalBaca = 0

while (awalBaca < maxHuruf) do cacahHuruf = jumChar

akhirBaca = maxHuruf - awalBaca + 1 while (cacahHuruf < akhirBaca) do

str = teks[i].substring(awalBaca, awalBaca+cacahHuruf) rev = StringBuffer(str).reverse().toString()

(61)

for (int j=0; j<str.length(); j++) do if (str.charAt(j) != ' ') then lanjut = true

break; if (lanjut) then

for (int j=i; j<teks.length; j++) do posisiPalindrom = teks[j].indexOf(rev)

Pada fungsi di atas menjelaskan bahwa dalam melakukan pemeriksaan palindrom, sistem akan mengalokasikan terlebih dahulu variabel penampung dan mengisikan variabel penampung secara terbalik dengan data yang diperoleh variabel sumber. Kemudian sistem akan melakukan perbandingan isi kedua variabel tersebut, apabila isinya sama, maka disebut palindrom.

(62)

3.6. Perancangan Antar Muka

Perancangan antarmuka dibutuhkan untuk mewakili keadaan sebenarnya dari aplikasi yang akan dibangun. Dan seperti developer java lainnya, Netbean IDE sudah menyediakan tools untuk menyatukan Java compiler ke dalam lingkungan pengembangannya. Berikut akan disajikan perancangan antarmuka dari aplikasi yang akan dibangun :

Gambar 3.2. Rancangan Form Aplikasi.

Pada gambar 3.2. menjelaskan bahwa perancangan form aplikasi terdapat tombol pilih file untuk membuka isi file, kemudian tombol baca isi file untuk membaca isi file. Sedangkan tombol proses cari palindrom digunakan untuk memeriksa palindrom vertikal dan horizontal, tombol bersihkan layar untuk menghapus seluruh tampilan di layar.

(63)
(64)

50 4.1. Implementasi Hasil Perancangan

Pada bagian ini akan dibahas tentang implementasi hasil perancangan aplikasi deteksi string palindrom, dengan menggunakan bahasa pemrograman Java. Dalam implementasi ini diuraikan tentang instruksi-instruksi yang

dipergunakan dan merupakan penerapan fungsi yang telah dibahas pada bagian sebelumnya.

Dalam proses implementasi ini penulis juga melakukan beberapa penyesuaian dari perancangan algorithma sehingga aplikasi ini dapat berjalan dengan baik. Berikut ini adalah hasil implementasinya.

4.1.1. Implementasi Fungsi Ubah Teks Dalam Bentuk Array Of String

String[] str = new String[jumlahBaris];

(65)

Gambar 4.1. Ubah teks dalam bentuk array of string

Pada gambar 4.1. menjelaskan bahwa sistem akan membuat alokasi memori untuk variabel bertipe array of string dengan nama str, sesuai dengan banyaknya jumlah baris. Selain itu sistem juga akan menyimpan panjang strAsal (yang didapat dari pelewatan nilai parameter saat pemanggilan fungsi). Kemudian sistem akan melakukan proses parsing setiap karakter, pada strAsal. Dikarenakan fungsi ini harus mendeteksi tiap kata bukan karakter, maka dalam proses iterasi tersebut, juga dilakukan pemeriksaan apakah karakter yang sedang diparsing tersebut benar-benar karaktek atau bukan, sehingga jika ditemukan spasi atau tab, maka sistem akan melewati keduanya. Hasil akhirnya adalah sistem mengembalikan semua karakter yang berhasil disimpan dalam variabel str ke fungsi pemanggilnya.

4.1.2. Implementasi Fungsi Ubah Array Of String 1D Ke Array Of Char 2D

for (int i=0; i<str.length; i++)

int jumlahBaris = strAsal.length;

int jumlahKolom = strAsal[0].length();

char[][] dataHasil =

new char[jumlahBaris][jumlahKolom];

for (int i=0; i<jumlahBaris; i++)

dataHasil[i] = strAsal[i].toCharArray();

(66)

Gambar 4.2. Ubah array of string 1D ke array of char 2D

Pada gambar 4.2. menjelaskan bahwa sistem akan menugaskan nilai panjang strAsal ke variabel jumlah baris dan jumlah kolom yang didapat dari panjang strAsal indeks ke nol. Selanjutnya sistem akan melakukan deklarasi dan alokasi variabel datahasil bertipe array dua dimensi sesuai dengan banyaknya karakter dalam variabel jumlah baris dan jumlah kolom.

Kemudian secara iteratif sistem melakukan parsing dari strAsal ke variabel data hasil secara satu persatu. Hasil akhirnya, sistem akan mengembalikan isi variabel data hasil ke fungsi pemanggilnya.

4.1.3. Implementasi Fungsi Transpose Matrik

Gambar 4.3. Transpose matrik

Pada gambar 4.3. menjelaskan bahwa sistem akan mengalokasikan variabel datahasil yang bertipe array of char sesuai dengan jumlah karakter pada variabel data sumber (diperoleh dari pelewatan nilai parameter). Kemudian secara

char[][] dataHasil = new

char[dataSumber[0].length][dataSumber.length];

for (int i=0; i<dataSumber.length; i++)

for (int j=0; j<dataSumber[i].length; j++)

dataHasil[j][i] = dataSumber[i][j];

(67)

iteratif sistem melakukan proses parsing per karakter yang terdapat di variabel data sumber ke variabel data hasil secara satu per satu, dan akan mengembalikan hasilnya ke variabel pemanggilnya.

4.1.4. Implementasi Fungsi Ubah Array Of Char 2D Ke Array Of String 1D

Gambar 4.4. Ubah array of char 2D ke array of string 1D

Pada gambar 4.4. menjelaskan bahwa sistem akan mengalokasikan variabel datahasil yang bertipe array of string sesuai dengan jumlah karakter pada variabel data sumber (diperoleh dari pelewatan nilai parameter). Kemudian secara iteratif sistem melakukan proses parsing per karakter yang terdapat di variabel data sumber ke variabel data hasil secara satu per satu, dan akan mengembalikan hasilnya ke variabel pemanggilnya.

4.1.5. Implementasi Fungsi Pemeriksaan Palindrom

String dataHasil = "";

for (int i=0; i<teks.length; i++)

String[] dataHasil = new String[charSumber.length];

for (int i=0; i<charSumber.length; i++)

dataHasil[i] = new String(charSumber[i]);

(68)

int akhirBaca = maxHuruf - awalBaca + 1;

(69)

Pada gambar 4.5. menjelaskan bahwa sistem akan memberikan nilai awal berupa string kosong ke variabel data hasil, kemudian sistem akan melakukan proses secara iteratif proses pemeriksaan palindrom dengan cara sebagai berikut : 1. Variabel maxHuruf diinisialisasikan dengan panjang teks indeks ke i (per

kata)

2. Variabel awalBaca diinisialisasikan dengan nilai nol.

3. Pada variabel str diisi dengan setiap kata yang akan diperiksa palindromnya. Kemudian variabel rev diisi dengan kata yang sama dengan variabel str, hanya saja string kata ini sudah dibalik terlebih dahulu.

4. Selanjutnya, sistem akan melakukan pemeriksaan setiap karakter pada variabel rev dan str. Kemudian hasil pemeriksaan tersebut ditampilkan hasilnya ke layar.

4.2. Implementasi Antar Muka

Perancangan antarmuka adalah proses membuat perancangan form-form tampilan layar, selain itu dalam proses ini juga ditentukan bentuk dan isi dokumen sumber untuk memasukkan data yang kemudian diolah menjadi keluaran yang dapat digunakan oleh pengguna.

4.2.1. Implementasi form pilih dan membaca file.

(70)

Gambar 4.6. Implementasi form pilih dan membaca file.

4.2.2. Implementasi form transpose matrik

Pada form ini menjelaskan merubah teks sumber horizontal menjadi teks sumber vertikal, untuk dapat memproses sebuah kata palindrome baik secara baris maupun kolom. Proses transpose matrik ini terjadi karena dengan membantu perubahan fungsi ubah array of string 1D ke array of char 2D, dan fungsi ubah array of char 2D ke array of string 1D. Tampilannya akan terlihat seperti gambar 4.7. di bawah ini.

(71)

4.2.3. Implementasi pemeriksaan atau pemrosesan palindrome

Pada form ini menjelaskan proses pendeteksian sebuah kata palindrom melalui teks sumber horizontal dan teks sumber vertikal. Hasil tampilannya seperti gambar 4.8. di bawah ini.

(72)

58 5.1. Pengujian Aplikasi

Pada pengujian ini penulis akan menggunakan IDE tools NetBean, dengan bahan uji menggunakan file teks maupun dengan melakukan input secara langsung. Berikut ini adalah proses pengujiannya :

5.1.1. Pengujian Dengan Baris Tunggal

Pengujian dengan baris tunggal bertujuan untuk mengetahui keberhasilan program dalam mendeteksi string palindrom secara horizontal saja. Bahan uji berasal dari file teks maupun input secara langsung. Daftar data pengujian terlihat seperti pada tabel 5.1. di bawah ini.

Tabel 5.1. Daftar Data Pengujian.

No Konten Keterangan

1. Palindrom dalam bahasa Indonesia bisa kita simak pada kata-kata : ada asa taat katak ini bab malam

http://bahasa.kompasiana.com/2011/1 2/24/palindrom-depan-bisa-belakang-boleh/

2. Palindrom frasa dalam bahasa Indonesia : rumah harum, haram marah, kasur rusak, amal lama, dan sebagainya.

http://bahasa.kompasiana.com/2011/1 2/24/palindrom-depan-bisa-belakang-boleh/

3. Kasur ini rusak http://id.wikipedia.org/wiki/Palindrom

4. Aku suka rajawali, bila wajar aku suka

(73)

5. Harum semar kayak rames dari pohon yang rubuh di dekat Makam Pahlawan.

http://news.detik.com/read/2012/03/30 /185119/1881550/10/siap-bentrok- mahasiswa-polisi-medan-malah-saling-tos-jempol

7. Saya tidak akan memberikan penjelasan kenapa saya tidak pernah muncul lebih dari satu bulan ini. Bukan apa-apa sich, saya hanya merasa kalau hal ini tidak penting. Saya tidak mau GR dan berbaik sangka kalau rekan-rekan mengharapkan kehadiran saya (lagi) hehehehe Ini hanyalah tulisan acak dan tanpa arah karena saya hanya mengumpulkan kepingan

kepingan yang bahkan tidak bisa disusun membentuk suatu puzzle yang indah. Saya hanya ingin sedikit menyampaikan

(beberapa) keterkaitan antara matematika dan keadilan menurut saya (ingat, ini

subyektif lho ya). Tetapi secara jujur keadilan yang saya maksud di sini bersifat sangat sempit karena saya mendefinisikan adil jika sama, padahal adil

sebenarnya lebih bersifat proporsional kan? Tetapi tidak apa-apa, toch tulisan saya ini lebih menekankan pada berbagi informasi tentang matematika yang saya kemas dengan

mengaitkannya dengan kehidupan sehari-hari

(74)

Gambar 5.1. Pengujian Pertama (Halaman Pertama). 8. Perusahaan yang bergerak di

bidang penjualan dan distribusi spare part kendaraan bus dan truck yang sedang berkembang pesat

http://www.jobstreet.co.id/jobs/2012/10 /default/40/627205.htm?fr=J&src=38

9. dan akan melakukan perluasan wilayah usaha membutuhkan beberapa kandidat untuk mengisi posisi

http://www.jobstreet.co.id/jobs/2012/10 /default/40/627205.htm?fr=J&src=38

10. Palindrom adalah sebuah kata, frasa, angka

http://id.wikipedia.org/wiki/Palindrom 11. Maupun susunan lainnya yang

dapat dibaca dengan sama

http://id.wikipedia.org/wiki/Palindrom 12. baik dari depan maupun

belakang

http://id.wikipedia.org/wiki/Palindrom 13. Palindrom ada dalam banyak

bahasa-bahasa Barat

http://id.wikipedia.org/wiki/Palindrom 14. sangat unik karena ia akan

megulang kalimatnya lagi

http://id.wikipedia.org/wiki/Palindrom 15. jika kita membentuk kata dari

huruf pertama setiap kata

(75)

Gambar 5.2. Hasil Pengujian Pertama (Halaman Kedua).

Pada gambar 5.2. dalam hasil pengujian pertama ini menjelaskan bahwa, sistem berhasil menelusuri (melakukan pemeriksaan) kata palindrom dengan 7 (tujuh) buah. Dan dalam pengujian pertama ini sistem juga mampu menampilkan semua kata palindrom (yaitu : ada ,asa, taat, katak, ini, bab dan malam).

Pada kolom penelusuran horizontal terlihat cara sistem dalam mendeteksi palindrom, yaitu dengan menampilkan hasil analisis sebagai berikut :

ada [1,10] ada [1,10] asa [1,11] asa [1,11] taat [1,12] taat [1,12] katak [1,13] katak [1,13] ini [1,14] ini [1,14] bab [1,15] bab [1,15] malam [1,16] malam [1,16]

cara pembacaan hasil analisis diatas adalah sebagai berikut :

kata ada yang ditemukan pada posisi baris pertama kolom sepuluh, merupakan palindrom dikarenakan ketika dilakukan fungsi reversibel pada string juga mempunyai hasil yang sama seperti sebelumnya, pada lokasi baris pertama kolom sepuluh. Cara ini berlaku seterusnya pada kata berikutnya.

Gambar

Tabel 2.2. Daftar Operator Pembanding.
Gambar 2.3. IDE Netbeans 7.1
Gambar 3.1. Diagram Alir Sistem.
Gambar 4.5.  Pemeriksaan Palindrom
+7

Referensi

Dokumen terkait

Aplikasi ini dibuat menggunakan bahasa pemrograman java dengan menggunakan database MySQL 5.0, yang dimana kedua tools tersebut bersifat free sehingga kita dapat

Java adalah bahasa pemrograman berorientasi objek yang.. dikembangkan oleh Sun Microsystems sejak

LEGO MINDSTORM NXT merupakan sebuah robot kit yang dapat diprogram dengan berbagai bahasa pemrograman seperti C dan Java setelah terlebih dahulu mengganti firmware lego

Semakin berkembangnya sistem pengenalan ciri pada citra, penulis mencoba merancang suatu sistem aplikasi berbasis Java yang dapat mendeteksi kontur jalan berlubang..

a) Dapat membuat suatu aplikasi perhitungan perencanaan Radar pada Handphone. b) Mengetahui cara membuat dan menggunakan perangkat lunak berbasis bahasa pemrograman

LEGO MINDSTORM NXT merupakan sebuah robot kit yang dapat diprogram dengan berbagai bahasa pemrograman seperti C dan Java setelah terlebih dahulu mengganti firmware

Tipe data yang terdapat pada bahasa pemrograman Java pada umumnyatidak jauh berbeda dengan bahasa pemrograman lain seperti C, C++,Pascal, Basic, dan lainnya,

Tahap perencanaan yang dilakukan yaitu dosen bahasa pemrograman Java mempersiapkan rencana kegiatan perkuliahan yang meliputi penyusunan modul ajar bahasa pemrograman Java yang