SlideShare una empresa de Scribd logo
1 de 104
Descargar para leer sin conexión
RANCANG BANGUN APLIKASI LITERASI ARAB - LATIN
DENGAN MENGGUNAKAN PENDEKATAN OPERASI
CONCATENATION (PENYAMBUNGAN)
SKRIPSI
Oleh
MUHAMMAD IQBAL ARRIKZA
NIM. 04550041
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI (UIN) MALANG
2009
RANCANG BANGUN APLIKASI LITERASI ARAB - LATIN
DENGAN MENGGUNAKAN PENDEKATAN OPERASI
CONCATENATION (PENYAMBUNGAN)
SKRIPSI
Diajukan Kepada:
Universitas Islam Negeri (UIN) Malang
Untuk Memenuhi Salah Satu Persyaratan dalam
Memperoleh Gelar Sarjana Komputer (S.Kom)
Oleh
MUHAMMAD IQBAL ARRIKZA
NIM. 04550041
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI (UIN) MALANG
2009
HALAMAN PERSETUJUAN
RANCANG BANGUN APLIKASI LITERASI ARAB - LATIN
DENGAN MENGGUNAKAN PENDEKATAN OPERASI
CONCATENATION (PENYAMBUNGAN)
SKRIPSI
Oleh
MUHAMMAD IQBAL ARRIKZA
NIM. 04550041
Telah Disetujui, 2009
Pembimbing I Pembimbing II
Suhartono, S.Si, M.Kom Ach. Nasichuddin,
MA
NIP. 150 327 241 NIP. 150 302 531
Mengetahui,
Ketua Jurusan
Suhartono, S.Si, M.Kom
NIP. 150 327 241
HALAMAN PENGESAHAN
RANCANG BANGUN APLIKASI LITERASI ARAB - LATIN
DENGAN MENGGUNAKAN PENDEKATAN OPERASI
CONCATENATION (PENYAMBUNGAN)
SKRIPSI
Oleh
MUHAMMAD IQBAL ARRIKZA
NIM. 04550041
Telah Dipertahankan Di Depan Dewan Penguji Skripsi
Dan Dinyatakan Diterima Sebagai Salah Satu Persyaratan
Untuk Memperoleh Gelar Sarjana Komputer (S.Kom)
Tanggal, 11 April 2009
Susunan Dewan Penguji : Tanda
Tangan
1. Penguji Utama : Totok Chamidy, M.Kom ( )
NIP 150 381 177
2. Ketua Penguji : M. Amin Hariyadi, M.T ( )
NIP 150 368 791
3. Sekertaris Penguji : Suhartono, M.Kom ( )
NIP 150 327 241
4. Anggota Penguji : Ach. Nasichuddin, M.A ( )
NIP 150 302 531
Mengetahui dan Mengesahkan
Ketua Jurusan Teknik Informatika
Fakultas Sains dan Teknologi
Universitas Islam Negeri Malang
Suhartono, S.Si, M.Kom
NIP. 150 327 241
SURAT PERNYATAAN
Yang bertanda tangan di bawah ini :
Nama : Muhammad Iqbal Arrikza
NIM : 04550041
Alamat : Jalan Lawu Gg. IV/7A RT/RW : 003/002 Denanyar Jombang
Menyatakan bahwa skripsi yang saya buat untuk memenuhi persyaratan kelulusan
pada Fakultas Sains dan Teknologi, Jurusan Teknik Informatika Universitas Islam
Negeri Malang Dengan Judul ”RANCANG BANGUN APLIKASI LITERASI
ARAB - LATIN DENGAN MENGGUNAKAN PENDEKATAN OPERASI
CONCATENATION (PENYAMBUNGAN)” ini adalah hasil karya sendiri dan
bukan duplikasi karya orang lain baik sebagian ataupun keseluruhan, kecuali
dalam bentuk kutipan yang telah disebutkan sumbernya .
Selanjutnya apabila di kemudian hari ada Claim dari pihak lain, bukan menjadi
tanggung jawab dosen pembimbing dan atau pengelola Fakultas Sains dan
Teknologi Jurusan Teknik Informatika Universitas Islam Negeri Malang tetapi
menjadi tanggung jawab saya sendiri.
Demikian surat pernyataan ini saya buat dengan sebenar-benarnya dan apabila
pernyataan ini tidak benar, saya bersedia mendapatkan sangsi akademis.
Malang, 04 April 2009
Yang Menyatakan
MUHAMMAD IQBAL ARRIKZA
“Bacalah dengan
MOTTOMOTTOMOTTOMOTTO
“Bacalah dengan (menyebut) nama Tuhanmu yang Menciptakan,”
(QS. Al-Alaq: 1)
(menyebut) nama Tuhanmu yang Menciptakan,”
KATA PENGANTAR
Puji syukur Alhamdulillah kita haturkan kepada Allah Swt. Yang telah
melimpahkan rahmat serta hidayahnya sehingga skripsi ini dapat terselesaikan
dengan judul: ”Rancang Bangun Aplikasi Literasi Arab - Latin Dengan
Menggunakan Pendekatan Operasi Concatenation (Penyambungan)”
Sholawat serta salam semoga tetap terlimpahkan keharibaan baginda
Nabi Muhammad Saw, yang telah membawa petunjuk kebenaran seluruh umat
manusia yaitu Ad-Din Al-Islam yang kita harapkan syafa’atnya di dunia dan di
akhirat.
Terselesaikannya skripsi ini dengan baik berkat dukungan, motivasi,
petunjuk dan bimbingan dari berbagai pihak. Oleh karena itu penulis juga
mengucapkan terimakasih yang sebesar-besarnya kepada:
1. Kedua orang tua, Ayahanda penulis Almarhum Drs. M. Sholeh Mansyur dan
Ibunda Dra. Syafi’ah
2. Prof. Dr. Imam Suprayogo, selaku Rektor Universitas Islam Negeri (UIN)
Malang
3. Prof. Dr. Sutiman Bambang Sumitro, S.U., D. Sc selaku Dekan Fakultas Sains
dan Teknologi Universitas Islam Negeri (UIN) Malang.
4. Suhartono, S.Si, M.Kom, selaku Ketua Jurusan Teknik Informatika
Universitas Islam Negeri (UIN) Malang sekaligus Dosen Pembimbing, yang
telah memberi masukan, saran serta bimbingan dalam proses menyelesaikan
skripsi ini.
5. Ach. Nashichuddin, M.A, selaku Dosen Pembimbing Integrasi Sains dan
Islam Universitas Islam Negeri (UIN) Malang, yang telah memberi masukan,
saran serta bimbingan dalam proses menyelesaikan skripsi ini.
6. Bapak/Ibu Dosen Teknik Informatika UIN Malang yang telah memberikan
ilmunya dengan tulus.
7. Teman-teman Teknik Informatika UIN 2004 yang tak bisa disebutkan satu
persatu, yang telah menjadi motivator demi selesainya penyusunan skripsi ini.
Penulis sadar bahwa tidak ada sesuatu pun yang sempurna kecuali Allah
Swt. Oleh karena itu, dengan senang hati penulis menerima kritik dan saran yang
bersifat membangun. Semoga skripsi ini bermanfaat bagi penulis khususnya dan
juga bagi pembaca umumnya. Amin Ya Rabbal Alamin
Malang 04 April 2009
Penulis
DAFTAR ISI
HALAMAN JUDUL ....................................................................................... i
HALAMAN PERSETUJUAN......................................................................... ii
HALAMAN PENGESAHAN.......................................................................... iii
SURAT PERNYATAAN…………………………………………………….. iv
MOTTO ...................................................................................................... v
KATA PENGANTAR ..................................................................................... vi
DAFTAR ISI.................................................................................................... viii
DAFTAR TABEL............................................................................................ x
DAFTAR GAMBAR ....................................................................................... xi
DAFTAR LAMPIRAN.................................................................................... xii
ABSTRAK ...................................................................................................... xiii
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 .............................................................. 6
BAB II : LANDASAN TEORI ................................................................... 8
2.1 Literasi...................................................................................... 8
2.2 Algoritma dan flowchart .......................................................... 12
2.2.1 Syarat-syarat Algoritma .................................................. 14
2.2.2 Flowchart ........................................................................ 15
2.3 Operasi concatenation (penyambungan) ................................. 17
2.4 Bahasa Pemrograman Java....................................................... 18
2.4.1 Bahasa Java..................................................................... 18
2.4.2 Variabel dan Tipe data .................................................... 25
2.4.3 Operator........................................................................... 32
2.4.4 String .............................................................................. 36
2.4.5 Kondisi if......................................................................... 38
2.4.6 Perulangan for................................................................. 41
BAB III : PERANCANGAN DAN DESAIN SISTEM.............................. 45
3.1 Materi Penelitian...................................................................... 45
3.2 Alat Penelitian.......................................................................... 45
3.2.1 Kebutuhan Hadware ....................................................... 45
3.2.2 Kebutuhan Software ....................................................... 46
3.3 Tahap-tahap pembangunan sistem ........................................... 46
3.4 Rancangan Program ................................................................. 47
3.5 Proses Literasi.......................................................................... 48
3.6 Flowchart ................................................................................. 49
3.7 Implementasi............................................................................ 51
BAB IV : HASIL DAN PEMBAHASAN.................................................... 62
4.1 Implementasi perangkat lunak ................................................. 62
4.2 Implementasi Antarmuka......................................................... 63
4.2.1 Tampilan Gambar Tabel Pedoman literasi utama ........... 65
4.2.2 Tampilan Gambar keybord .............................................. 65
4.2.3 Tampilan hasil concatenation .......................................... 66
4.3 Pengujian.................................................................................. 66
BAB V : PENUTUP .................................................................................... 69
5.1 Kesimpulan .............................................................................. 69
5.2 Saran......................................................................................... 69
DAFTAR PUSTAKA
LAMPIRAN
DAFTAR TABEL
Tabel 2.1 Pedoman Transliterasi Arab-Latin……………………….......
Tabel 2.2 Unicode Arab…………………………………………………
Tabel 2.3 Tipe data di Java………………………………………………
Tabel 2.4 Operator Aritmatika…………………………………………...
Tabel 2.5 Increment dan Decrement………………………………….....
Tabel 2.6 Assignment ( Penugasan )……………………………….........
Tabel 2.7 Operator relasi…………………………………………….......
Tabel 2.8 Operator Logical………………………………………………
Tabel 2.9 Operator Bitwise………………………………………………
11
27
29
32
33
34
34
35
35
DAFTAR GAMBAR
Gambar 2.1 :Algoritma dalam kerangka pemecahan masalah………......
Gambar 2.2 :Representasi Grafis Flowchart…………………………….
Gambar 2.3 :Flowchart If……………………………………………......
Gambar 2.4 :Flowchart If..else....………………………………………..
Gambar 2.5 :Flowchart For………………………………………………
Gambar 3.1 :Diagram blok………………………………………………
Gambar 3.2 :Flowchart literasi………………………………………......
Gambar 3.3 :Sambungan flowchart literasi……………………………...
Gambar 3.4 :Flowchart Literasi di Java ………………………………..
Gambar 3.5 :Sambungan Flowchart literasi di Java ……………………
Gambar 3.6 : Alur Kompilasi Program Java …….……………………..
Gambar 4.1 :Tampilan utama……………………………………………
Gambar 4.2 :Tampilan menu…………………………………………….
Gambar 4.3 :Tampilan gambar tabel pedoman literasi…………………..
Gambar 4.4 :Tampilan gambar keyboard………………………………..
Gambar 4.5 :Tampilan hasil concatenation……………………………...
Gambar 4.6 :Tampilan input kata Arab………..………………………...
Gambar 4.7 :Tampilan input kalimat Arab……………………………....
13
16
39
40
43
47
50
51
52
53
61
63
64
65
65
66
67
67
DAFTAR LAMPIRAN
Lampiran 1 : Cara mengaktifkan Arabic
Lampiran 2 : Tampilan percobaan
Lampiran 3 : Tabel 250 kata yang diuji
Lampiran 4 : Tabel 250 kalimat yang diuji
ABSTRAK
Muhammad Iqbal Arrikza. 2004. 04550041. Rancang Bangun Aplikasi Literasi
Arab - Latin Dengan Menggunakan Pendekatan Operasi Concatenation
(Penyambungan). Pembimbing : (I) Suhartono, S.Si, M.Kom, (II) Ach.
Nashichuddin, M.A
Kata Kunci : Aplikasi Literasi Arab-Latin, Concatenation
Penduduk Indonesia sebagian besar beragama Islam, Al-Qur’an sebagai
kitab suci agama Islam yang ditulis dengan bahasa Arab. Menjadi kebutuhan yang
penting dimiliki oleh muslim di Indonesia. Untuk menunjang kebutuhan
mempelajari baca tulis huruf Arab, salah satu hal yang paling dibutuhkan adalah
Transliterasi Arab-Latin atau alih huruf Arab ke huruf latin. Sehingga bangsa
Indonesia mempunyai pedoman transliterasi yang baku.
Salah satu perkembangan teknologi informasi saat ini ditandai dengan
pembuatan Aplikasi. Proses pembuatan Aplikasi ini menggunakan pendekatan
operasi concatenation, sedangkan tahap yang dilakukan dalam penelitian ini yaitu
dengan menerapkan algoritma literasi dengan pendekatan operasi concatenation.
Operasi ini menggunakan penyambungan untuk merangkai sebuah kata atau
abjad, untuk menerapkan algoritma literasi dengan dengan pendekatan operasi
tersebut digunakan bahasa pemrograman Java. Java merupakan suatu teknologi di
dunia software komputer.
Dari penelitian yang telah dilakukan, bahwa aplikasi literasi Arab-Latin
dapat memudahkan dalam mentransliterasikan dari hurus Arab ke huruf Latin,
sesuai dengan aturan-aturan pedoman transliterasi yang baku.
1.1 Latar Belakang
Sebagai bangsa yang memiliki penduduk terbesar setelah China dan
India, penduduk Indonesai terdiri dari berbagai agama dan suku bangsa yang
memiliki bahasa berbeda
yang dijadikan sebagai bahasa persatuan dan
nasionalnya. Islam merupakan agama yang dianut oleh mayoritas penduduk
Indonesia, oleh karenanya kebutuhan untuk mampu menguasai baca tulis Al
Qur’an sebagai kitab suci agama Islam yang ditulis dengan bahasa Arab,
menjadi kebutuhan y
menunjang kebutuhan mempelajari baca tulis huruf Arab, salah satu hal yang
paling dibutuhkan adalah Transliterasi Arab
huruf latin.
Literasi
menyediakan kebutuhan mempelajari bahasa
bagi siapa saja yang
Allah SWT :
Artinya :
Ayat tersebut berkaitan dengan
memenuhi kebutuhan tersebut itu harus dibutuhkan suatu sarana atau media
pembelajaran yang berupa aplikasi komputer.
BAB I
PENDAHULUAN
Sebagai bangsa yang memiliki penduduk terbesar setelah China dan
India, penduduk Indonesai terdiri dari berbagai agama dan suku bangsa yang
memiliki bahasa berbeda-beda, akan tetapi disatukan oleh bahasa Indonesa
yang dijadikan sebagai bahasa persatuan dan bahasa bagi pergaulan
nasionalnya. Islam merupakan agama yang dianut oleh mayoritas penduduk
Indonesia, oleh karenanya kebutuhan untuk mampu menguasai baca tulis Al
Qur’an sebagai kitab suci agama Islam yang ditulis dengan bahasa Arab,
menjadi kebutuhan yang penting dimiliki oleh muslim di Indonesia. Untuk
menunjang kebutuhan mempelajari baca tulis huruf Arab, salah satu hal yang
paling dibutuhkan adalah Transliterasi Arab-Latin atau alih huruf Arab
iterasi huruf Arab-Latin dimaksudkan sebagai upaya untuk
menyediakan kebutuhan mempelajari bahasa Arab dengan mudah khususnya
yang akan belajar membaca tulisan Arab. Sebagaimana firman
Artinya :“Bacalah dengan (menyebut) nama Tuhanmu yang
Menciptakan,” (QS. Al-Alaq: 1).
Ayat tersebut berkaitan dengan adanya perintah membaca, untuk
memenuhi kebutuhan tersebut itu harus dibutuhkan suatu sarana atau media
pembelajaran yang berupa aplikasi komputer. Hal inilah yang mendorong
Sebagai bangsa yang memiliki penduduk terbesar setelah China dan
India, penduduk Indonesai terdiri dari berbagai agama dan suku bangsa yang
beda, akan tetapi disatukan oleh bahasa Indonesa
bahasa bagi pergaulan
nasionalnya. Islam merupakan agama yang dianut oleh mayoritas penduduk
Indonesia, oleh karenanya kebutuhan untuk mampu menguasai baca tulis Al-
Qur’an sebagai kitab suci agama Islam yang ditulis dengan bahasa Arab,
ang penting dimiliki oleh muslim di Indonesia. Untuk
menunjang kebutuhan mempelajari baca tulis huruf Arab, salah satu hal yang
alih huruf Arab ke
bagai upaya untuk
dengan mudah khususnya
Sebagaimana firman
“Bacalah dengan (menyebut) nama Tuhanmu yang
adanya perintah membaca, untuk
memenuhi kebutuhan tersebut itu harus dibutuhkan suatu sarana atau media
Hal inilah yang mendorong
untuk merancang dan membangun Aplikasi literasi Arab-Latin. Dengan
adanya Aplikasi ini diharapkan kepada siapa saja yang akan belajar membaca
tulisan Arab tidak harus mencari guru, namun dengan kemajuan teknologi
informasi yang ada saat ini, siapa saja dapat belajar melaui aplikasi yang ada
di komputer, sehingga kebutuhan baca tulis Arab dapat dipelajari oleh siapa
saja kapanpun dan dimanapun dia berada. Maka terbentuklah judul skripsi
mengenai “Rancang Bangun Aplikasi Literasi Arab-Latin Dengan
Menggunakan Pendekatan Operasi Concatenation (Penyambungan)”.
1.2 Rumusan Masalah
Berdasarkan uraian pada latar belakang, didapatkan rumusan masalah
yaitu bagaimana merancang dan membangun aplikasi literasi Arab-Latin
dengan menggunakan pendekatan operasi concatenation (penyambungan) ?
1.3 Batasan Masalah
Agar diperoleh hasil pembahasan yang sesuai dengan tujuan yang
diharapkan, maka perlu diberikan batasan-batasan masalah yaitu :
1. Literasi yang digunakan adalah literasi arab ke latin.
2. Aplikasi Perangkat lunak ini menggunakan pendekatan operasi
concatenation ( penyambungan ).
3. Aplikasi perangkat lunak ini dibuat dengan menggunakan bahasa
pemrograman java.
4. Inputan didapatkan dari keyboard.
5. Transliterasi Arab-Latin meliputi ; Konsonan, Vokal, Maddah, Syaddah
(Tasydid ), Hamzah, Ta’marbuttah, Kata sandang al-Qomariah.
1.4 Tujuan Penelitian
Tujuan penelitian ini adalah untuk merancang dan membangun
aplikasi literasi Arab-Latin dengan menggunakan pendekatan operasi
concatenation (penyambungan) ?
1.5 Manfaat Penelitian
Kegunaan yang dapat dihasilkan dari hasil penelitian dalam skripsi ini
adalah:
1. Sebagai bahan acuan serta pembuka wawasan untuk masyarakat maupun
akademisi agar dapat membaca bahasa Arab dengan mudah melalui media
elektronik dalam hal ini komputer..
2. Mempermudah dan mempercepat dalam literasi bahasa Arab ke Latin.
3. Memberikan kontribusi pada Ilmu Pengetahuan dan Teknologi dalam
pemanfaatan aplikasi Teknologi Informasi dan dapat menjadi pendukung
sistem pembelajaran.
1.6 Metode Penelitian
Tahap-tahap yang dilakukan dalam mengerjakan tugas akhir ini adalah
sebagai berikut:
1. Fase Perencanaan
Fase perencanaan terdiri dari beberapa kegiatan, diantaranya :
a. Studi kelayakan judul
Pada studi kelayakan judul, dipilih judul yang cocok dengan
kemampuan. Judul ini telah dikonsultasikan kepada para dosen
Pembimbing dan disetujui.
b. Pembuatan proposal
Setelah didapatkan judul proses selanjutnya dibuat proposal untuk
dilakukan pengujian.
c. Seminar proposal
Proposal yang sudah jadi dilakukan pengujian dengan diadakannya
seminar proposal.
2. Fase Analisis
a. Studi literature
Langkah ini dilakukan dengan tujuan untuk mendapatkan referensi
yang akan digunakan dalam pembahasan permasalahan sehingga
dapat dibangun suatu konsep literasi Arab - latin.
b. Pembuatan algoritma sederhana pada software literasi dengan
pendekatan concatenation (penyambungan).
3. Fase Desain
a. Desain output
Desain awal yang digunakan untuk memperkirakan yang dihasilkan
dari masalah yang diangkat.
b. Desain input
Dari desain hasil, dapat ditentukan apa saja yang dibutuhkan untuk
didapat hasil yang diinginkan.
c. Desain proses
Setelah desain output dan input selesai, baru dilakukan desain untuk
prosess digambarkan dengan diagram, diagram blok dan flowchart
(grafis algoritma).
d. Desain inteface
Setelah semua selesai baru dibuat desain tampilan aplikasi.
4. Fase Implementasi
Software yang digunakan untuk pengembangan aplikasi ini adalah :
a. OS (Windows xp).
b. Bahasa Pemrograman yang dapat mendukung design interface.
c. Microsoft Word 2007 mendukung desain flowchart algoritma.
Hardware yang digunakan adalah :
a. PC/Komputer
- Procesor : intel (R) 1.60 GHz.
- Hardisk : 160 GHz
- VGA : 64 MB
- Memory : 512 Mb
5. Fase Ujicoba
Pada tahap ini dilakukan pengujian terhadap program untuk melihat
output yang dihasilkan huruf bila diberikan inputan huruf dalam bahasa
Arab dan sistem secara keseluruhan. Proses uji coba ini diperlukan untuk
memastikan bahwa sistem yang telah dibuat sudah benar, sesuai dengan
karakteristik yang ditetapkan dan tidak ada kesalahan-kesalahan yang
terkandung di dalamnya.
6. Pembuatan laporan tugas akhir.
Tahap akhir dari pembuatan tugas akhir ini adalah membuat laporan
dari yang telah dikerjakan selama proses pembuatan tugas akhir dan
dijadikan sebagai dokumentasi tugas akhir.
1.7 Sistematika Penulisan
Sistematika penulisan yang digunakan dalam penyusunan laporan
skripsi ini adalah:
BAB I PENDAHULUAN
Bab ini berisi tentang latar belakang, rumusan masalah, batasan
masalah, tujuan yang ingin dicapai, manfaat penelitian, metode
pembahasan, serta sistematika penulisan.
BAB II LANDASAN TEORI
Bab ini berisi tentang teori-teori yang mendukung perancangan dan
pembuatan aplikasi literasi arab latin dengan menggunakan
pendekatan operasi concatenation (penyambungan).
BAB III DESAIN DAN PERANCANGAN SISTEM
Desain dan Perancangan, membahas tentang perancangan umum
maupun uraian lebih lanjut mengenai perancangan sistem program
dalam pembuatan perangkat lunak. Uraian perancangan sistem
perangkat lunak ini meliputi perancangan data mengenai data input
dan outputnya, perancangan proses mengenai bagaimana sistem
akan bekerja dengan proses-proses tertentu, maupun perancangan
antarmuka dalam desain dan implementasi yang akan digunakan
dalam pembuatan laporan skripsi.
BAB IV HASIL DAN PEMBAHASAN
Hasil dan Implementasi, merupakan pembahasan dan implementasi
program. Menjelaskan tentang sistem serta menguji sistem secara
umum maupun terperinci.
BAB V PENUTUP
Bab ini berisi kesimpulan yang telah didapatkan dari hasil uji coba
sistem dan analisisnya mengenai keterikatan dengan tujuan
pembuatan sistem, dan selanjutnya akan dikemukakan saran-saran
mengenai penggunaan sistem serta bahan masukan bagi rencana
pengembangan proyek untuk masa yang akan datang.
BAB II
LANDASAN TEORI
2.1 Literasi
Litersi yang dimaksudkan adalah kata transliterasi dan berasal dari
bahasa inggris “Transliteration” biasa diterjemahkan sebagai alih huruf atau
alih aksara. Badudu (2005: 351) mengartikan transliterasi sebagai penyalinan
dengan mengganti huruf - huruf”(Solihin, 2008: 16). Dan International
Organitation for Standarization (ISO) menyatakan : “Transliteration is the
operation of representation of representing characters or sign of any
alphabet by those of any other but this note refers only to transliteration of
non-Latin alphabet into the Latin alphabet (alsotermed ‘Roman
alphabet’)”(Eryono, 1993: 47). Jadi yang dimaksudkan dari pada transliterasi
yaitu pengalihan atau penyalinan huruf- huruf dari bahasa satu kebahasa lain.
Berdasarkan dari beberapa pengertian diatas yang menjadi bahan dasar
dari penelitian ini adalah transliterasi Arab-Latin atau pengalihan dari huruf
bahasa Arab ke huruf Latin. Sebelum melihat transliterasi Arab-Latin
alangkah baiknya terlebih dahulu mengetahui sedikit tentang bahasa Arab
tersebut. Dalam latar belakang bahasa Arab merupakan bahasa yang
digunakan dalam menulis kitab suci Al-Qur’an yang dianut oleh seluruh umat
Islam, itu berarti bahasa Arab mempunyai banyak keistimewaan sebagaimana
dalam firman ALLAH SWT:
Artinya : “Sesungguhnya Kami menurunkannya berupa Al Quran dengan
berbahasa Arab, agar kamu memahaminya.” (QS. Yusuf:2)
Secara jelas ayat ini menyatakan bahwa Al-Qur’an itu berbahasa Arab,
dan ALLAH SWT yang memilih bahasa itu. Jika demikian, wahyu Ilahi
kepada Nabi Muhammad saw. Yang disampaikan ini, bukan hanya
penyampaian kandungan maknanya, tetapi sekaligus dengan redaksi, kata
demi kata, yang kesemuanya dipilih dan disusun langsung oleh ALLAH SWT
(Sihab, 2002:379). Dan keunikan bahasa Arab dibanding dengan bahasa yang
lain, kata-kata bahasa Arab pada umumnya berdasar tiga huruf mati yang
dapat dibentuk dengan berbagai bentuk, misal kata yang memiliki makna
singa ada 500 kata, dan ada juga menurut pengarang kamus al-Muhith ada
kata madu yang mempunyai makna 80 kata(Sihab, 2002:380).
Pada paragraf diatas diuraikan keistimewaan bahasa Arab beserta
firman ALLAH, kembali pada pokok pembahasan yaitu transliterasi Arab-
Latin atau pengalihan huruf Arab ke huruf Latin, yang digunakan oleh bangsa
Indonesia untuk mempelajari bahasa Arab tersebut, dan bangsa Indonesia
mempunyai pedoman Transliterasi yang baku.
Pedoman transliterasi yang baku meliputi : Konsonan, vokal, maddah,
ta’marbutoh, syaddah (tasydid), kata sandang, hamzah, penulisan kata, huruf
kapital, dan tajwid (Depag, 2003:3). Dalam batasan masalah ada beberapa
penjelasan yang ditransliterasikan didalam melakukan penelitian ini dan
tabel literasi sebagai berikut:
1. Konsonan
Fonem konsonan bahasa Arab yang dalam sistem tulisan Arab
dilambangkan dengan hurut dalam transliterasi ini sebagian dilambangkan
dengan huruf dan sebagian dilambangkan dengan tanda, dan sebagian lain
lagi dilambangkan dengan huruf dan tanda sekaligus.
2. Vokal tunggal dan vokal rangkap
Vokal bahasa Arab. seperti vokal bahasa Indonesia, terdiri dari vokal
tunggal atau monoftong dan vokal rangkap atau diftong.Vokal tunggal
bahasa Arab yang lambangnya berupa tanda atau harkat. Vokal rangkap
bahasa Arab yang lambangnya berupa gabungan antara harkat dan huruf,
seperti contoh;
Vokal tunggal : َ ََ‫آ‬ - kataba
Vokal rangkap: َ‫ل‬ْ َ‫ه‬ - Haula
3. Maddah
Maddab atau vokal panjang yang lambangnya berupa harkat dan huruf
translirerasinva herupa huruf dan tanda, contoh:
َ‫ل‬ َ - qāla
4. Syaddab (Tasydid)
Syaddab atan tasydid yang dalam sistern tulisan Arab dilambangkan
dengan sebuah tanda, tanda syaddah atau tanda tasydid. Dalam
transliterasi ini tanda syaddah tersebut dilambangkan dengan huruf, yaitu
huruf yang sama dengan huruf yang diberi tanda syaddah itu, contoh ;
َ‫ل‬ َ - nazzala
5. Hamzah
Di nyatakan di dalam tabel 2.1 bahwa hamzah ditransliterasikan dengan
apostrof. Namun, itu hanya terletak di tengah dan di akhir kata. Bila
hamzah itu terletak di awal kata, ia tidak dilambangkan karena dalam
tulisan Arab berupa alif.
ُ‫ت‬ْ ِ ُ‫ا‬ - umirtu ٌ‫ء‬ْ َ - syai'un
Arab Nama Latin Arab Nama Latin
‫ا‬ Alif Tidak
dilambangkan ‫ق‬ Qa Q
‫ب‬ Ba’ B ‫ك‬ Kaf K
‫ت‬ Ta’ T ‫ل‬ Lam L
‫ث‬ Tsa’ Ś ‫م‬ Mim M
‫ج‬ Jim J ‫ن‬ Nun N
‫ح‬ Ĥ Ĥ ‫و‬ Wau W
‫خ‬ Kha KH Ha H
‫د‬ Dal D ‫ء‬ Hamzah …'…
‫ذ‬ śal ś ‫ي‬ Ya’ Y
‫ر‬ Ra’ R َ Fathah A
‫ز‬ Zai Z ِ Kasrah I
‫س‬ Sin S ُ Dammah U
‫ش‬ Syin SY ً Fathahtain AN
‫ص‬ Sad Ş ٍ Kasrahtain IN
‫ض‬ Dad ð ٌ Dammahtain UN
‫ط‬ Ta Ț ‫ي‬ Fathah dan ya’ AI
‫ظ‬
Za
Ž ‫و‬
Fathah dan
wau
AU
‫ع‬
Ain
…‘… ‫ى‬ ‫ا‬
Fathah dan
alif atau ya’
Ā
‫غ‬
Gain
G ‫ي‬
Kasroh dan
ya’
Ī
‫ف‬ fa F ‫و‬ ُ
Dhammah dan
wau
Ū
‫ة‬
Ta’
marbutah
T ْ‫ة‬
Ta’ marbutah
disukun
H
Tabel 2.1 Pedoman Transliterasi Arab-Latin
Berdasarkan pada tabel Pedoman transliterasi 2.1 pada halaman
sebelumnya telah dirancang suatu sistem Aplikasi Literasi Arab-Latin.
Dimana suatu sistem translitertion mengambil masuk suatu karakter dalam
sumber bahasa dan menghasilkan sebuah karakter dalam bahasa target
keluaran. Proses dapat conceptualized seperti dua tingkatan tentang
memecahkan kode segmentasi sumber ke dalam transliteration unit dan
berhubungan sumber bahasa transliteration unit dengan unit di dalam target
bahasa, dengan pemecahan yang berbeda kombinasi kelurusan dan unit yang
memetakan. Permasalahan dalam mesin transliteration telah dipelajari secara
ekstensif di dalam paradigma keramaian model saluran(Ekbal, 2006:193).
Jadi ketika ingin membuat sistem Transliterasi dari bahasa Arab ke bahasa
Latin mengambil masuk karakter Arab dan menghasilkan keluaran karakter
Latin.
Untuk menunjang dalam pembuatan Aplikasi Literasi Arab-Latin ini
maka diperlukan beberapa landasan teori pendukung yang bisa memperlancar
dalam pengerjaan penelitian ini. Landasan-landasan teori tersebut akan
dijelaskan pada sub bab yang selanjutnya.
2.2 Algoritma dan Flowchart
Algoritma menjadi landasan bagi penulisan program untuk
memecahkan masalah. Usaha yang dilakukan agar solusi suatu masalah dapat
diperoleh adalah membuat suatu proses atau prosedur yang merupakan urutan
dan Iangkah-Iangkah atau instruksi-instruksi yang berintegrasi. Langkah-
langkah instruksi tersebut secara umum dikenal dengan Algoritma. Istilah
tersebut pertama kali dikenalkan oleh seorang Ahli Matematika yang bernama
Abu Ja’far Muhammad Ibnu Musa Al Khawarizmi. Selain itu ada juga
definisi menurut suatu kamus bahasa Webster Dictionary bahwa Algoritma
adalah suatu metode khusus yang digunakan untuk menyelesaikan suatu
masaah yang nyata(Yulikuspartono, 2004:2). Algoritma adalah deskripsi
langkah-Iangkah penyelesaian masalah yang tersusun secara logis atau urutan
logis pengambilan keputusan untuk pemecahan suatu masalah dan ditulis
dengan notasi khusus, notasi mudah dimengerti, dan notasi dapat
diterjemahkan menjadi sintaks suatu bahasa pemrograman (Limbong, 2006:
141).
Disini dibahas algoritma secara umum: asal usul kata, syarat, jenis
proses, tahapan algoritma dan penulisan program, penulisan algoritma dengan
menggunakan flowchart dan bahasa Indonesia Terstruktur, serta implementasi
algoritma menjadi program. Seperti, ketika ada masalah yang timbul perlu
dicarikan pemecahannya sehingga memberikan solusi yang benar atau
dianggap paling benar. Berbicara mengenai pemecahan masalah dengan
menggunakan komputer maka diperlukan algoritma seperti ditunjukkan pada
gambar 2.1.
Gambar 2.1 Algoritma dalam kerangka pemecahan masalah
Secara umum algoritma ialah sejumlah Iangkah komputasi yang
mengubah masukan (input) menjadi keluaran (output) yang benar. Algoritma
yang masih berupa logika pemecahan masalah selanjutnya diubah menjadi
program komputer (disebut source code) menurut bahasa pemrograman
tertentu, misalnya bahasa C. Selanjutnya source code ini perlu dikompilasi
oleh penerjemah (compiler, interpreter) menjadi kode-kode yang dapat
dimengerti dan dijalankan mesin komputer. Kode ini disebut executable code.
Pada saat executable code dijalankan data masukan dibaca melalui pengetikan
keyboard atau dibaca dari file data, diolah, dan informasi dihasilkan berupa
tampilan di layar monitor, cetak pada printer, atau pembentukan file
data.(Ngoen, 2006:4)
2.2.1 Syarat Algoritma
Menurut Donald F. Knuth sebuah algoritma harus memenuhi
persyaratan:
1. Finiteness
Algoritma harus berakhir (terminate) setelah melakukan sejumlah
langkah proses.
2. Definiteness
Setiap langkah algoritma harus didefinisikan dengan tepat dan tidak
menimbulkan makna ganda (ambiguous). Oleh karena itu, cara
paling tepat untuk menuliskan algoritma adalah dengan
menggunakan formal language (bahasa pemrograman komputer).
3. Input
Setiap algoritma memerlukan data sebagai masukan untuk diolah.
Algoritma yang tidak memerlukan masukan apa-apa sebetulnya tidak
begitu bermanfaat karena jumlah kasus yang dapat diselesaikan juga
terbatas.
4. Output
Setiap algoritma memberikan satu atau beberapa hasil keluaran.
5. Effectiveness
Langkah-langkah algoritma dikerjakan dalam waktu yang wajar
(Ngoen, 2006: 5).
2.2.2 Flowchart
Dalam pembuatan program tersebut, alangkah baiknya kalau lebih
dulu dibuatkan logika atau urut-urutan instruksi program tersebut dalam
suatu diagram yang disebut diagram alur atau FlowChart
(Yulikuspartono, 2004: 30).
Flowchart adalah representasi grafis dari suatu algoritma, yang
berbentuk blok, lingkaran, elips, serta garis alur (panah) seperti pada
gambar 2.2 ( Hermawan, 2004:86).
Flowchart dapat berupa satu diagram alur lengkap dari suatu
aktivitas dan bisa juga menggambarkan hanya bagian tertentu dari
aktivitas tersebut (Hermawan, 2004:88). Hal ini dilakukan bila
algoritma begitu kompleks dan detail, sehingga satu halaman kertas
tidak mampu untuk melukiskan keseluruhan flowchart. Bila
menggambarkan keseluruhan aktivitas, flowchart tersebut dimulai
dengan blok “Mulai” dan diakhiri dengan blok “Selesai”.
Bila hanya sebagian, flowchart dimulai dan diakhiri dengan
lingkaran kecil serta diberi notasi abjad atau angka yang menunjukkan
bagian tersebut merupakan sambungan dan bagian yang lain. flowchart
dibuat berdasarkan representasi grafis seperti pada gambar 2.2.
Gambar 2.2 Representasi Grafis Flowchart
Simbol-Simbol Dasar
Proses Control Dokumen Data
Predefined
Process
Data
Tersimpan Internal
Storage
Data
Sekuensial
Input
Manual
Kartu Paper Tape
Display
Operasi
Manual
inisialisasi Mulai /
selesai
Batas
perulangan
Sambungan dan Konektor
Sambungan Bagian Pada
Halaman Yang Sama
Sambungan Bagian Pada
Halaman Berbeda
Konektor
(Control Transfer)
2.3 Operasi concatenation (penyambungan)
Definisikan sebuah untai (kata) atau string atas sebuah himpunan A,
dan berikan sebuah contoh. Misalkan A adalah sebuah abjad, yaitu, sebuah
himpunan yang elemen-elemennya disebut huruf. Sebuah kata (string) w dan
A adalah suatu barisan huruf-huruf yang berhingga. Contoh,
u = ababb dan v = accbaa
adalah barisan huruf atau huruf-huruf dan abjad A = {a, b, c}. Barisan
hampa (kosong), dinyatakan dengan LLLL atau 1, juga didefinisikan sebagai
sebuah kata dan A. Biasanya menyingkat notasi dengan menuliskan ܽଶ
untuk
aa, ܽଷ
untuk aaa dan seterusnya. Sehingga, untuk kata di atas, u = abaܾଶ
dan
v = aܿଶ
bܽଶ
. Himpunan dan semua kata atas A dinyatakan dengan A*.
Definisikan operasi penyambungan (concatenation), dan berikan
sebuah contoh.
Perhatikan dua kata u dan v dan sebuah abjad A. Concatenation
(penyambungan) dan u dan v ditulis uv, adalah kata-kata dan A yang
didapatkan dengan menuliskan huruf-huruf dari u diikuti oleh huruf-huruf dan
v. Contoh, dari soal 6.1, untuk kata u = abaܾଶ
dan v = aܿଶ
bܽଶ
,
uv = abaܾଶ
aܿଶ
bܽଶ
dan vu = accbaaababb
Sehingga, concatenation (penyambungan) tidak komutatif. Juga
didefinisikan ‫ݑ‬ଶ
= uu, ‫ݑ‬ଷ
dan, secara umum, ‫ݑ‬௡ାଵ
=‫ݑ‬௡
u ( Lipschutz, 2002 :
230).
2.4 Bahasa Pemrograman Java
2.4.1 Bahasa Java
1. Definisi Java
Secara umum Java dijelaskan dengan singkat karena akan lebih
dipahami pada saat menggeluti dan menggunakannya.“Java adalah
suatu teknologi di dunia software komputer. Selain merupakan suatu
bahasa pemrograman, Java juga merupakan suatu platform”.
Telah didefinisikan secara ringkas, dan berikut ini akan
dijelaskan lebih lanjut: “Java merupakan teknologi di mana
teknologi tersebut mencakup Java sebagai bahasa pemrograman
yang memiliki sintaks dan aturan pemrograman tersendiri, juga
mencakup Java sebagai platform di mana teknologi ini memiliki
virtual machine dan library yang diperlukan untuk menulis dan
menjalankan program yang ditulis dengan bahasa pemrograman
Java” ( Rickyanto, 2003: 2).
2. Sejarah Java
Java diciptakan oleh suatu tim yang dipimpin oleh Patrick
Naughton dan James Gosling dalam suatu proyek dari Sun
Microsystem yang memiliki kode Green dengan tujuan untuk
menghasilkan bahasa komputer sederhana yang dapat dijalankan di
peralatan sederhana dengan tidak terikat pada arsitektur tertentu.
Mula-mula James Gosling menyebut bahasa pemrograman yang
dihasilkannya dengan OAK, tetapi karena OAK sendiri merupakan
nama dari bahasa pemrograman komputer yang sudah ada maka
kemudian Sun mengubahnya menjadi Java. Akhirnya setelah melalui
beberapa transformasi dan proses, Sun akhirnya meluncurkan
browser dan Java yang disebut Hot Java yang mampu menjalankan
applet.
Setelah itu teknologi Java diadopsi oleh Netscape yang
memungkinkan program Java dijalankan di browser Netscape sejak
Januari 1996 yang kemudian diikuti oleh Internet Explorer. Karena
keunikan dan kelebihannya, teknologi Java mulai menarik banyak
vendor terkemuka seperti IBM, Symantec, Inprise, dll.
Akhirnya Sun merilis versi awal Java secara resmi pada awal
1996 yang kemudian terus berkembang hingga muncul JDK 1.1
kemudian JDK 1.2 yang mengandung banyak peningkatan dan
perbaikan sehingga mulai versi ini Java disebut Java 2. Perubahan
yang utama adalah adanya Swing yang merupakan teknologi GUI
(Graphical User Interface) yang mampu menghasilkan aplikasi
window yang benar-benar portabel. Pada tahun-tahun berikutnya
(1998-1999) lahirlah teknologi J2EE (Java 2 Enterprise Edition)
yang berbasis J2SE yang diawali dengan servlet dan EJB kemudian
diikuti JSP. Kelebihan Java di lingkungan network dan terdistribusi
serta kemampuan multithreading mengakibatkan Java menjadi cepat
populer di lingkungan server side.
Terakhir teknologi Java melahirkan J2ME (Java 2 Micro
Edition) yang sudah diadopsi oleh Nokia, Siemens, SonyEricsson,
Motorola, Samsung untuk menghasilkan aplikasi mobile baik games
maupun software bisnis dan berbagai jenis software lain yang dapat
dijalankan di peralatan mobile seperti ponsel ( Rickyanto, 2003: 3).
3. Kelebihan Java
Mengapa Java sering dibicarakan dan memiliki daya tarik bagi
para programmer? Karena Java merupakan suatu teknologi yang
unik dan revolusioner dan merupakan teknologi pertama di dunia
software yang memiliki semboyan “write once, run anywhere”.
Semboyan tersebut telah terbukti karena banyak program Java dapat
dijalankan di berbagai platform Sistem Operasi, seperti Linux,
Windows maupun Unix.
Java telah mengatasi masalah portabilitas yang sering menjadi
kendala dan hambatan dalam pembuatan suatu aplikasi software.
Mengapa? Karena software developer harus mengeluarkan banyak
tenaga, pikiran dan waktu untuk menghasilkan aplikasi yang dapat
berjalan di operating system atau platform lain.
Java dapat mengatasi kendala tersebut karena program Java
dapat dijalankan secara langsung tanpa banyak perubahan berarti di
sistem operasi atau platform lain. Java juga didesain untuk
menghasilkan program dengan seminimal mungkin bug karena
kemampuan sebagai berikut:
a. Java didesain untuk menghilangkan alokasi memori dan dealokasi
memori secara manual. Java memiliki garbage collection
otomatis yang mencegah adanya memory leak. Memory leak
adalah masalah yang sering dihadapi programmer C dan C++ di
mana memori yang digunakan untuk objek atau variabel yang
sudah tidak digunakan tidak didealokasikan sehingga
menyebabkan kehabisan memori karena proses alokasi maupun
dealokasi yang tidak diatur dengan baik.
b. Java memiliki array yang tidak memerlukan pointer sehingga
memudahkan para programmer.
c. Java menghilangkan banyak kebingungan apabila terjadi proses
assignment (pemberian nilai) pada statemen kondisional seperti
ini : if (varnya=5)
Kode di atas menyebabkan program Java tidak dapat dikompilasi
karena Java membedakan tanda = yang digunakan untuk
pemberian nilai dan untuk pengecekan kondisi True atau False
yang harus menggunakan tanda = ganda (= =).
d. Java menghilangkan multiple inheritance pada C++ dan
menggunakan interface yang memiliki kemampuan yang sama
tetapi lebih sederhana( Rickyanto, 2003: 5).
4. Karakteristik Java
Secara singkat, karakteristik Java adalah:
a. Sederhana
Java tidak memiliki sintaks yang aneh tetapi banyak
menggunakan sintaks C++ yang sudah banyak dikenal sehingga
Java tidak menyulitkan bagi para programmer. Bahkan Java
memberikan banyak keunggulan dan kemudahan dibanding C++.
b. Berorientasi objek
Java merupakan pemrograman berorientasi objek yang murni.
Dalam pemrograman Java semua adalah objek, terkecuali tipe
data primitif.
c. Dapat didistribusikan dengan mudah
Sifat terdistribusi dari Java sangat tampak sebagai applet dan
library yang mampu bekerja dalam Jaringan dan bekerja dengan
objek terdistribusi (RMI) dengan sangat baik. Saat ini Java juga
memiliki kemampuan untuk server side processing, yaitu
teknologi Java Servlet dan Java Server Pages.
d. Aman
Aman karena program Java memiliki library security serta policy
yang membatasi akses applet di komputer client.
e. Diinterpretasi oleh interpreter
Java memerlukan virtual machine yang bertindak sebagai
interpreter yang menterjemahkan bytecode (file class) menjadi
bahasa mesin yang dimengerti oleh komputer host.
f. Portabel
Portabel karena Java dapat dijalankan di berbagai platform tanpa
perubahan kode sama sekali.
g. Multithreading
Java memiliki kemampuan untuk menangani dan menjalankan
banyak thread sekaligus.
h. Dinamis
Java merupakan teknologi yang terus berkembang, dan hal ini
tampak nyata sekali dengan library yang terus ditingkatkan
kemampuan dan kelengkapannya. Bahkan Java saat ini telah
menjadi teknologi handal untuk aplikasi mobile dengan adanya
Java 2 Micro Edition.
i. Netral terhadap arsitektur hardware
Java dapat dijalankan dengan baik pada komputer yang memiliki
arsitektur berbeda-beda.
j. Robust
Java merupakan teknologi yang mampu menolong programmer
untuk menghasilkan program secara cepat dan handal karena Java
mencegah adanya memory leaking, meniadakan pointer (yang
merupakan keharusan pada programmer C dan C++) serta
mencegah berbagai error yang mungkin terjadi dengan adanya
berbagai proses pengecekan awal pada kompilasi( Rickyanto,
2003: 6).
5. Java Saat ini
Saat ini setiap dapat ditemukan berbagai applet yang dapat
diakses di browser web, baik games, aplikasi bisnis maupun applet
untuk animasi dan interaktifitas. Walaupun berbagai aplikasi game,
animasi dan interaktifitas juga dapat dihasilkan oleh teknologi Flash,
tetapi applet Java tetap memiliki kelebihan dan kemampuan yang
tidak dimiliki oleh Flash sehingga applet Java masih banyak
digunakan di internet.
Untuk memberikan gambaran teknologi Java saat ini untuk
teknologi enterprise, yaitu J2EE, maka Anda dapat menemukan
bahwa IBM, Oracle telah mengadopsi teknologi ini secara besar-
besaran seperti yang terlihat pada implementasi dan pemanfaatan
Java dalam database dan software-software.
IBM memiliki application server WebSphere yang dibangun
dari teknologi Java. Oracle pun memiliki application server yang
menggunakan teknologi Java. Selain dari IBM, Oracle saat ini
memiliki puluhan application server dengan teknologi Java dan
berbagai vendor, di mana yang paling menguasai pasar saat itu
adalah BEA WebLogic yang telah mencapai versi 7.
Karena kelebihan Java yang menonjol adalah kemampuannya di
networking, multithreading, serta lingkungan terdistribusi maka Java
dalam waktu singkat menjadi bintang utama di pemrosesan server
side dan aplikasi enterprise.
Bahkan Web Service yang merupakan teknologi software, di
mana komponen-komponennya bekerja pada lingkungan terdistribusi
dan remote, juga dapat dihasilkan dengan menggunakan teknologi
Java. Selain aplikasi desktop, applet, dan J2EE, saat ini teknologi
Java, khususnya J2ME, sudah menghasilkan berbagai aplikasi dan
game di berbagai ponsel seperti Siemens SL45i, Siemens M50,
Nokia 7210, dan Nokia 7650. Berbagai tipe ponsel dan berbagai
vendor juga sudah menerapkan teknologi Java. Penggunaan Java
untuk kartu pintar (smart card) juga telah digunakan dan
dikembangkan oleh beberapa vendor ( Rickyanto, 2003: 8).
2.4.2 Variabel dan Tipe data
1. Definisi dan Jenis Variabel
Variabel adalah bagian dari program yang digunakan untuk
menyimpan data. Sebagai tempat menyimpan data, variabel harus
dideklarasikan, yaitu diberi tipe data, nama variabel, dan dapat juga
diberi nilai awal (inisial) (Hermawan, 2004: 51). Ada tujuh macam
variabel, yaitu:
a. Variabel Kelas
Adalah variabel yang dideklarasikan di dalam kelas dan diberi
modifier static. Sifat dari variabel static ini adalah melekat pada
kelas dan tidak terpengaruh oleh proses Instansiasi. Dengan
demikian, variabel ini tidak dapat dimiliki dan diakses oleh objek
yang diinstans dari kelas tersebut.
b. Variabel Instans (Instance)
Adalah variabel yang dideklarasikan di dalam kelas dan tidak
memiliki modifier static. Berbeda dengan variabel kelas, pada
proses instansiasi kelas menjadi objek, variabel Instans ini akan
ikut dimiliki dan dapat diakses oleh objek.
c. Komponen Array
Array adalah deretan variabel yang bertipe sama dan dianggap
sebagai suatu kelompok. Meskipun merupakan satu kelompok,
masing-masing anggotanya memiliki indeks, sehingga dapat
diakses secara sendiri-sendiri.
d. Parameter Method
Adalah variabel yang berfungsi sebagai argumen input. Variabel
ini memiliki life time hanya selama Interpreter memanggil dan
mengeksekusi method tersebut. Setelah proses eksekusi selesai,
variabel ini akan dihapuskan.
e. Parameter Konstruktor
Adalah nilai argumen yang dilewatkan pada konstruktor.
f. Parameter Exception Handler
Adalah variabel yang tercipta setiap kali Exception terjadi dan
ditangkap oleh catch pada blok try-catch.
g. Variabel Lokal dalam Blok
Adalah variabel yang dideklarasikan secara lokal untuk suatu
blok, misalnya variabel inisialisasi, terminasi dan increment pada
perulangan, serta variabel yang berada di dalam blok statement
tersebut. Mendeklarasikan variabel pada hakikatnya adalah
memberitahu Kompiler untuk mengalokasikan sejumlah blok
memory yang sesuai dengan tipe data yang akan digunakan. Pada
saat mendeklarasikan variabel, Anda memberi nama variabel
tersebut serta menentukan tipe datanya (Hermawan, 2004: 52).
Arab Unicode Arab Unicode
‫ا‬ u0627 ‫ق‬ u0642
‫ب‬ u0628 ‫ك‬ u0643
‫ت‬ u062A ‫ل‬ u0644
‫ث‬ u062B ‫م‬ u0645
‫ج‬ u062C ‫ن‬ u0646
‫ح‬ u0124 ‫و‬ u0648
‫خ‬ u062E u0647
‫د‬ u062F ‫ء‬ u0621
‫ذ‬ u0630 ‫ي‬ u064A
‫ر‬ u0631 َ u064E
‫ز‬ u0632 ِ u0650
‫س‬ u0633 ُ u064F
‫ش‬ u0634 ً u064B
‫ص‬ u0635 ٍ u064D
‫ض‬ u0636 ٌ u064C
‫ط‬ u0637 ‫ى‬ u0649
‫ظ‬ u0638 Ś u015A
‫ع‬ u0639 Ĥ u0124
‫غ‬ u063A ś u017B
‫ف‬ u0641 Ş u015E
‫ة‬ u0629 Ā u0100
Ukuran unit memory terkecil untuk menyimpan data adalah Byte.
Satu Byte sama dengan 8 bit, dan ini cukup untuk
merepresentasikan satu karakter data. Ditinjau dari cara
mengkodekan karakter, ada dua tipe data, masing-masing
dikeluarkan oleh asosiasi komputer internasional yang berbeda,
yaitu kode EBCDIC dan ASCII (Hermawan, 2004: 52).. Pada
umumnya tipe karakter data yang digunakan saat ini adalah
ASCII, walaupun Java mengenali sejumlah kumpulan karakter,
seperti ASCII, tapi Java menyukai Unicode. Seperti pada
Tabel 2.2 Unicode Arab
penelitian ini dalam pembacaan karakter Arab memakai Unicode
seperti pada Tabel 2.2.
2. Penamaan Variabel
Dalam menamakan suatu variabel, perlu diperhatikan aturan-
aturan sebagai berikut:
Aturan dasar itu bersifat harus diikuti adalah:
a. Dimulai dengan abjad (a,b,c,d,e...) atau karakter underscore ( _ )
atau tanda dollar ( $). Nama variabel tidak dapat dimulai dengan
bilangan (0,1,2...). Setelah karakter pertama, dapat diikuti
kombinasi abjad, underscore, dollar, atau bilangan.
b. Tidak boleh menggunakan reserved keyword dalam Java (public,
class, boolean,...).
c. Tidak boleh menggunakan operator (+, -,=).
d. Java bersifat case sensitive (membedakan huruf kecil dan kapital),
sehingga abjad “a” dan “A” diperlakukan sebagai dua variabel
yang berbeda.
Aturan Konvensi (bersifat boleh diikuti atau tidak) sebagai
berikut:
a. Apabila nama variabel hanya terdiri dari satu abjad atau satu kata,
maka semua abjad dituliskan sebagai huruf kecil.
Contoh: “A”, “x”, “warna”, “nama”.
b. Bila nama variabel terdiri dari dua kata atau lebih, kedua kata itu
digabungkan. Huruf pertama dari kata pertama sebaiknya huruf
kecil, sedangkan huruf pertama kata kedua dan kata berikutnya
sebaiknya huruf kapital. Contoh: “radiusLingkaran”,
“gajiKaryawan”
Bentuk Umum:
contoh:
int a; // variabel “a” sebagai tipe integer
double gajiKaryawan; // variabel “gajiKaryawan” sebagai
tipe double
String nama; // variabel “nama” sebagai tipe string
Deklarasi dapat dilakukan sekaligus sebagai satu statement dan di
antara variabel tersebut dipisahkan dengan koma untuk variabel-
variabel yang bertipe data sama (Hermawan, 2004: 53)..
3. Tipe data primitif
Java mengelompokkan tipe data primitif ke dalam tiga kategori:
tipe numerik, tipe karakter (juga disebut data alpanumerik), dan tipe
boolean. Masing-masing tipe ini melayani kegunaannya sendiri
dalam sebuah program Java.
Type data Range Ukuran Memory
(1Byte=8Bit)
byte െ2଻
(128) s/d 127 8-bit signed
short െ2ଵହ
(-32768) s/d 2ଵହ
(32767) 16-bit signed
int െ2ଷଵ
s/d 2ଷଵ
32-bit signed
long െ2଺ଷ
s/d 2଺ଷ
float െ3.4E38 s/d 3.4E38 32-bit IEEE 754
double െ1.7E308 s/d 1.7E308 64-bit IEEE 754
char singgel character, assign with
boolean true or false
Sebelum mendekati pemrograman Java yang kompleks, juga
harus punya konsep yang jelas terhadap ketiga kategori data Java,
dan pada tipe spesifik masing-masing.
tipedata namaVariabel
Tabel 2.3 Tipe data di
Java
a. Data numerik
Banyak aplikasi Java menjalankan pengolahan sejumlah
besar data penting. Karenanya, topik-topik yang berhubungan
dengan penyimpanan dan manipulasi data numerik adalah
penting. Digunakan data numerik untuk melakukan operasi dan
perhitungan matematis. Dalam data numerik, simbol bilangan
menyatakan kuantitas. Konsep ini mengecualikan penggunaan
bilangan sebagai designator, sebagai contoh, nomor telepon atau
nomor keamanan sosial.
Data numerik tampak dalam kode Java dalam bentuk variabel
atau konstanta. Selain itu, Anda bisa memasukkan data numerik
secara eksplisit dalam sebuah operasi. Dalam tabel tipe data, data
numerik digolongkan ke dalam tipe integral dan tipe titik-
mengambang. Kadang memanggil tipe titik-mengambang real.
Setiap tipe data sesuai dengan kategori bilangan; sebagai
contoh, Anda bisa menggunakan tipe data integer untuk
menyatakan seluruh bilangan, dan tipe data titik-mengambang
untuk menyajikan pecahan. Untuk setiap tipe data, Java
menyediakan sejumlah penyebut tipe yang menentukan
karakteristik dan kisaran nilai-nilai yang bisa ditampilkan
(Sanchez, 2002: 59).
b. Data karakter
Data karakter (alpanumerik) mengacu pada item-item yang
bertindak sebagai designator. Siapa saja menggunakan huruf
alpabet dan simbol numerik lain sebagai designator. Juga, simbol
numerik murni adalah sah dalam data alpanumerik. Demikian
pula dengan nomor telepon, alamat jalan, kode zip, nomor
keamanan sosial, banyak designator lainnya.
Dalam Java, data alpanumerik dimiliki oleh tipe data Char
atau kelas String. Java menganggap data Char sebagai sebuah
integer tak-berlambang 16-bit, dengan nilai dalam kisaran 0
sampai 65.535, atau sebagai sebuah karakter Unicode tunggal. Ini
artinya char dapat digunakan sebagai tipe data untuk menyajikan
integer tidak-berlambang dalam kisaran 0 sampai 65.535, dan ia
mendukung aritmatika dasar pada nilai-nilai ini. Biasanya lebih
disukai menggunakan tipe data numerik untuk keperluan ini dan
membiarkan tipe Char untuk data alpanumerik. Dalam
pendeklarasian obyek-obyek String seperti dibawah ini:
String aCity = “Malang”;
c. Data boolean
Penggolongan tipe data ketiga dari bahasa Java adalah
boolean, yang direpresentasikan tipe data tunggal, juga disebut
boolean. Tipe data boolean mengambil namanya dari ahli logika
Inggris George Boole yang pada abad ke sembilan belas,
mengemukakan hubungan antara matematika dan logika.
Variabel boolean berisi dua nilai: benar dan salah. diketik
nilai-nilai ini dalam huruf kecil. Umumnya, variabel boolean
mewakili elemen program yang menunjukkan validitas
pernyataan atau proposisi. Bahwa mendeklarasikan dan
menginisialisasi sama dengan alphanumerik(Sanchez, 2002: 60).
Seperti contoh:
boolean switchlsOn = true;
2.4.3 Operator
Operator Java merupakan karakter khusus yang berupa simbol atau
tanda yang memerintahkan compiler untuk melakukan berbagai operasi
terhadap sejumlah operand. Perintah operasi dispesifikasikan oleh
operator, dimana operand-nya adalah variabel, pernyataan, atau besaran
literal.
Operator yang dibahas pada bagian ini adalah operator aritmatika,
increment dan decrement, assignment (penugasan), relasi, logical, dan
bitwise.
1. Operator Aritmatika
Operator Penggunaan Deskripsi
+ Op1 + Op2 Menambahkan Op1 dengan Op2
- Op1 – Op2 Mengurangkan Op1 dengan Op2
* Op1 * Op2 Mengalikan Op1 dengan Op2
/ Op1 / Op2 Membagi Op1 dengan Op2
% Op1 % Op2
Menghasilkan sisa hasil bagi Op1
dengan Op2
Ket: Op adalah operand
Tabel 2.4 Operator Aritmatika
Sama halnya dengan semua bahasa pemrograman, Java
menyediakan operator-operator aritmatika untuk manipulasi variabel
data numerik.
2. Operator Increment dan Decrement
Operator Increment dan Decrement digunakan untuk menaikan
atau menurunkan suatu nilai integer (bilangan bulat) sebanyak satu
satuan, dan hanya dapat digunakan pada variabel. Ada dua versi
operator increment maupun decrement, yaitu prefix dan postfix.
Prefix berarti operator digunakan sebelum variabel atau ekspresi, dan
postfix berarti operator digunakan sesudahnya.
Operator Penggunaan Deskripsi
++ Op++
Op dinaikkan nilainya 1 setelah
dilakukan operasi pada Op
++Op
Op dinaikkan nilainya 1 sebelum
dilakukan operasi pada Op
-- Op--
Op diturunkan nilainya 1 setelah
dilakukan operasi pada Op
--Op
Op diturunkan nilainya 1 sebelum
dilakukan operasi pada Op
3. Operator Assignment ( Penugasan )
Operator assignment dalam Java digunakan untuk memberikan
sebuah nilai ke sebuah variabel. Operator assignment hanya berupa
‘=’, namun selain itu dalam Java dikenal beberapa shortcut
assignment operator yang penting, yang digambarkan dalam tabel
2.6 berikut :
Tabel 2.5 Increment dan Decrement
Operator Penggunaan Deskripsi
+= Op1 += Op2 Op1 = Op1 + Op2
-= Op1 -= Op2 Op1 = Op1 – Op2
*= Op1 *= Op2 Op1 = Op1 * Op2
/= Op1 /= Op2 Op1 = Op1 / Op2
%= Op1 %= Op2 Op1 = Op1 % Op2
&= Op1 &= Op2 Op1 = Op1 & Op2
¦= Op1 ¦= Op2 Op1 = Op1 ¦ Op2
^= Op1 ^= Op2 Op1 = Op1 ^ Op2
<<= Op1 <<= Op2 Op1 = Op1 << Op2
>>= Op1 >>= Op2 Op1 = Op1 >> Op2
>>>= Op1 >>>= Op2 Op1 = Op1 >>> Op2
4. Operator relasi
Operator relasi dalam Java digunakan untuk menghasilkan nilai
boolean yang sering digunakan untuk mengatur alur jalannya sebuah
program.
Operator Penggunaan Deskripsi
> Op1 > Op2
Menghasilkan true jika Op1 lebih
besar dari Op2
< Op1 < Op2
Menghasilkan true jika Op1 lebih
kecil dari Op2
>= Op1 >= Op2
Menghasilkan true jika Op1 lebih
besar atau sama dengan Op2
<= Op1 <= Op2
Menghasilkan true jika Op1 lebih
kecil atau sama dengan Op2
== Op1 == Op2
Menghasilkan true jika Op1 sama
dengan Op2
!= Op1 != Op2
Menghasilkan true jika Op1 tidak
sama dengan Op2
Tabel 2.6 Assignment ( Penugasan )
Tabel 2.7 Operator relasi
5. Operator Logical
A B A ¦¦ B A && B
True True True True
True False True False
False True True False
False False False False
Operator ini digunakan untuk ekspresi logik yang menghasilkan
nilai boolean. Operator-operator yang digunakan adalah AND ( &&
), OR ( ¦ ¦ ) dan NOT ( ! ).
6. Operator Bitwise
Operator ini dalam Java digunakan untuk melakukan manipulasi
bit.
Operator Penggunaan Deskripsi
& Op1 & Op2 Bitwise AND
¦ Op1 ¦ Op2 Bitwise OR
^ Op1 ^ Op2 Bitwise XOR
~ ~Op Bitwise Complement
<< Op1 << Op2
Menggeser bit Op1 ke kiri sejauh
Op2
>> Op1 >> Op2
Menggeser bit Op1 ke kanan sejauh
Op2
>>> Op1 >>> Op2
Geser kanan tanpa mempertahankan
sign (dengan nilai 0 sebagai pengisi
bit paling kiri)
Tabel 2.8 Operator Logical
Tabel 2.9 Operator Bitwise
7. Operator Penghubung
Dalam operator ini bisa digunakan operator +, yang digunakan
dalam operator Aritmatika, untuk menyambung string-string. Istilah
concatenation (pennyambungan) berasal dari kata latin “catena”,
yang artinya rantai. Sesuai dengan aslinya, untuk menyambung
string adalah merantai mereka bersama. Potongan kode berikut
diperlihatkan aksi operator ini(Sanchez, 2002: 83):
String str1=”con”;
String str2=”ca”;
String str3=”ten”;
String str4=”ate”;
String hasil= str1 + str2 + str3 + str4
// hasil=”concatenate”
2.4.4 String
String adalah deretan karakter. Pada bahasa pemrograman lain,
string dianggap sebagai array dari karakter. Namun dalam Java, string
diberlakukan sebagai suatu objek(Hermawan, 2004: 132). Dapat
dipelajari mengenai kelas dan objek melalui penggunaan string karena
string merupakan class yang terdapat dalam library Java(Rickyanto,
2003: 113). Berikut beberapa method yang digunakan dalam peneitian
ini.
1. Membuat dan menginisialisasi String
Ada dua cara membuat dan menginisialisasi objek string, yaitu:
a. Mendeklarasikan string sebagaimana literal tipe data primitif,
yaitu serangkaian karakter dalam suatu penggalan program yang
diapit oleh kutip ganda. Kapanpun ditemukan string literal dalam
program, maka kompiler akan membentuk objek String dengan
nilai yang terkandung didalamnya, seperti contoh:
String salam = “Selamat Pagi”;
b. Membuat objek string dengan operator new dan menugaskan
Gunakan sintaks berikut untuk membentuk objek string dan kelas
ini.
String namaString = new String(”deretan karakter”);
Contoh:
String salam = new String(”Selamat Pagi”);
Cara pertama merupakan perlakuan istimewa Java kepada String.
Mengapa? Karena bentuk tersebut menganggap string sebagai
suatu tipe data, sebagaimana layaknya tipe data primitif lainnya,
seperti byte, short, int, char, boolean, dan sebagainya. Padahal,
String dalam Java merupakan suatu kelas sehingga bila mengikuti
kaidah pembentukan objek dan suatu kelas. maka hanya bentuk
kedualah sebagai cara membuat objek String. Bentuk pertama
merupakan akomodasi atau toleransi Java karena pada bahasa
pemrograman lainnya, seperti Pascal atau C/C++; string dianggap
sebagai suatu tipe data(Hermawan, 2004: 134).
2. Membaca karakter secara individu dalam String
Ada dua method yang sering digunakan untuk membaca
karakter yang menyusun suatu string secara individir, yaitu:
a. int length()
Method ini akan mengembalikan jumlah karakter dalam suatu
string. Digunakan untuk menentukan batas akhir dan indeks yang
akan dipakai sebagai penunjuk posisi pada method charAt(int
index).
b. char charAt(int index)
Membaca satu karakter pada suatu posisi yang ditunjukkan
oleh indeks dalam string memiliki indeks = 0 dan karakter
terakhir memiliki indeks = jumlah karakter pembentuk string.-1
atau objekString.length() – 1(Hermawan, 2004: 135).
3. Mencari karakter dan substring
Method di bawah ini berguna untuk mencari indeks dan suatu
karakter atau indeks awal dan suatu substring dalam suatu String.
Mekanisme pencarian adalah dengan mencari karakter yang
dimaksud secara maju (forward) dan awal sampai akhir string. Bila
pencarian gagal (tidak ditemukan), maka method akan
mengembalikan nilai -1.
a. int indexOf (int ch)
Mengembalikan - nilai indeks dan karakter pertama yang
berhasil ditemukan berdasarkan suatu argumen karakter
(Hermawan, 2004: 143).
2.4.5 Kondisi if
Pada penelitian ini digunakan seleksi if untuk memeriksa apakah
suatu variabel atau ekspresi memenuhi persyaratan suatu kondisi.
Seleksi if menggunakan ekspresi boolean untuk menentukan
apakah suatu statement atau blok statement akan dieksekusi atau tidak.
Bila variabel atau ekspresi memenuhi persyaratan kondisi, maka seleksi
akan bernilai “benar”, dan kemudian statement atau blok statement
yang menyertai if tersebut akan dieksekusi, untuk flowchart if terdapat
dalam gambar 2.3 (Hermawan, 2004: 88).
1. Bentuk if…else
Terkadang selain menentukan aksi apa saja yang akan dilakukan
bila suatu kondisi terpenuhi, juga ingin menetapkan konsekuensi-
konsekuensi yang terjadi bila kondisi itu gagal dipenuhi.
true
falseKondisi
pengujian
If
Statement
Statement
Gambar 2.3 Flowchart if
Dibutuhkan tambahan keyword else sebagai pelengkap if untuk
menambahkan konsekuensi ini, sehingga disebut juga bentuk
if…else. Sama dengan if, else juga hanya akan mengeksekusi
sebanyak satu statement yang terletak persis di bawahnya.
Dibutuhkan blok setelah deklarasi else untuk mengeksekusi sejumlah
statement. Bila terdapat beberapa kemungkinan konsekuensi
(multiple condition), setelah suatu if…else dapat menambahkan if…
else yang lainnya(Hermawan, 2004: 90).
Gambar 2.4 Flowchart If..else
Kondisi
pengujian
If
Statement
Statement
Statement untuk
false (else)
Salah / False
Benar / True
2. Bentuk if atau if…else bersarang (nested if…else)
Selain bentuk tunggal if atau if… else serta mutlitple condition
if…else yang telah dibahas sebelumnya, siapa saja juga
diperbolehkan untuk membuat if atau if…else yang bersarang.
Maksudnya if atau if…else itu dapat ditempatkan sebagai suatu
blok seleksi di dalam blok if atau if. . else yang lain.
Bila pada bentuk multiple if. . else kedudukan masing-masing
if…else adalah sederajat, namun pada nested if…else,
kedudukannya adalah bertingkat. Kondisi if…else tingkat pertama
akan menyeleksi variabel atau objek untuk pertama kali, dan bila
lulus, maka variabel atau objek itu akan menghadapi seleksi
if…else tahap kedua, bila lulus lagi ke seleksi if…else ketiga, dan
seterusnya.
Proses seleksi seperti ini ditemui pada kasus misalnya seleksi
penerimaan pegawai baru. Seleksi tahap pertama merupakan tes
tulis dan psikotes, bila lulus, pelamar harus menghadapi seleksi
wawancara, dan bila lulus lagi, ia akan menghadapi tes
kesehatan(Hermawan, 2004: 93).
2.4.6 Perulangan for
Bentuk ini adalah yang paling sering digunakan. for akan
mengulang suatu statement atau blok statement sejumlah yang
dikehendaki, yakni bila kondisi akhir telah tercapai.
Bentuk umum :
Dari bentuk di atas, terdapat tiga bagian dalam deklarasi for, yakni
kondisi awal, akhir, dan banyaknya increment.dan flowchart untuk for
adalah sebagaimana dalam gambar 2.5(Hermawan, 2004: 97).
1. Kondisi awal
Adalah bagian yang menginisialisasi permulaan dari
perulangan. Umumnya dalam perulangan,diperlukan suatu variabel
yang berfungsi sebagai indeks perulangan. Indeks ini akan
memiliki tiga fungsi, yakni sebagai kondisi awal sebelum loop
dieksekusi, sebagai kondisi akhir yang akan dicapai, serta beberapa
jumlah kenaikan (increment) untuk setiap langkah perulangan.
Ambil contoh, digunakan variabel i sebagai indeks loop.
Sebelum loop dieksekusi, harus menginisialisasi variabel i ini
dengan nilai awal, misalnya int i = 0. Bila terdapat lebih dari satu
variabel indeks, dapat di inisialisasi secara bersamaan dan di antara
masing-masing variabel dipisahkan dengan koma, misalnya: int i =
0, int k = 0. Sebagai catatan, variabel yang dideklarasikan sebagai
indeks perulangan ini hanya berlaku di dalam scope perulangan itu
sendiri, jadi tidak akan mengganggu variabel lain yang berada di
luar scope. Begitu perulangan tersebut selesai dieksekusi, maka
variabel indeks akan berakhir masa tugasnya.
for (kondisi awal; persyaratan atau kondisi akhir; increment) {
blok statement;
}
2. Persyaratan atau Kondisi akhir
Adalah bagian yang akan menyebabkan interpreter
menghentikan perulangan karena telah tercapai suatu kondisi akhir.
Kondisi akhir ini dapat berupa suatu nilai boolean, yaitu: benar atau
salah atau merupakan fungsi yang bisa menghasilkan nilai logika
Gambar 2.5 Flowchart For
Inisialisasi
Counter
Apakah
counter masih
belum
melewati
batas ?
Statement setelah
loop body untuk
setiap perulangan
Statement setelah
loop body untuk
setiap perulangan
Statement berikutnya
true
false
boolean. Bila benar, maka perulangan akan terus dilaksanakan dan
bila salah, maka dihentikan. Contohnya: i <5.
3. Increment
Adalah bagian yang menunjukkan berapa jumlah kenaikan
untuk setiap langkah perulangan. Misalnya i = i +1 atau yang biasa
disingkat sebagai i++ akan menyebabkan variabel indeks
perulangan ditambah satu(Hermawan, 2004: 98).
BAB III
PERANCANGAN DAN DESAIN SISTEM
3.1 Materi Penelitian
Pada bab ini yang harus terlebih dahulu dipahami beberapa materi,
dalam hal ini materi yang digunakan dalam penelitian adalah :
1. Literasi
2. Algoritma
3. Operasi concatenation (penyambungan)
4. Bahasa pemrograman java
Dari beberapa materi diatas harus dibaca dan dipahami, serta mengerti
apa itu literasi, algoritma, operasi concatenation, dan bahasa pemrograman
java. Dan aturan main yang ada didalamnya.
3.2 Alat Penelitian
3.2.1 Kebutuhan Hadware
Mulai tahap penelitian sampai dengan tahap implementasi dalam
sebuah rancangan program literasi Arab-Latin menggunakan perangkat
komputer dengan spesifikasi sebagai berikut :
Hardware :
a. Processor intel (R) 1.60 GHz.
b. Memory 512 MB.
c. VGA 64 MB
d. Hardisk 160 GB.
e. Mouse, Keyboard, dan Monitor.
3.2.2 Kebutuhan Software
Adapun untuk kebutuhan software mulai tahap penelitian sampai
tahap implementasi dari program Literasi Arab-Latin. Menggunakan
beberapa software sebagai berikut:
Software :
a. Operating System Windows XP Service pack 2
b. jdk.1.5.0.
c. JCreator
d. Microsoft Word 2007.
3.3 Tahap – Tahap Pembangunan Sistem
Tahap tahap yang dilakukan dalam penelitian ini adalah:
1.Fase Analisis
a. Studi literature
Langkah ini dilakukan dengan tujuan untuk mendapatkan referensi yang
akan digunakan dalam pembahasan permasalahan sehingga dapat
dibangun suatu konsep literasi Arab - latin.
b. Penerapan algoritma
Pada langkah ini diterapkan algoritma literasi sederhana pada software
literasi dengan pendekatan concatenation (penyambungan).
2. Fase Desain
a. Desain output
Desain awal yang digunakan untuk memperkirakan yang dihasilkan dari
masalah yang diangkat.
b. Desain input
Dari desain hasil, dapat ditentukan apa saja yang dibutuhkan untuk
didapat hasil yang diinginkan.
c. Desain proses
Setelah desain output dan input selesai, baru dilakukan desain untuk
prosess digambarkan dengan diagram blok.
d. Desain inteface
Setelah semua selesai baru dibuat desain tampilan aplikasi.
3.4 Rancangan Program
Aliran dalam diagram blok memodelkan masukan ke sistem dan
keluaran dari sistem. Penjelasan diagram konteks software aplikasi literasi
arab - latin dengan menggunakan pendekatan operasi concatenation adalah
sebagai berikut :
1. Input ; masukan
sebuah/lebih karakter Arab.
2. Algoritma literasi; pemilihan karakter Arab dibaca per-karakter dan di
literasikan ke dalam huruf latin.
Gambar 3.1 Diagram blok
Input
Algoritma Literasi
Operasi Concatenation
Output
3. Operasi concatenation ; hasil dari pada algoritma literasi yang berupa
huruf latin, setelah itu dilakukan operasi concatenation.
4. Output ; keluarannya berupa karakter latin.
Algoritma literasi merupakan proses pembacaan yang dimulai dari huruf
pertama, dalam hal ini adalah huruf Arab dari array dengan indeks nomor
1 sampai data ke N. Berikut ini algoritma literasi :
3.5 Proses Literasi
Pada proses literasi ini diperlukan proses algoritma literasi dari
huruf Arab ke huruf latin dan seperti contoh dibawah ini :
Input karakter Arab : ُ َ ُ
Pembacaan karakter : ‫م‬ / ُ / ‫ح‬ / َ / ‫م‬ / ّ / َ / ‫د‬ / ُ
Huruf target : M/U/H/A/M/M/A/D/U
Operasi concatenation: M+U+H+A+M+M+A+D+U
Output : MUHAMMADU
Dari gambaran diatas dapat dijelaskan bahwa mulai dari input
huruf arab setelah itu, dibaca karakter satu persatu setelah itu diliterasikan
ke huruf latin dan dilanjutkan pada operasi concatenation dan dihasilkan
N: integer = (huruf arab,huruf Latin)…N {jumlah pasangan huruf
Arab-Latin sampai ke N}
A= array[1….N] of integer
I,baca: integer
Algoritma
Input (baca){meminta nilai data yang akan dibaca}
I 1 {indeks array dimulai dari 1}
While(I<N) and (A[I]=baca) do
I I+1 {menaikkan nilai indeks }
End while
If A[I]=baca then
Output(huruf latin)
Else Output(input salah)
End if
output huruf latin. Lebih detailnya proses literasi dijelaskan pada flowcart.
Dimisalkan pada proses literasi diatas adalah input huruf Arab dimisalkan
X ,mulai dari ܺଵ, ܺଶ…… ܺ௠ିଵ ܺ௠,… ܺ௠ merupakan karakter Arab dan
output karakter Latin dimisalkan Y mulai dari ܻଵ, ܻଶ…… ܻ௡ିଵ ܻ௡,… ܻ௡
merupakan huruf Latin.
Concatenation dalam Java untuk penggabungan String atau Char
ini dideskripsikan dengan dua bentuk yaitu, concat dan operator
penjumlahan. seperti contoh:
Dengan concat : Str1.concat(str2)
Dengan penjumlahan : Str3=Str1+Str2
3.6 Flowcart
Dari contoh proses literasi dapat digambarkan Flowchart literasi
menjelaskan mengenai langkah-langkah proses literasi yang terjadi di dalam
Aplikasi Literasi Arab - Latin. yang digambarkan pada gambar 3.2.
Pada flowchart proses literasi pada gambar 3.2 yang dilakukan
adalah di inisialisasikan input, output dan perulangannya. Input karakter
Arab dimisalkan X , mulai dari ܺଵ, ܺଶ…… ܺ௠ merupakan karakter Arab,
output huruf latinY, mulai dari ܻଵ, ܻଶ…… ܻ௡ merupakan karakter Latin.
Sehingga langkah – langkah yang ditempuh sebagai berikut:
1. Input, Dalam langkah ini perlu dideklarasikan antara input dan output
yang akan diperoleh.
2. Decision, dimana pada saat desision dilakukan pembacaan input sehingga
dapat menghasilkan output yang diinginkan.
3. Operasi concatenation
4. Output, merupakan hasil yang akan diperoleh.
ya
tidak
ya
mulai
selesai
ܺଵ Output = ܻଵ
chartAt
(i)=062
Output=”B
tidak
Output=Input salah
Tampilkan :
Output
Inisialisasi
Input output dan
perulangan
ya
ܺ௠ Output=ܻ௡
tidak
1
ܺଶ Output=ܻଶ
ܻଵ൅ܻଶ … ൅ ܻ௡
Operasi Concatination
Gambar 3.2 Flowchart literasi
3.7 Implementasi
Tahap implementasi algoritma literasi Arab-Latin merupakan
tahapan untuk meletakkan algoritma supaya siap untuk dioperasikan. Pada
tahapan ini aktivitas yang dilakukan yaitu :
1. Instalasi software
Proses pemasangan hardware dan instalasi software yang sudah
ada. Dalam penelitian ini tahap Instalasi hardware dan software
dilakukan.
2. Implementasi Algoritma literasi
Pada gambar flowchart algoritma literasi yang akan
diimplementasikan kedalam bahasa pemrograman Java, dan dijelaskan
langkah-langkah sebagai berikut:
2
ya
Output=”Xn”
tidak
Xm dan
Xm-1
Output=””
1
Gambar 3.3 Sambungan Flowchart literasi
1. Inisialisasi, adalah menginisialisasikan tipe data yang digunakan,
dikarenakan input dan output tipe datanya berupa string yang dimana
string merupakan deretan karakter, dan diperlukan juga pembacaan
secara individu.
Gambar 3.4 Flowchart Literasi di Java
ya
tidak
ya
mulai
selesai
chartAt
(i)=0627
Output=””
tidak
Output=Input salah
Tampilkan :
Output
TArea Input, TArea
output;
String Hasil, output,
temp;
int i=0;
i<hasil.length(); i++
yachartAt
(i)=Xi
Output=Ym
tidak
1
chartAt
(i)=0628
Output=”B”
Operasi Concatenation
2. Perulangan, dikarenakan pembacaan dalam suatu string itu secara
individu atau perkarakter maka digunakan variabel i sebagai indeks
loop (perulangan).
3. Kondisi Pengujian, memeriksa suatu variabel i untuk memenuhi
persyaratan suatu kondisi, bila variabel i bernilai memenuhi
persyaratan kondisi, maka seleksi bernilai benar maka statement
akan di eksekusi. Variabel disini digunakan untuk pembacaan
perkarakter apabila misal, chartAt (i) sama dengan huruf alif, maka
output sama dengan null. Apabila pemeriksaan tidak memenuhi
peryaratan maka akan dilanjutkan ke pemeriksaan berikutnya.
4. Proses concatenation, setelah dihasilkan output perkarakter maka
pada proses ini operasi concatenation diproses setelah itu akan
ditampilkan.
2
ya
Output=”Ô
tidak
chartAt (i)=0627
(i-1)=064E
Output=””
1
Gambar 3.5 Sambungan Flowchart literasi di Java
Pada gambar 3.5 dijelaskan dimana pada saat variabel i=Alif dan
i-1=fathah ini memerlukan kondisi if yang tersarang dimaksudkan ada
dua atau beberapa persyaratan dalam pemeriksaan suatu kondisi, agar
output yang dihasilkan huruf”Ā”.
3. desain antarmuka
Di dalam desain antarmuka,berikut akan dijelaskan pembangunan
komponen-komponen yang ada dalam Aplikasi Literasi Arab-Latin
beserta source code yang digunakan dalam desain formnya.
1. frame
Frame ini dibangun oleh JFrame yang merupakan komponen
top level container dan dilengkapi dengan border, title bar, dan
memiliki fungsi sebagai managemen window, yang digunakan untuk
membangun window aplikasi. Langkah-langkah beserta sourcecode
adalah sebagai berikut :
import java.io.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.JTextArea.*;
public class Tampilan
{ public static void main(String args[])
{
// Script membuat frame
JFrame frame=new JFrame("Transliterasi Arab-
Latin v.0.1");
// Script untuk ukuran window lebar 450 tinggi 400
frame.setSize(450,400);
// Script Untuk menampilkan frame window:
frame.setVisible(true);
// Script untuk keluar dan program
Langkah – langkahnya:
1. Import paket GUI javax.swing.*, java.awt.*, java.awt.event.*
2. Membuat class Window.
3. Menampilkan Window.
2. Menu
Menu merupakan komponen yang berupa grup fungsi
pemroses yang berkaitan dengan fitur-fitur dan suatu aplikasi.
Perhatikanlah menu yang terdapat pada saat Anda mengetik dengan
Microsoft Word. Pada bagian atas dan MS Word, terdapat menubar
yang berisi objek-objek menu File, Edit, View, Insert, dan
sebagainya. Di dalam masing-masing menu tersebut terkandung sub
menu lainnya, seperti dalam File terdapat New, Open Close, Save,
Save As, dan sebagainya.
Kelas JMenuBar mengimplementasikan bar yang di dalamnya
terdapat objek-objek menu yang bersifat pull down (dapat ditekan).
Kelas JMenultem digunakan untuk menyusun item menu yang
berupa teks text / label, termasuk membuat shortcut dan tombol-
tombol keyboard. Kelas JMenu digunakan untuk menginstans objek-
objek pull down menu yang akan ditaruh pada menu bar. Untuk
sourcecode menu yang lebih detail dalam implementasinya terdapat
pada gambar.
3. Label
Adalah komponen yang digunakan untuk memberi nama
komponen lainnya. Label bisa berupa text atau gambar. Dalam Java,
label merupakan objek yang diinstans dari kelas JLabel. Dimasalkan
dalam aplikasi ini label yang berupa text seperti ; Tulisn Arab,
Lietasi Latin, By Iqbal. Lebih detailnya untuk pembuatan label
dijelaskan pada sourcecode dibawah ini:
//membuat Tulisan Arab
JLabel label=new JLabel("Tulisan Arab :");
//membentuk font ukuran 14,tebal,jenis font bertipe Arial
label.setFont (new Font("Arial",Font.BOLD,12));
//membuat Literasi Latin
JLabel label1=new JLabel("Literasi Latin :");
label1.setFont (new Font("Arial",Font.BOLD,12));
//membuat By Iqbal
JLabel label2=new JLabel("By: Iqbal ");
label2.setFont (new Font("Monotype
Corsiva",Font.BOLD,16));
//membuat menu bar
JMenuBar menu=new JMenuBar();
frame.setJMenuBar(menu);
//membuat menu bar
JMenu submenu=new JMenu("Menu");
submenu.setMnemonic('M');
//Membuat item-item menu dan menambahkannya ke dalam menu.
Ada dua hal yang harus ditambahkan ke dalam menu, yaitu: Menu
ltem dan Separator
JMenuItem TabelLiterasi=new JMenuItem ("Tabel
literasi",'T');
JMenuItem Keyboard=new JMenuItem ("Gambar Keyboard
arabic ",'B');
JMenuItem Exit=new JMenuItem ("Exit",'E');
4. Text Area
Komponen ini digunakan oleh user untuk menuliskan kalimat
paragraf, atau tulisan yang panjang, seperti halnya pada notepad atau
wordpad.dan pada aplikasi literasi Arab-Latin ini digunakan untuk
menampilkan input dan output dari program.untuk lebih jelasnya
terdapat dalam sourcecode dibawah ini :
5. Scrolling Pane
Komponen ini merupakan komponen scroll pada TextArea
yang memiliki fungsi untuk scroll kearah horizontal atau vertical dan
pada aplikasi literasi Arab-Latin ini digunakan untuk melihat
kalimat, atau tulisan yang tidak kelihatan,.untuk lebih jelasnya
terdapat dalam sourcecode dibawah ini :
//Membuat bentuk text area scroll vertical dan horizontal
JScrollPane scroll = new JScrollPane(TAreaInput,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS)
;
//membuat TextArea input
final JTextArea TAreaInput = new JTextArea();
//untuk mengeset font yang ditampilkan
TAreaInput.setFont(new Font("Arial",Font.BOLD,24));
//untuk mengeset otomatis kebaris berikutnya
TAreaInput.setLineWrap(true);
6. Button
Komponen ini diinstans dari kelas JButton dan akan
menstimulasi action event bila di-klik oleh user. JButton ini
memiliki beberapa properties sebagai berikut:
a. Text
Adalah label nama pada button, misalnya Klik, OK, Cancel,
Dibutuhkan method setText() untuk menugaskan text.
buttonl.setText(”Klik”);
b. Icon
Icon adalah gambar berukuran kecil yang digunakan untuk melapisi
button, sehingga tampak lebih menarik dibandingkan dengan button
standard. Pada penambahan icon, terlebih dahulu Anda membuat
objek icon yang diinstans dan kelas Imagelcon. Setelah itu, Anda
men assign icon ke button dengan method setIcon( ), prosesnya
adalah:
Icon icon1 = new ImageIcon(”gambar.gif”);
buttonl.setIcon (icon1);
Perlu diketahui, kelas Imagelcon dalam Java hanya men-suppor
format gambar, yaitu: .gif, .jpeg, dan .png. Bila format file gambar
yang Anda memiliki bukan salah satu dan tipe tersebut, maka Anda
harus mengkonversinya terlebih dahulu.
c. Mnemonic
Digunakan bila Anda ingin membuat shortcut untuk suatu button,
Shortcut ini berupa tombol ALT dan mnemonic sehingga Anda bisa
mengaktifkan button tersebut tanpa harus mengkliknya. Method
yang diperlukan adalah setMnemonic ( ).
buttonl.setMnemonic(”K”);
Yang berikutnya adalah desain tambahan gambar Tabel Pedoman
literasi, Desain ini yang berupa gambar tabel pedoman literasi
Arab-Latin yang diharapkan user dapat melihat standarisasi output
yang akan dihasilkan oleh program. Berikut sourcecode yang
digunakan dalam membangun tampilan tersebut:
Desain form gambar keyboard, Desain ini berupa gambar keybord
diharapkan user dengan mudah untuk memberikan input, itu
dikarenakan Aplikasi ini hanya dapat inputan dari keyboard.
//Membuat button dengan text Transliterasi
JButton ButtonT = new JButton("Transliterasi");
ButtonT.setMnemonic('T');
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
public class TabelLiterasi extends JFrame{
JLabel picture = new JLabel(new
ImageIcon("TabelLit.jpg"));
TabelLiterasi()
{
tampilan();
}
void tampilan(){
picture.setPreferredSize(new Dimension(450,400));
setTitle("Tabel Pedoman Literasi");
setLocation(460,0);
setSize(300,450);
getContentPane().add(picture);
setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
setVisible(true);
}
}
Berikut sourcecode yang digunakan dalam membangun tampilan
tersebut:
3.Pengetesan program
Dalam pemrograman kegiatan yang dilakukan adalah penulisan
source code terutama dalam hal ini bahasa pemrograman yang digunakan
bahasa pemrograman Java, maka harus diperhatikan alur compiler dan
eksekusi program java, gambaran alur tersebut pada gambar 3.6.
Berbeda dengan kompiler maupun interpreter yang selama ini
dipakai, pada Java hasil akhir kompilasi adalah file yang berformat
*.class. File mi selanjutnya akan diterjemahkan oleh Java Interpreter.
Bila pada kompiler C/C++, Visual Basic, atau Delphi dibuat suatu file
yang dapat dieksekusi (executable file) yang berformat *.exe, namun
pada Java tidak dapat membuat format file tersebut. Hal tersebut karena
Java difokuskan untuk aplikasi yang berbasis terdistribusi yang dapat
diaktifkan melalui jaringan atau internet. File *.exe tidak dapat dipanggil
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
public class Pedoman extends JFrame{
JLabel picture = new JLabel(new
ImageIcon("Gbkey.jpg"));
Keyboard()
{
tampilan();
}
void tampilan(){
picture.setPreferredSize(new Dimension(450,400));
setTitle("Gambar Keyboard Arab");
setLocation(460,0);
setSize(500,400);
getContentPane().add(picture);
setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
setVisible(true);
}
}
oleh suatu browser, sebaliknya file *.class dapat dijalankan oleh browser
atau melalui applet viewer(Hermawan, 2004:21).
Mengedit Source Code
File Source Code :
Source. java
Mengkompile Program :
C: path_sourcejavac source. java
Bila masih ada error
kompilasi
Hasil Kompilasi :
File source.class
Mengeksekusi Program :
C: path_sourcejavac source. class
Hasil Benar
Bila ada runtime atau
logic error
Gambar 3.6 Alur Kompilasi Program Java
BAB IV
HASIL DAN PEMBAHASAN
Sebagaimana yang telah disinggung dalam latar belakang
permasalahan perintah untuk membaca pada surah Al-alaq ayat satu, surah ini
masih ada kelanjutannya pada surah Al-alaq ayat ketiga yang berbunyi:
Artinya:” Bacalah, dan Tuhanmulah Yang Maha Pemurah,”
(QS: Al-Alaq: 3)
Pada ayat ini mengulang perintah membaca dan bagi yang
membacanya akan diberi sesuatu yang amat bermanfaat, salah satu
diantaranya ilmu pengetahuan (Mahmud,2002:338). Dan ilmu pengetahuan
itu sangatlah luas termasuk juga dalam hasil penelitian ini.
Dalam bab ini dibahas mengenai implementasi dari hasil perancangan
yang telah dibuat. Implementasi meliputi tiga tahap implementasi perangkat
lunak, implementasi algoritma dan implentasi antar muka, berikut penjelasan
mengenai tahap-tahapnya.
4.1 Implementasi Perangkat Lunak
Langkah awal yang harus dilakukan user adalah instalasi hardware dan
software yang diperlukan. Mengenai cara instalasi software disertakan
dilampiran. Apabila setelah selesai proses instalasi software, maka Aplikasi
ini dapat dijalankan.
Aplikasi literasi Arab-Latin ini adalah aplikasi perangkat lunak yang
memberikan kemudahan pada penggunanya dalam transliterasi Arab-Latin
yang baku. User mendapat kemudahan melihat hasil litarasi dari huruf Arab
ke huruf latin menggunakan metode pendekatan concatenation. User dapat
melihat hasil tampilan proses literasi berdasarkan pedoman Transliterasi
Arab-Latin yang baku.
4.2 Implementasi Antarmuka
Di dalam implementasi antarmuka ini, menjelaskan kegunaan
komponen-komponen yang ada di dalam Aplikasi Literasi Arab-Latin.
4.2.1 Tampilan utama
Saat pertama kali aplikasi sistem pakar dijalankan, maka akan
ditampilkan tampilan utama yang merupakan halaman utama bagi user.
Dalam halaman utama ini terdapat dalam gambar 4.1 dan beserta
kegunaannya komponen-komponennya.
1.Text Area Input
Text Area Input ini digunakan untuk memberi inputan karakter
Arab yang inputan tersebut diinputkan user dari keyboard.
6
4 3
2
1
Gambar 4.1 Tampilan utama
5
2. Scroll
scroll kearah horizontal atau vertical dan pada aplikasi literasi
Arab-Latin ini digunakan untuk melihat kalimat, atau tulisan yang
tidak kelihatan.
3. Button Transliterasi
Button Transliterasi ini digunakan untuk proses literasi dari
huruf arab ke huruf latin.
4. Text Area Output
Text Area Output ini digunakan untuk melihat hasil yang berupa
karakter Latin.
5. Button Hapus
Button Hapus ini digunakan untuk menghapus huruf arab dan
huruf latin apabila user ingin melakukan proses literasi.
6. Menu
Menu merupakan komponen yang berupa fitur-fitur dan suatu
aplikasi dan didalam menu terdapat fitur tabel literasi dan gambar
keyboard Arabic yang dimana apabila diklik oleh user akan
menampilkan gambar tabel literasi atau gambar keyboard Arabic
seperti pada gambar dibawah ini.
Gambar 4.2 Tampilan menu
4.2.2 Tampilan Gambar Tabel Pedoman literasi
Tampilan ini yang berupa gambar tabel pedoman literasi Arab-
Latin sehingga user dapat melihat standarisasi output yang akan
dihasilkan oleh program.
4.2.3 Tampilan Gambar keybord
Gambar 4.4 Tampilan gambar keyboard
Gambar 4.3 Tampilan gambar tabel pedoman literasi
Tampilan ini berupa gambar keybord diharapkan user dengan
mudah untuk memberi masukan, itu dikarenakan Aplikasi ini hanya
mendapat inputan dari keyboard.
4.2.4 Tampilan hasil concatenation
Gambar 4.5 merupakan tampilan hasil dari implementasi proses
literasi yang dimana user menginputkan karakter Arab dengan hasil
output huruf latin dengan menekan tombol button transliterasi, sesuai
dengan proses implementasi algoritma literasi.
4.3 Pengujian
Pengujian dalam hal kelayakan penggunaan aplikasi Literasi Arab-
Latin yaitu dengan menjalankan program aplikasi dan memberi inputan huruf
arab dengan 250 kata yang diambil dari kamus Arab-Indonesia dan 250
kalimat sebagia besar dari Al-Qur’anul Karim. Kemudian diamati mengenai
hasil output dari aplikasi ini setelah itu dihitung prosentase kebenaran
Gambar 4.5 Tampilan hasil concatenation
outputnya, berikut beberapa contoh inputan kata dan kalimat Arab beserta
outputannya akan ditunjukkan dalam gambar-gambar dibawah ini.
Gambar 4.6 : input kata Arab
Gambar 4.7 : input kalimat Arab
Dari beberapa contoh diatas dan inputan yang disertakan dilampiran
dalam bentuk tabel beserta outputnya latin. Dari hasil pengujian tersebut
yang untuk kata, dari pengujian 250 kata yang benar outputnya itu 246 kata,
sehingga didapatkan persentase yang benar sebesar 98,4%. Sedangkan untuk
pengujian kalimat, dari pengujian 250 kalimat yang benar outputnya ada 123
kalimat, sehingga didapatkan persentasenya sebesar 49,2%. Mengenai
perhitungan persentase sebagai berikut:
Persentase pengujian kata yang benar adalah:
Jumlah kata yang benar
Jumlah kata yang diuji
246
250
= 0.984 X 100%
= 98.4%
Persentase pengujian kalimat yang benar adalah:
Jumlah kalimat yang benar
Jumlah kalimat yang diuji
123
250
= 0.492 X 100%
= 49.2%
Dari hasil persentase diatas bahwa aplikasi ini lebih baik diterapkan
pada kata-kata Arab, itu dikarenakan hasil persentase yang lebih besar adalah
pada pengujian kata dibandingkan dengan pengujian kalimat. Dan dalam
pengujian kalimat itu persentasenya lebih kecil dikarenakan dalam proses
literasi ini pada saat dilakukan dua tahap proses oleh sebab itu pada saat
kalimat yang panjang diinputkan literasi tidak muncul atau eror.
X 100%
X 100%
X 100%=Jadi didapatkan persentase kalimat
X 100%=Jadi didapatkan persentase kata
BAB V
PENUTUP
5.1 Kesimpulan
Setelah semua tahapan perancangan, implementasi dan pengujian
sistem aplikasi telah selesai, dapat ditarik kesimpulan:
1. Perancangan sistem aplikasi ini menggunakan algoritma literasi dan
operasi concatenation.
2. Sistem aplikasi literasi Arab-Latin dengan menggunakan pendekatan
operasi concatenation dan mendapat inputan dari keyboard ini mampu
mentransliterasikan dari huruf Arab ke huruf Latin.
5.2 Saran
Dari beberapa kesimpulan yang telah diambil, maka didapatkan saran-
saran yang akan sangat membantu untuk pengembangan perangkat lunak ini
selanjutnya:
1. Diharapkan untuk kedepannya tadak hanya mendapat inputan dari
keyboard.
2. Untuk pengembangan aplikasi literasi Arab-Latin selanjutnya,
disarankan agar mampu menghasilkan aplikasi Arab-Latin yang lebih
akurat terutama untuk inputan kalimat Arab.
DAFTAR PUSTAKA
Arianto, M. Sholihin, 2008. 1stLect_AksaraArab.pdf (http://perpus@uin-
suka.ac.id. diakses tanggal 12-07-2008).
Ekbal, Asif, Sudip Kumar Naskar & Sivaji Bandyopadhyay. A Modified Joint
Source-Channel Model for Transliteration. Sydney, July 2006. 191-198.
(http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.106.3425
diakses tanggal 12-07-2008).
Eryono, M.Kailani, 1993. Katalogisasi buku Berbahasa Arab. Jakarta:Universitas
Indonesia.
Heijer, Johannes den dan Massier, Ab, 1992. Pedoman Transliterasi Bahasa
Arab. Jakarta: INIS.
Hermawan, Beni, 2004. Menguasai Java 2 & Objek Oriented.Yogyakarta: Andi.
Mahmud, Sakip, 2005. Mutiara Juz Amma. Bandung: Mizan.
Ngoen, Thompson Susabda. 2006. Pengantar Algoritma dengan Bahasa C.
Jakarta : Salemba Teknika.
Person, 2005. Java An Introduction To Problem Solving Dan Programing fourth
edition. United State of America: Upper Suddle River.
Puslitbang, Tim, 2003. Pedoman Transliterasi Arab Latin, Jakarta: Proyek
Pengkajian dan Pengembangan Lektur Pendidikan Agama.
Rickyanto, Isak ST, 2002. Dasar Pemrogrman Berorientasi Objek dengan
Java2(JDK 1.4). Yogyakarta: Andi.
Sanchez, Julio dan Mari P.Compton, 2002. Java 2 Weekend crash cours. Jakarta:
Elex Media Komputindo.
Shihab, M. Quroish, 2002. Tafsir Al-Misbah Vol 6. Jakarta: Lentera Hati.
Yulikuspartono, 2004. Pengantar Logika dan Algoritma. Yogyakarta: Andi
Lampiran1
Cara Mengaktifkan Arabic
A. Untuk menukar dari mode Inggris (English) ke Arab, bisa dengan 2 cara
yakni: Menggunakan Mouse, klik pada pojok sebelah kiri layar monitor
Anda. Gantilah dari EN ke AR atau sebaliknya. (Lihat gambar)
Gbr. Memilih Mode Keyboard
B. Dengan menekan tombol SHIFT (jangan dilepas) kemudian dikombinasikan
dengan ALT, akan terlihat pada layar kiri bawah mode EN akan berganti AR
atau sebaliknya. pemakai Windows XP. Penggunaannya lebih mudah sebab
sudah menyediakan fasilitas Multilanguage. Dalam proses instalasi standar
biasanya belum mencakup bahasa Arab.
Cara menambah fasilitas Arabic Language adalah dengan:
1. Buka ‘Start’ kemudian pilih ‘Control Panel’ dan klik ‘Regional And
Language options’
2. Pilih Tab ’Languages’
3. Pilih ‘Install files for complex script and right-to-left languages (including
Thai)’
4. Klik OK (Jangan lupa CD Windows XP akan diminta dari CDROM)
5. Klik juga menu ‘Details…’ untuk menambah (Add) model Keyboard
Arabic.
6. OK (Proses akan dilanjutkan komputer secara otomatis). Silakan tunggu.
Jika ingin mengetik dalam Microsoft Word, kita tinggal mengganti model
Keyboard saja seperti 2 cara di atas. Bila ingin menambah inisial pemakaian
huruf Arab, pergunakan:
Selain solusi Windows, sebenarnya ada beberapa program untuk menulis Arab
yang instant, bisa langsung dipakai secara mandiri. Kemudahannya adalah kita
tinggal menekan tampilan tombol keyboard di layar dengan mouse, kemudian
akan muncul hasilnya di layar editor.
Selain solusi Windows, sebenarnya ada beberapa program untuk menulis Arab
instant, bisa langsung dipakai secara mandiri. Kemudahannya adalah kita
tinggal menekan tampilan tombol keyboard di layar dengan mouse, kemudian
akan muncul hasilnya di layar editor.
Selain solusi Windows, sebenarnya ada beberapa program untuk menulis Arab
instant, bisa langsung dipakai secara mandiri. Kemudahannya adalah kita
tinggal menekan tampilan tombol keyboard di layar dengan mouse, kemudian
Lampiran 2
Tampilan konsonan
Tampilan vokal tunggal dan rangkap
Tampilan Maddah
Tampilan Hamzah
Lampiran 3
Arab Latin Arab Latin Arab Latin
َ‫ح‬ ََ‫ا‬ ABAĤA ُ JUBBUN ٌ ِْ ĤIBRUN
َ‫ك‬َ‫ر‬ َ BĀRAKA ِ JIDDUN ٌ ِ َ ĤĀJIBUN
َ‫ك‬ َ SAMMĀKA ِ JIDDAN ْ‫ة‬َ َْ ĤABRATH
ٌ‫س‬ََ MADASUN َ‫ر‬ َ JADDARA ٌ‫ر‬ ََ ĤABĀRUN
َ‫ع‬ َ BĀ‘A ٌ‫ع‬ََ JAśA‘UN ‫َى‬‫ر‬ َُ ĤUBĀRAÃ
َ‫ر‬ََ BADARA َ‫ف‬ َ JADDAFA ْ‫ة‬َ َْ ِ MIĤBARAĤ
َُ َ BA‘UDA َ‫ب‬ َ JARRABA َ‫ث‬ َ ĤADDAŚA
َ َ BAGĀ ٌ‫ب‬َ َ JARABU ٌ َِْ ĤADĪŚUN
َ BALLA َ‫أ‬ َ JAZA'A ٌ‫ة‬ ِ ĤIDDATUN
َ َ َ BAHALA ٌ‫م‬ْ َ JAZMUN ٌ‫د‬‫ا‬ ِ ĤIDDĀDUN
َ َ َ BAĤARA َ َ ْ َ JAMHARA ٌَِْ ĤADĪDUN
َ‫د‬َ َ BARADA ً ِ َ JĀMI‘AN ٌ‫د‬‫ا‬ َ ĤADDĀDUN
َ‫ق‬َ َ BARAQA ْ‫ك‬ُ ْ ُ JUMRUK ٌ‫د‬ْ‫و‬ُْ َ MAĤDŪDUN
ََ َ TĀKHAMA ٌ َ َ َ JAMASATUN َ‫ج‬ َ ĤARRAJA
ٌ‫ب‬ْ ُ َ TĀBUŪBUN َ َ َ JĀNASA ٌ‫ج‬ َ ĤARRAJUN
َ َ TABBALA ُ JUNNA َ‫ر‬ َ ĤARRARA
َ‫ب‬ َ TARRABA َ َ JAHHAZA َ ĤARRUN
ََ َْ TALMADU َ‫ب‬َ‫و‬ َ JĀWABA ٌ‫ن‬ َ ĤARRANUN
َ‫ب‬ َ TAWWABA ٌ‫ز‬ْ َ JAUZUN ٌ‫ر‬ِ َ ĤARIRUN
ٍ‫ل‬ َ TĀLIN َ JAWWAN َ‫ز‬َ ْ َ‫أ‬ 'AĤRAZA
ٌ‫ت‬ ََ ŚABĀTUN َ‫د‬ َ َ‫أ‬ 'AJĀDA ٌ‫ز‬ْ ِ ĤIRZUN
َ َ ŚAQQALA ً َ JAYYIDAN ٌ ِْ َ ĤARĪZUN
َ َ ŚALLAŚA َ‫ر‬َ‫و‬ َ JĀWARA ٌ‫س‬ِ‫ر‬ َ ĤĀRISUN
ُ ŚUMMA ٌ‫ر‬َ ِ JIWARUN ْ‫س‬َ َْ ُ MUĤTARAS
َ‫س‬ َ ĤARRASA ٌ‫ض‬ َ ُ MUĤARRIðUN ٌَْ ِ ĤIRFATUN
ُ‫س‬َ ْ َ‫أ‬ 'AĤRASU َ‫ف‬ َ ĤARRAFA ٌ‫ف‬ ِ ĤIRRAFUN
ٌ ِْ ْ َ TAĤRĪSUN َ‫ف‬َ َ ِْ‫ا‬ INĤARAFA َ‫ق‬َ َ ĤARAQA
ٌ ِْ َ ĤARĪŞUN َ‫ف‬َ َْ ِ‫ا‬ IĤTARAFA ٌ‫ق‬ْ َ ĤARQUN
َ‫ض‬ َ ĤARRAðA ٌ‫ف‬ْ َ ĤARFUN ٌ‫ك‬َ َ ĤARAKUN
ٌْ َ QAŞDUN َ ََ TAQAŞŞARA َ َ َ QAŞAFA
Arab Latin Arab Latin Arab Latin
َََ KHABA'A َ َ‫د‬ DABBARA َ‫س‬َ‫أ‬َ‫ر‬ RA'ASA
َ KHABBUN ٌ ِ‫َا‬‫د‬ DĀBIRUN ُ‫س‬َ‫أ‬ْ َ YAR'ASU
ٌ ُْ KHUBŚUN ٌ ِْْ َ TADBĪRUN ٌَ‫َا‬‫ر‬ RĀYATUN
ٌ َِْ KHABĪŚUN ُ َُ MUDABBIRU ‫َب‬‫ر‬ RABBA
َ ََ KHABARA ٌ ِْ‫د‬ DIBSUN َ َ‫َا‬‫ر‬ RĀBAȚA
َ َْ KHABRA ٌ ََ‫د‬ DABASUN َ‫ط‬ َِ‫ر‬ RIBĀȚA
َ َ KHABBARA ٌ‫غ‬ َ‫د‬ DABBĀ'UN َ ُ‫ر‬ RUBBAMĀ
َ ََْ ِ‫ا‬ IKHTABARA ٌ‫ر‬ َِ‫د‬ DIŚĀRUN ٌ َْ‫ر‬ RABWUN
ٌ ُْ KHUBRUN ٌ‫ل‬ َ‫د‬ DAJJĀLUN ُ ََ‫ر‬ RATALU
ٌ َِ KHABILUN َ َ‫د‬ DAJJALA ٌََ‫ر‬ RATAMUN
ََ KHABĀ ٌ‫ح‬َْ َ‫د‬ DAĤDAĤUN ‫ُج‬‫ر‬ RUJJA
ٌ‫ء‬ َِ KHIBĀ'UN َ َ ‫َا‬‫د‬ DĀKHALA َ َ‫ر‬ RAJJAĤA
ٌ‫ل‬ َ KHATTĀLUN ٌ ْ َ‫د‬ DAKHLUN ٌ ْ ِ‫ر‬ RIJSUN
َََ KHATAMA ٌ َ َ‫د‬ DAKHALUN َ َ‫ر‬ RAJJA'A
ْ ََْ ِ‫ا‬ IKHTATAM ٌ ِ ‫َا‬‫د‬ DĀKHILUN َ َ ‫َا‬‫ر‬ RĀJA'A
ٌَْ KHATMUN ٌ َ ْ َ MADKHALUN َ َ ‫َا‬ َ TARĀJA'A
ٌ‫ة‬َ‫ر‬ ََ KHAŚĀRATUN َ َ ْ َ‫د‬ DAKHMASA َ َ ْ َْ ِ‫ا‬ ISTARJA'A
ٌ ِ َ KHĀŚIRUN ٌ ِ َ‫د‬ DAKHINUN ٌَ ْ َ‫ر‬ RAJ'ATUN
ٌ‫ج‬‫َا‬ ُ KHURĀJUN ُ َ‫َر‬‫د‬ DARRABAHU ٌَْ َ‫ر‬ RAJFATU
ٌ‫ج‬ْ َ KHARJUN ٌ َْ‫ر‬ُ‫د‬ DURBATUN َ َ َ TARAJJALA
ٌ‫ج‬ْ‫و‬ُ ُ KHURŪJUN ٌ ْ‫ْر‬ َ TADRĪBUN ٌ ِ َ‫ر‬ RAJILUN
َ َ ْ َ KHARKHARA ٌ َْ‫ر‬ِ‫د‬ DIRBASUN ٌ ِ ‫َا‬‫ر‬ RĀHILUN
ٌ‫ل‬َ‫د‬ْ َ KHARDALUN َ‫ج‬َ‫ر‬َ‫د‬ DARAJA ٌِ َ‫ر‬ RAĤIMA
ٌ‫ز‬َ َ KHARAJUN َ‫ج‬ِ‫ر‬َ‫د‬ DARIJA ٌ‫ء‬ َ َ‫ر‬ RAKHĀ'UN
ٌ‫س‬ َ KHARRASUN ً َ َ‫ر‬َ‫د‬ DARAJATAN ٌ ْ َ‫ر‬ RAKHWUN
ٌ‫ع‬َ‫و‬ْ ِ KHIRWA'UN َ‫س‬‫َر‬‫د‬ DARRASA ٌ‫ذ‬‫َا‬‫ذ‬َ‫ر‬ RAśĀśUN
ٌ ِْ َ KHARĪFUN ٌَْ َ‫د‬ DASTATUN ٌ ْ َ‫ر‬ RASLUN
َ َْ َ KHARFASYA َ‫ش‬َ‫د‬ DASYA َ‫ق‬َ‫ز‬َ‫ر‬ RAZAQA
َ‫ق‬َ َ KHARAQA ٍ‫ع‬‫َا‬‫د‬ DĀ'IN َ‫ق‬ِ‫ز‬ُ‫ر‬ RUZIQA
ٌ‫ط‬‫َا‬ ِ QIRĀȚUN َ َ ْ َ QARȚASA َ َْ َ QARQAŞA
Arab Latin Arab Latin
ٌ‫ت‬ َُ SUBĀTUN ٌ ََ ŞABABUN
َ َ َ SĀBAQA َ ََ ŞABAĤA
َ ََ SABAKA َ َْ َ‫أ‬ AŞBAĤA
ٌ ِ َ َ MASABIKUN َ َ ُْ ŞUBĤATA
ٌ‫ة‬َ‫د‬ َ SĀDATUN َ ŞAĤĤA
ِ َُ SUDASIYYUN ْ ِ ŞIĤĤAH
َ‫س‬‫َا‬ُ SUDĀSA ْ‫ر‬ َِ ŞIFĀR
ْ‫س‬ َ َ MASADDAS َ‫ب‬‫َا‬ َ ŞAWĀBA
‫ًى‬ُ SUDAN َ‫ب‬ َ ŞĀBA
ٌ‫ة‬‫َا‬َ SADĀTUN ْ َ َ ŞĀAH
ٌ‫ر‬ْ‫و‬ُ ْ َ MASRŪRUN ‫ى‬ َ ȚARRĀ
‫ا‬ ِ SIRRAN ٌ َِْ ȚAFĪFUN
ٌ‫ب‬َ َ SARABUN ٌَِ َ ȚĀFIYATUN
ٌ‫ب‬ْ ِ SIRBUN ْ‫ل‬ َُ ȚUFĀL
َ‫ح‬‫ا‬ َ SARRĀĤA َ 'ADDUN
ْ‫ن‬ َ ‫َا‬ َ SARĀȚĀN ٌَِْ 'ADĪDUN
َ‫ع‬ َ َ TASARRA'A َ‫ل‬َِ 'ADILA
ْ‫م‬َ َ SARAM َ َ َ GASAQA
ٌَ ْ َ SARMADUN ٌ‫ل‬ْ َ GAZLUN
ٌَ ْ ُ SUR'ATUN ‫َا‬ َ GARĀ
ْ‫ن‬ َ SAFFĀN ْ‫د‬ َ FARRAD
َ َ SAFFAKA ُ‫س‬َ َ FARASU
َ َ SĀQAÃ ْ‫ق‬‫َا‬ ِ FIRĀQ
ْ ِ‫آ‬ َ SĀKIF ٌ ْ َ FASĤUN
َ َ َ SAKANA ُ‫ء‬ َ ُ FUSĀ'U
ٌ ََ SALASUN ٌ‫د‬ َ َ FASĀDUN
َ َِ SALIȚA َ ََ FAQA'A
ٌ ِ َ SĀLIFUN َِ َ FĀQIDA
َ ََ SALAKA ْ ََ FAQAȚ
ٌ َْ QABðUN ٌ ِْ QIBSUN
Ket: output yang salah ditandai dengan tanda garis bawah
yang salah ada 4 dari 250 kata.
Lampiran 4
No. Arab Latin
1. ِ َ َ ْ‫ا‬ ُ‫ص‬َ ُ FURAŞU L‘AMALI
2. ٍ ْ َ ََ‫ا‬ ‘ABĀ BAKRIN
3. ُ َْ َ َ َ‫آ‬ KAMĀ BA‘AŚTU
4. ْ ُُْ‫آ‬ ََُْ ĤAIŚUMA KUNTUM
5. ُ‫ة‬َ‫أ‬ْ َ ْ‫ا‬ ِ َ َ BAGATIL MAR’ATU
6. ٌ َ ُ َ‫ء‬ َ ERROR
7. ٌ َ ُ َ َ‫ه‬َ‫ذ‬ śAHABA MUĤAMMADUN
8. ‫ا‬ ِ ٌ َِْ‫آ‬ ERROR
9. ٌ ُِْ ٌ‫ب‬ َِ‫آ‬ KITĀBUN MUBĪNUN
10. ً ًَْ ُ‫م‬ ََ TANĀMU LAILAN
11. ٍ ِ ََُ ٍ َْ‫و‬ WAQTIN MUTA’AKHIRIN
12. ‫ًا‬ َِْ‫آ‬ ُ َ ْ َ TASHARU KAŚIĪRAN
13. ٌ ِْ َ‫أ‬ ٌ‫ر‬‫َا‬‫د‬ DĀRUN ‘AMĪNUN
14. ْ ََْ‫ا‬ ‫َا‬َ‫ه‬ HAśĀ LBALAD
15. ْ ِ‫َا‬‫ذ‬ ُ‫آ‬ KULLU śĀLIKA
16. ٍ‫م‬ْ َ ُ‫آ‬ KULLA NAUMIN
17. ِ َْ َ َ ُ َِ َ ERROR
18. َ ِ‫َا‬َ‫آ‬ َ ََْ‫أ‬ ‘ALAISA KAśĀLIKA
19. َ‫ك‬ َُ‫ه‬ ْ َ َ‫آ‬ ERROR
20. َِِْ َ ERROR
21. ُ َُ‫ر‬ْ َ ْ‫ت‬َ َُ‫آ‬ KAŚURAT ŚAURATUHU
22. ٍ ْ َ َ‫ن‬ْ‫و‬ُ‫د‬ DŪNA ȚAM‘IN
23. ُ ِْ ُ‫ف‬ َ َ TAKĀFU MINHU
24. ً َِْ َ َ َ SAKATA QALĪLAN
25. َ ُ‫أ‬ ِ ْ َ BAȚNI UMMIKA
26. َ ُ ََْ ْ َ LAN YANFA‘UKA
27. ْ َ ْ َ ‫َا‬‫ذ‬ َ MĀśĀ TA‘MAL
28. ٍ‫ء‬ْ َ ُ‫آ‬ KULLU SI’IN
29. ‫َا‬َ‫ه‬ َ َْ‫آ‬ KAIFA HAśĀ
30. ِ ََْ ُ َ‫ه‬ْ َ ERROR
31. ْ ُ َ َ َْ LAISA LAHUM
32. ِ َ َ ْ‫ا‬ َ ِ MINA LJAMALI
33. َ َْ ْ‫ا‬ ََ َ‫و‬ WASAQĀ LKALBA
34. ْ َ ًََْ َ ِ َ ERROR
35. ْ َ َِْ‫ا‬ َ‫م‬ْ َ ERROR
36. َ ِْ َ َِْ ََْ‫ا‬ ALQARĪBATA MINHA
37. ِ‫ف‬ْ‫و‬ُ ْ َ ْ‫ا‬ ِ َ ERROR
38. ِ َ َ ْ‫ا‬ َ ِ MINA LJAMALI
39. ُ‫م‬ َُ َ‫ن‬ َ‫آ‬ ERROR
40. ِِ ِْ َ َ َ MA‘A BA‘ĪRIHI
41. ِ ْ ِْ‫ا‬ َْ َ BA‘DA LFI‘LI
42. ِ‫ذ‬ْ ُ ًْ َ ERROR
43. ‫ًا‬ ْ َ ُ ُ ْ َ YASKUNU QASRAN
44. ََِْْ‫أ‬ َ ْ َ TAHTA AIDIĪNĀ
45. َ ِْ ِْ ُ ْ‫ا‬ ِ‫ل‬‫َا‬ ْ َ‫أ‬ ERROR
Aplikasi Literasi Arab-Latin
Aplikasi Literasi Arab-Latin
Aplikasi Literasi Arab-Latin
Aplikasi Literasi Arab-Latin
Aplikasi Literasi Arab-Latin
Aplikasi Literasi Arab-Latin
Aplikasi Literasi Arab-Latin
Aplikasi Literasi Arab-Latin
Aplikasi Literasi Arab-Latin
Aplikasi Literasi Arab-Latin

Más contenido relacionado

Similar a Aplikasi Literasi Arab-Latin

Skipsi e-learning berbasis web pada smk bina banua
Skipsi e-learning berbasis web pada smk bina banua Skipsi e-learning berbasis web pada smk bina banua
Skipsi e-learning berbasis web pada smk bina banua Een Pahlefi
 
Pemanfaatan sistem informasi akademik di universitas islam indonesia
Pemanfaatan sistem informasi akademik di universitas islam indonesiaPemanfaatan sistem informasi akademik di universitas islam indonesia
Pemanfaatan sistem informasi akademik di universitas islam indonesiaUniversitas Bina Darma Palembang
 
Rancang bangun Website penerimaan siswa baru di SMKN 3 jombang
Rancang  bangun Website penerimaan siswa baru di SMKN 3 jombang Rancang  bangun Website penerimaan siswa baru di SMKN 3 jombang
Rancang bangun Website penerimaan siswa baru di SMKN 3 jombang Unipdu
 
Skipsi e-learning berbasis web pada smk bina banua | word
Skipsi e-learning berbasis web pada smk bina banua | wordSkipsi e-learning berbasis web pada smk bina banua | word
Skipsi e-learning berbasis web pada smk bina banua | wordEen Pahlefi
 
analisa performa socket iterative server.pdf
analisa performa socket iterative server.pdfanalisa performa socket iterative server.pdf
analisa performa socket iterative server.pdfevaagustina22
 
Wisuda ke 25 Universitas Darma Persada
Wisuda ke 25 Universitas Darma PersadaWisuda ke 25 Universitas Darma Persada
Wisuda ke 25 Universitas Darma PersadaDadang Solihin
 
211785323.pdf
211785323.pdf211785323.pdf
211785323.pdfMesinesId
 
Template skripsi update 10 04-2021
Template skripsi update 10 04-2021Template skripsi update 10 04-2021
Template skripsi update 10 04-2021Alorka 114114
 
Template skripsi update 10 04-2022
Template skripsi update 10 04-2022Template skripsi update 10 04-2022
Template skripsi update 10 04-2022Alorka 114114
 
Laporan kerja pratek rancang bangun sistem inventaris bkmm banyumas
Laporan kerja pratek rancang bangun sistem inventaris bkmm banyumas Laporan kerja pratek rancang bangun sistem inventaris bkmm banyumas
Laporan kerja pratek rancang bangun sistem inventaris bkmm banyumas Queen Anaqi
 

Similar a Aplikasi Literasi Arab-Latin (20)

78034924.pdf
78034924.pdf78034924.pdf
78034924.pdf
 
Skipsi e-learning berbasis web pada smk bina banua
Skipsi e-learning berbasis web pada smk bina banua Skipsi e-learning berbasis web pada smk bina banua
Skipsi e-learning berbasis web pada smk bina banua
 
TA jaringan
TA jaringanTA jaringan
TA jaringan
 
Pemanfaatan sistem informasi akademik di universitas islam indonesia
Pemanfaatan sistem informasi akademik di universitas islam indonesiaPemanfaatan sistem informasi akademik di universitas islam indonesia
Pemanfaatan sistem informasi akademik di universitas islam indonesia
 
Qr scan
Qr scanQr scan
Qr scan
 
Rancang bangun Website penerimaan siswa baru di SMKN 3 jombang
Rancang  bangun Website penerimaan siswa baru di SMKN 3 jombang Rancang  bangun Website penerimaan siswa baru di SMKN 3 jombang
Rancang bangun Website penerimaan siswa baru di SMKN 3 jombang
 
Awal
AwalAwal
Awal
 
Skipsi e-learning berbasis web pada smk bina banua | word
Skipsi e-learning berbasis web pada smk bina banua | wordSkipsi e-learning berbasis web pada smk bina banua | word
Skipsi e-learning berbasis web pada smk bina banua | word
 
analisa performa socket iterative server.pdf
analisa performa socket iterative server.pdfanalisa performa socket iterative server.pdf
analisa performa socket iterative server.pdf
 
05550048
0555004805550048
05550048
 
Wisuda ke 25 Universitas Darma Persada
Wisuda ke 25 Universitas Darma PersadaWisuda ke 25 Universitas Darma Persada
Wisuda ke 25 Universitas Darma Persada
 
211785323.pdf
211785323.pdf211785323.pdf
211785323.pdf
 
Template skripsi update 10 04-2021
Template skripsi update 10 04-2021Template skripsi update 10 04-2021
Template skripsi update 10 04-2021
 
Template skripsi update 10 04-2022
Template skripsi update 10 04-2022Template skripsi update 10 04-2022
Template skripsi update 10 04-2022
 
Laporan kerja pratek rancang bangun sistem inventaris bkmm banyumas
Laporan kerja pratek rancang bangun sistem inventaris bkmm banyumas Laporan kerja pratek rancang bangun sistem inventaris bkmm banyumas
Laporan kerja pratek rancang bangun sistem inventaris bkmm banyumas
 
Contoh data mining
Contoh data miningContoh data mining
Contoh data mining
 
1108014
11080141108014
1108014
 
13640003 210930063259
13640003 21093006325913640003 210930063259
13640003 210930063259
 
13640003
1364000313640003
13640003
 
diagnosa kehamilan
diagnosa kehamilandiagnosa kehamilan
diagnosa kehamilan
 

Aplikasi Literasi Arab-Latin

  • 1. RANCANG BANGUN APLIKASI LITERASI ARAB - LATIN DENGAN MENGGUNAKAN PENDEKATAN OPERASI CONCATENATION (PENYAMBUNGAN) SKRIPSI Oleh MUHAMMAD IQBAL ARRIKZA NIM. 04550041 JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI (UIN) MALANG 2009
  • 2. RANCANG BANGUN APLIKASI LITERASI ARAB - LATIN DENGAN MENGGUNAKAN PENDEKATAN OPERASI CONCATENATION (PENYAMBUNGAN) SKRIPSI Diajukan Kepada: Universitas Islam Negeri (UIN) Malang Untuk Memenuhi Salah Satu Persyaratan dalam Memperoleh Gelar Sarjana Komputer (S.Kom) Oleh MUHAMMAD IQBAL ARRIKZA NIM. 04550041 JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI (UIN) MALANG 2009
  • 3. HALAMAN PERSETUJUAN RANCANG BANGUN APLIKASI LITERASI ARAB - LATIN DENGAN MENGGUNAKAN PENDEKATAN OPERASI CONCATENATION (PENYAMBUNGAN) SKRIPSI Oleh MUHAMMAD IQBAL ARRIKZA NIM. 04550041 Telah Disetujui, 2009 Pembimbing I Pembimbing II Suhartono, S.Si, M.Kom Ach. Nasichuddin, MA NIP. 150 327 241 NIP. 150 302 531 Mengetahui, Ketua Jurusan Suhartono, S.Si, M.Kom NIP. 150 327 241
  • 4. HALAMAN PENGESAHAN RANCANG BANGUN APLIKASI LITERASI ARAB - LATIN DENGAN MENGGUNAKAN PENDEKATAN OPERASI CONCATENATION (PENYAMBUNGAN) SKRIPSI Oleh MUHAMMAD IQBAL ARRIKZA NIM. 04550041 Telah Dipertahankan Di Depan Dewan Penguji Skripsi Dan Dinyatakan Diterima Sebagai Salah Satu Persyaratan Untuk Memperoleh Gelar Sarjana Komputer (S.Kom) Tanggal, 11 April 2009 Susunan Dewan Penguji : Tanda Tangan 1. Penguji Utama : Totok Chamidy, M.Kom ( ) NIP 150 381 177 2. Ketua Penguji : M. Amin Hariyadi, M.T ( ) NIP 150 368 791 3. Sekertaris Penguji : Suhartono, M.Kom ( ) NIP 150 327 241 4. Anggota Penguji : Ach. Nasichuddin, M.A ( ) NIP 150 302 531 Mengetahui dan Mengesahkan Ketua Jurusan Teknik Informatika Fakultas Sains dan Teknologi Universitas Islam Negeri Malang Suhartono, S.Si, M.Kom NIP. 150 327 241
  • 5. SURAT PERNYATAAN Yang bertanda tangan di bawah ini : Nama : Muhammad Iqbal Arrikza NIM : 04550041 Alamat : Jalan Lawu Gg. IV/7A RT/RW : 003/002 Denanyar Jombang Menyatakan bahwa skripsi yang saya buat untuk memenuhi persyaratan kelulusan pada Fakultas Sains dan Teknologi, Jurusan Teknik Informatika Universitas Islam Negeri Malang Dengan Judul ”RANCANG BANGUN APLIKASI LITERASI ARAB - LATIN DENGAN MENGGUNAKAN PENDEKATAN OPERASI CONCATENATION (PENYAMBUNGAN)” ini adalah hasil karya sendiri dan bukan duplikasi karya orang lain baik sebagian ataupun keseluruhan, kecuali dalam bentuk kutipan yang telah disebutkan sumbernya . Selanjutnya apabila di kemudian hari ada Claim dari pihak lain, bukan menjadi tanggung jawab dosen pembimbing dan atau pengelola Fakultas Sains dan Teknologi Jurusan Teknik Informatika Universitas Islam Negeri Malang tetapi menjadi tanggung jawab saya sendiri. Demikian surat pernyataan ini saya buat dengan sebenar-benarnya dan apabila pernyataan ini tidak benar, saya bersedia mendapatkan sangsi akademis. Malang, 04 April 2009 Yang Menyatakan MUHAMMAD IQBAL ARRIKZA
  • 6. “Bacalah dengan MOTTOMOTTOMOTTOMOTTO “Bacalah dengan (menyebut) nama Tuhanmu yang Menciptakan,” (QS. Al-Alaq: 1) (menyebut) nama Tuhanmu yang Menciptakan,”
  • 7. KATA PENGANTAR Puji syukur Alhamdulillah kita haturkan kepada Allah Swt. Yang telah melimpahkan rahmat serta hidayahnya sehingga skripsi ini dapat terselesaikan dengan judul: ”Rancang Bangun Aplikasi Literasi Arab - Latin Dengan Menggunakan Pendekatan Operasi Concatenation (Penyambungan)” Sholawat serta salam semoga tetap terlimpahkan keharibaan baginda Nabi Muhammad Saw, yang telah membawa petunjuk kebenaran seluruh umat manusia yaitu Ad-Din Al-Islam yang kita harapkan syafa’atnya di dunia dan di akhirat. Terselesaikannya skripsi ini dengan baik berkat dukungan, motivasi, petunjuk dan bimbingan dari berbagai pihak. Oleh karena itu penulis juga mengucapkan terimakasih yang sebesar-besarnya kepada: 1. Kedua orang tua, Ayahanda penulis Almarhum Drs. M. Sholeh Mansyur dan Ibunda Dra. Syafi’ah 2. Prof. Dr. Imam Suprayogo, selaku Rektor Universitas Islam Negeri (UIN) Malang 3. Prof. Dr. Sutiman Bambang Sumitro, S.U., D. Sc selaku Dekan Fakultas Sains dan Teknologi Universitas Islam Negeri (UIN) Malang. 4. Suhartono, S.Si, M.Kom, selaku Ketua Jurusan Teknik Informatika Universitas Islam Negeri (UIN) Malang sekaligus Dosen Pembimbing, yang telah memberi masukan, saran serta bimbingan dalam proses menyelesaikan skripsi ini.
  • 8. 5. Ach. Nashichuddin, M.A, selaku Dosen Pembimbing Integrasi Sains dan Islam Universitas Islam Negeri (UIN) Malang, yang telah memberi masukan, saran serta bimbingan dalam proses menyelesaikan skripsi ini. 6. Bapak/Ibu Dosen Teknik Informatika UIN Malang yang telah memberikan ilmunya dengan tulus. 7. Teman-teman Teknik Informatika UIN 2004 yang tak bisa disebutkan satu persatu, yang telah menjadi motivator demi selesainya penyusunan skripsi ini. Penulis sadar bahwa tidak ada sesuatu pun yang sempurna kecuali Allah Swt. Oleh karena itu, dengan senang hati penulis menerima kritik dan saran yang bersifat membangun. Semoga skripsi ini bermanfaat bagi penulis khususnya dan juga bagi pembaca umumnya. Amin Ya Rabbal Alamin Malang 04 April 2009 Penulis
  • 9. DAFTAR ISI HALAMAN JUDUL ....................................................................................... i HALAMAN PERSETUJUAN......................................................................... ii HALAMAN PENGESAHAN.......................................................................... iii SURAT PERNYATAAN…………………………………………………….. iv MOTTO ...................................................................................................... v KATA PENGANTAR ..................................................................................... vi DAFTAR ISI.................................................................................................... viii DAFTAR TABEL............................................................................................ x DAFTAR GAMBAR ....................................................................................... xi DAFTAR LAMPIRAN.................................................................................... xii ABSTRAK ...................................................................................................... xiii 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 .............................................................. 6 BAB II : LANDASAN TEORI ................................................................... 8 2.1 Literasi...................................................................................... 8 2.2 Algoritma dan flowchart .......................................................... 12 2.2.1 Syarat-syarat Algoritma .................................................. 14 2.2.2 Flowchart ........................................................................ 15 2.3 Operasi concatenation (penyambungan) ................................. 17 2.4 Bahasa Pemrograman Java....................................................... 18 2.4.1 Bahasa Java..................................................................... 18 2.4.2 Variabel dan Tipe data .................................................... 25 2.4.3 Operator........................................................................... 32 2.4.4 String .............................................................................. 36 2.4.5 Kondisi if......................................................................... 38 2.4.6 Perulangan for................................................................. 41 BAB III : PERANCANGAN DAN DESAIN SISTEM.............................. 45 3.1 Materi Penelitian...................................................................... 45 3.2 Alat Penelitian.......................................................................... 45 3.2.1 Kebutuhan Hadware ....................................................... 45 3.2.2 Kebutuhan Software ....................................................... 46 3.3 Tahap-tahap pembangunan sistem ........................................... 46 3.4 Rancangan Program ................................................................. 47 3.5 Proses Literasi.......................................................................... 48 3.6 Flowchart ................................................................................. 49 3.7 Implementasi............................................................................ 51
  • 10. BAB IV : HASIL DAN PEMBAHASAN.................................................... 62 4.1 Implementasi perangkat lunak ................................................. 62 4.2 Implementasi Antarmuka......................................................... 63 4.2.1 Tampilan Gambar Tabel Pedoman literasi utama ........... 65 4.2.2 Tampilan Gambar keybord .............................................. 65 4.2.3 Tampilan hasil concatenation .......................................... 66 4.3 Pengujian.................................................................................. 66 BAB V : PENUTUP .................................................................................... 69 5.1 Kesimpulan .............................................................................. 69 5.2 Saran......................................................................................... 69 DAFTAR PUSTAKA LAMPIRAN
  • 11. DAFTAR TABEL Tabel 2.1 Pedoman Transliterasi Arab-Latin………………………....... Tabel 2.2 Unicode Arab………………………………………………… Tabel 2.3 Tipe data di Java……………………………………………… Tabel 2.4 Operator Aritmatika…………………………………………... Tabel 2.5 Increment dan Decrement…………………………………..... Tabel 2.6 Assignment ( Penugasan )………………………………......... Tabel 2.7 Operator relasi……………………………………………....... Tabel 2.8 Operator Logical……………………………………………… Tabel 2.9 Operator Bitwise……………………………………………… 11 27 29 32 33 34 34 35 35
  • 12. DAFTAR GAMBAR Gambar 2.1 :Algoritma dalam kerangka pemecahan masalah………...... Gambar 2.2 :Representasi Grafis Flowchart……………………………. Gambar 2.3 :Flowchart If……………………………………………...... Gambar 2.4 :Flowchart If..else....……………………………………….. Gambar 2.5 :Flowchart For……………………………………………… Gambar 3.1 :Diagram blok……………………………………………… Gambar 3.2 :Flowchart literasi………………………………………...... Gambar 3.3 :Sambungan flowchart literasi……………………………... Gambar 3.4 :Flowchart Literasi di Java ……………………………….. Gambar 3.5 :Sambungan Flowchart literasi di Java …………………… Gambar 3.6 : Alur Kompilasi Program Java …….…………………….. Gambar 4.1 :Tampilan utama…………………………………………… Gambar 4.2 :Tampilan menu……………………………………………. Gambar 4.3 :Tampilan gambar tabel pedoman literasi………………….. Gambar 4.4 :Tampilan gambar keyboard……………………………….. Gambar 4.5 :Tampilan hasil concatenation……………………………... Gambar 4.6 :Tampilan input kata Arab………..………………………... Gambar 4.7 :Tampilan input kalimat Arab…………………………….... 13 16 39 40 43 47 50 51 52 53 61 63 64 65 65 66 67 67
  • 13. DAFTAR LAMPIRAN Lampiran 1 : Cara mengaktifkan Arabic Lampiran 2 : Tampilan percobaan Lampiran 3 : Tabel 250 kata yang diuji Lampiran 4 : Tabel 250 kalimat yang diuji
  • 14. ABSTRAK Muhammad Iqbal Arrikza. 2004. 04550041. Rancang Bangun Aplikasi Literasi Arab - Latin Dengan Menggunakan Pendekatan Operasi Concatenation (Penyambungan). Pembimbing : (I) Suhartono, S.Si, M.Kom, (II) Ach. Nashichuddin, M.A Kata Kunci : Aplikasi Literasi Arab-Latin, Concatenation Penduduk Indonesia sebagian besar beragama Islam, Al-Qur’an sebagai kitab suci agama Islam yang ditulis dengan bahasa Arab. Menjadi kebutuhan yang penting dimiliki oleh muslim di Indonesia. Untuk menunjang kebutuhan mempelajari baca tulis huruf Arab, salah satu hal yang paling dibutuhkan adalah Transliterasi Arab-Latin atau alih huruf Arab ke huruf latin. Sehingga bangsa Indonesia mempunyai pedoman transliterasi yang baku. Salah satu perkembangan teknologi informasi saat ini ditandai dengan pembuatan Aplikasi. Proses pembuatan Aplikasi ini menggunakan pendekatan operasi concatenation, sedangkan tahap yang dilakukan dalam penelitian ini yaitu dengan menerapkan algoritma literasi dengan pendekatan operasi concatenation. Operasi ini menggunakan penyambungan untuk merangkai sebuah kata atau abjad, untuk menerapkan algoritma literasi dengan dengan pendekatan operasi tersebut digunakan bahasa pemrograman Java. Java merupakan suatu teknologi di dunia software komputer. Dari penelitian yang telah dilakukan, bahwa aplikasi literasi Arab-Latin dapat memudahkan dalam mentransliterasikan dari hurus Arab ke huruf Latin, sesuai dengan aturan-aturan pedoman transliterasi yang baku.
  • 15. 1.1 Latar Belakang Sebagai bangsa yang memiliki penduduk terbesar setelah China dan India, penduduk Indonesai terdiri dari berbagai agama dan suku bangsa yang memiliki bahasa berbeda yang dijadikan sebagai bahasa persatuan dan nasionalnya. Islam merupakan agama yang dianut oleh mayoritas penduduk Indonesia, oleh karenanya kebutuhan untuk mampu menguasai baca tulis Al Qur’an sebagai kitab suci agama Islam yang ditulis dengan bahasa Arab, menjadi kebutuhan y menunjang kebutuhan mempelajari baca tulis huruf Arab, salah satu hal yang paling dibutuhkan adalah Transliterasi Arab huruf latin. Literasi menyediakan kebutuhan mempelajari bahasa bagi siapa saja yang Allah SWT : Artinya : Ayat tersebut berkaitan dengan memenuhi kebutuhan tersebut itu harus dibutuhkan suatu sarana atau media pembelajaran yang berupa aplikasi komputer. BAB I PENDAHULUAN Sebagai bangsa yang memiliki penduduk terbesar setelah China dan India, penduduk Indonesai terdiri dari berbagai agama dan suku bangsa yang memiliki bahasa berbeda-beda, akan tetapi disatukan oleh bahasa Indonesa yang dijadikan sebagai bahasa persatuan dan bahasa bagi pergaulan nasionalnya. Islam merupakan agama yang dianut oleh mayoritas penduduk Indonesia, oleh karenanya kebutuhan untuk mampu menguasai baca tulis Al Qur’an sebagai kitab suci agama Islam yang ditulis dengan bahasa Arab, menjadi kebutuhan yang penting dimiliki oleh muslim di Indonesia. Untuk menunjang kebutuhan mempelajari baca tulis huruf Arab, salah satu hal yang paling dibutuhkan adalah Transliterasi Arab-Latin atau alih huruf Arab iterasi huruf Arab-Latin dimaksudkan sebagai upaya untuk menyediakan kebutuhan mempelajari bahasa Arab dengan mudah khususnya yang akan belajar membaca tulisan Arab. Sebagaimana firman Artinya :“Bacalah dengan (menyebut) nama Tuhanmu yang Menciptakan,” (QS. Al-Alaq: 1). Ayat tersebut berkaitan dengan adanya perintah membaca, untuk memenuhi kebutuhan tersebut itu harus dibutuhkan suatu sarana atau media pembelajaran yang berupa aplikasi komputer. Hal inilah yang mendorong Sebagai bangsa yang memiliki penduduk terbesar setelah China dan India, penduduk Indonesai terdiri dari berbagai agama dan suku bangsa yang beda, akan tetapi disatukan oleh bahasa Indonesa bahasa bagi pergaulan nasionalnya. Islam merupakan agama yang dianut oleh mayoritas penduduk Indonesia, oleh karenanya kebutuhan untuk mampu menguasai baca tulis Al- Qur’an sebagai kitab suci agama Islam yang ditulis dengan bahasa Arab, ang penting dimiliki oleh muslim di Indonesia. Untuk menunjang kebutuhan mempelajari baca tulis huruf Arab, salah satu hal yang alih huruf Arab ke bagai upaya untuk dengan mudah khususnya Sebagaimana firman “Bacalah dengan (menyebut) nama Tuhanmu yang adanya perintah membaca, untuk memenuhi kebutuhan tersebut itu harus dibutuhkan suatu sarana atau media Hal inilah yang mendorong
  • 16. untuk merancang dan membangun Aplikasi literasi Arab-Latin. Dengan adanya Aplikasi ini diharapkan kepada siapa saja yang akan belajar membaca tulisan Arab tidak harus mencari guru, namun dengan kemajuan teknologi informasi yang ada saat ini, siapa saja dapat belajar melaui aplikasi yang ada di komputer, sehingga kebutuhan baca tulis Arab dapat dipelajari oleh siapa saja kapanpun dan dimanapun dia berada. Maka terbentuklah judul skripsi mengenai “Rancang Bangun Aplikasi Literasi Arab-Latin Dengan Menggunakan Pendekatan Operasi Concatenation (Penyambungan)”. 1.2 Rumusan Masalah Berdasarkan uraian pada latar belakang, didapatkan rumusan masalah yaitu bagaimana merancang dan membangun aplikasi literasi Arab-Latin dengan menggunakan pendekatan operasi concatenation (penyambungan) ? 1.3 Batasan Masalah Agar diperoleh hasil pembahasan yang sesuai dengan tujuan yang diharapkan, maka perlu diberikan batasan-batasan masalah yaitu : 1. Literasi yang digunakan adalah literasi arab ke latin. 2. Aplikasi Perangkat lunak ini menggunakan pendekatan operasi concatenation ( penyambungan ). 3. Aplikasi perangkat lunak ini dibuat dengan menggunakan bahasa pemrograman java. 4. Inputan didapatkan dari keyboard. 5. Transliterasi Arab-Latin meliputi ; Konsonan, Vokal, Maddah, Syaddah (Tasydid ), Hamzah, Ta’marbuttah, Kata sandang al-Qomariah. 1.4 Tujuan Penelitian
  • 17. Tujuan penelitian ini adalah untuk merancang dan membangun aplikasi literasi Arab-Latin dengan menggunakan pendekatan operasi concatenation (penyambungan) ? 1.5 Manfaat Penelitian Kegunaan yang dapat dihasilkan dari hasil penelitian dalam skripsi ini adalah: 1. Sebagai bahan acuan serta pembuka wawasan untuk masyarakat maupun akademisi agar dapat membaca bahasa Arab dengan mudah melalui media elektronik dalam hal ini komputer.. 2. Mempermudah dan mempercepat dalam literasi bahasa Arab ke Latin. 3. Memberikan kontribusi pada Ilmu Pengetahuan dan Teknologi dalam pemanfaatan aplikasi Teknologi Informasi dan dapat menjadi pendukung sistem pembelajaran. 1.6 Metode Penelitian Tahap-tahap yang dilakukan dalam mengerjakan tugas akhir ini adalah sebagai berikut: 1. Fase Perencanaan Fase perencanaan terdiri dari beberapa kegiatan, diantaranya : a. Studi kelayakan judul Pada studi kelayakan judul, dipilih judul yang cocok dengan kemampuan. Judul ini telah dikonsultasikan kepada para dosen Pembimbing dan disetujui. b. Pembuatan proposal
  • 18. Setelah didapatkan judul proses selanjutnya dibuat proposal untuk dilakukan pengujian. c. Seminar proposal Proposal yang sudah jadi dilakukan pengujian dengan diadakannya seminar proposal. 2. Fase Analisis a. Studi literature Langkah ini dilakukan dengan tujuan untuk mendapatkan referensi yang akan digunakan dalam pembahasan permasalahan sehingga dapat dibangun suatu konsep literasi Arab - latin. b. Pembuatan algoritma sederhana pada software literasi dengan pendekatan concatenation (penyambungan). 3. Fase Desain a. Desain output Desain awal yang digunakan untuk memperkirakan yang dihasilkan dari masalah yang diangkat. b. Desain input Dari desain hasil, dapat ditentukan apa saja yang dibutuhkan untuk didapat hasil yang diinginkan. c. Desain proses Setelah desain output dan input selesai, baru dilakukan desain untuk prosess digambarkan dengan diagram, diagram blok dan flowchart (grafis algoritma). d. Desain inteface
  • 19. Setelah semua selesai baru dibuat desain tampilan aplikasi. 4. Fase Implementasi Software yang digunakan untuk pengembangan aplikasi ini adalah : a. OS (Windows xp). b. Bahasa Pemrograman yang dapat mendukung design interface. c. Microsoft Word 2007 mendukung desain flowchart algoritma. Hardware yang digunakan adalah : a. PC/Komputer - Procesor : intel (R) 1.60 GHz. - Hardisk : 160 GHz - VGA : 64 MB - Memory : 512 Mb 5. Fase Ujicoba Pada tahap ini dilakukan pengujian terhadap program untuk melihat output yang dihasilkan huruf bila diberikan inputan huruf dalam bahasa Arab dan sistem secara keseluruhan. Proses uji coba ini diperlukan untuk memastikan bahwa sistem yang telah dibuat sudah benar, sesuai dengan karakteristik yang ditetapkan dan tidak ada kesalahan-kesalahan yang terkandung di dalamnya. 6. Pembuatan laporan tugas akhir. Tahap akhir dari pembuatan tugas akhir ini adalah membuat laporan dari yang telah dikerjakan selama proses pembuatan tugas akhir dan dijadikan sebagai dokumentasi tugas akhir. 1.7 Sistematika Penulisan
  • 20. Sistematika penulisan yang digunakan dalam penyusunan laporan skripsi ini adalah: BAB I PENDAHULUAN Bab ini berisi tentang latar belakang, rumusan masalah, batasan masalah, tujuan yang ingin dicapai, manfaat penelitian, metode pembahasan, serta sistematika penulisan. BAB II LANDASAN TEORI Bab ini berisi tentang teori-teori yang mendukung perancangan dan pembuatan aplikasi literasi arab latin dengan menggunakan pendekatan operasi concatenation (penyambungan). BAB III DESAIN DAN PERANCANGAN SISTEM Desain dan Perancangan, membahas tentang perancangan umum maupun uraian lebih lanjut mengenai perancangan sistem program dalam pembuatan perangkat lunak. Uraian perancangan sistem perangkat lunak ini meliputi perancangan data mengenai data input dan outputnya, perancangan proses mengenai bagaimana sistem akan bekerja dengan proses-proses tertentu, maupun perancangan antarmuka dalam desain dan implementasi yang akan digunakan dalam pembuatan laporan skripsi. BAB IV HASIL DAN PEMBAHASAN Hasil dan Implementasi, merupakan pembahasan dan implementasi program. Menjelaskan tentang sistem serta menguji sistem secara umum maupun terperinci. BAB V PENUTUP
  • 21. Bab ini berisi kesimpulan yang telah didapatkan dari hasil uji coba sistem dan analisisnya mengenai keterikatan dengan tujuan pembuatan sistem, dan selanjutnya akan dikemukakan saran-saran mengenai penggunaan sistem serta bahan masukan bagi rencana pengembangan proyek untuk masa yang akan datang.
  • 22. BAB II LANDASAN TEORI 2.1 Literasi Litersi yang dimaksudkan adalah kata transliterasi dan berasal dari bahasa inggris “Transliteration” biasa diterjemahkan sebagai alih huruf atau alih aksara. Badudu (2005: 351) mengartikan transliterasi sebagai penyalinan dengan mengganti huruf - huruf”(Solihin, 2008: 16). Dan International Organitation for Standarization (ISO) menyatakan : “Transliteration is the operation of representation of representing characters or sign of any alphabet by those of any other but this note refers only to transliteration of non-Latin alphabet into the Latin alphabet (alsotermed ‘Roman alphabet’)”(Eryono, 1993: 47). Jadi yang dimaksudkan dari pada transliterasi yaitu pengalihan atau penyalinan huruf- huruf dari bahasa satu kebahasa lain. Berdasarkan dari beberapa pengertian diatas yang menjadi bahan dasar dari penelitian ini adalah transliterasi Arab-Latin atau pengalihan dari huruf bahasa Arab ke huruf Latin. Sebelum melihat transliterasi Arab-Latin alangkah baiknya terlebih dahulu mengetahui sedikit tentang bahasa Arab tersebut. Dalam latar belakang bahasa Arab merupakan bahasa yang digunakan dalam menulis kitab suci Al-Qur’an yang dianut oleh seluruh umat Islam, itu berarti bahasa Arab mempunyai banyak keistimewaan sebagaimana dalam firman ALLAH SWT:
  • 23. Artinya : “Sesungguhnya Kami menurunkannya berupa Al Quran dengan berbahasa Arab, agar kamu memahaminya.” (QS. Yusuf:2) Secara jelas ayat ini menyatakan bahwa Al-Qur’an itu berbahasa Arab, dan ALLAH SWT yang memilih bahasa itu. Jika demikian, wahyu Ilahi kepada Nabi Muhammad saw. Yang disampaikan ini, bukan hanya penyampaian kandungan maknanya, tetapi sekaligus dengan redaksi, kata demi kata, yang kesemuanya dipilih dan disusun langsung oleh ALLAH SWT (Sihab, 2002:379). Dan keunikan bahasa Arab dibanding dengan bahasa yang lain, kata-kata bahasa Arab pada umumnya berdasar tiga huruf mati yang dapat dibentuk dengan berbagai bentuk, misal kata yang memiliki makna singa ada 500 kata, dan ada juga menurut pengarang kamus al-Muhith ada kata madu yang mempunyai makna 80 kata(Sihab, 2002:380). Pada paragraf diatas diuraikan keistimewaan bahasa Arab beserta firman ALLAH, kembali pada pokok pembahasan yaitu transliterasi Arab- Latin atau pengalihan huruf Arab ke huruf Latin, yang digunakan oleh bangsa Indonesia untuk mempelajari bahasa Arab tersebut, dan bangsa Indonesia mempunyai pedoman Transliterasi yang baku. Pedoman transliterasi yang baku meliputi : Konsonan, vokal, maddah, ta’marbutoh, syaddah (tasydid), kata sandang, hamzah, penulisan kata, huruf kapital, dan tajwid (Depag, 2003:3). Dalam batasan masalah ada beberapa penjelasan yang ditransliterasikan didalam melakukan penelitian ini dan tabel literasi sebagai berikut:
  • 24. 1. Konsonan Fonem konsonan bahasa Arab yang dalam sistem tulisan Arab dilambangkan dengan hurut dalam transliterasi ini sebagian dilambangkan dengan huruf dan sebagian dilambangkan dengan tanda, dan sebagian lain lagi dilambangkan dengan huruf dan tanda sekaligus. 2. Vokal tunggal dan vokal rangkap Vokal bahasa Arab. seperti vokal bahasa Indonesia, terdiri dari vokal tunggal atau monoftong dan vokal rangkap atau diftong.Vokal tunggal bahasa Arab yang lambangnya berupa tanda atau harkat. Vokal rangkap bahasa Arab yang lambangnya berupa gabungan antara harkat dan huruf, seperti contoh; Vokal tunggal : َ ََ‫آ‬ - kataba Vokal rangkap: َ‫ل‬ْ َ‫ه‬ - Haula 3. Maddah Maddab atau vokal panjang yang lambangnya berupa harkat dan huruf translirerasinva herupa huruf dan tanda, contoh: َ‫ل‬ َ - qāla 4. Syaddab (Tasydid) Syaddab atan tasydid yang dalam sistern tulisan Arab dilambangkan dengan sebuah tanda, tanda syaddah atau tanda tasydid. Dalam transliterasi ini tanda syaddah tersebut dilambangkan dengan huruf, yaitu huruf yang sama dengan huruf yang diberi tanda syaddah itu, contoh ; َ‫ل‬ َ - nazzala
  • 25. 5. Hamzah Di nyatakan di dalam tabel 2.1 bahwa hamzah ditransliterasikan dengan apostrof. Namun, itu hanya terletak di tengah dan di akhir kata. Bila hamzah itu terletak di awal kata, ia tidak dilambangkan karena dalam tulisan Arab berupa alif. ُ‫ت‬ْ ِ ُ‫ا‬ - umirtu ٌ‫ء‬ْ َ - syai'un Arab Nama Latin Arab Nama Latin ‫ا‬ Alif Tidak dilambangkan ‫ق‬ Qa Q ‫ب‬ Ba’ B ‫ك‬ Kaf K ‫ت‬ Ta’ T ‫ل‬ Lam L ‫ث‬ Tsa’ Ś ‫م‬ Mim M ‫ج‬ Jim J ‫ن‬ Nun N ‫ح‬ Ĥ Ĥ ‫و‬ Wau W ‫خ‬ Kha KH Ha H ‫د‬ Dal D ‫ء‬ Hamzah …'… ‫ذ‬ śal ś ‫ي‬ Ya’ Y ‫ر‬ Ra’ R َ Fathah A ‫ز‬ Zai Z ِ Kasrah I ‫س‬ Sin S ُ Dammah U ‫ش‬ Syin SY ً Fathahtain AN ‫ص‬ Sad Ş ٍ Kasrahtain IN ‫ض‬ Dad ð ٌ Dammahtain UN ‫ط‬ Ta Ț ‫ي‬ Fathah dan ya’ AI ‫ظ‬ Za Ž ‫و‬ Fathah dan wau AU ‫ع‬ Ain …‘… ‫ى‬ ‫ا‬ Fathah dan alif atau ya’ Ā ‫غ‬ Gain G ‫ي‬ Kasroh dan ya’ Ī ‫ف‬ fa F ‫و‬ ُ Dhammah dan wau Ū ‫ة‬ Ta’ marbutah T ْ‫ة‬ Ta’ marbutah disukun H Tabel 2.1 Pedoman Transliterasi Arab-Latin
  • 26. Berdasarkan pada tabel Pedoman transliterasi 2.1 pada halaman sebelumnya telah dirancang suatu sistem Aplikasi Literasi Arab-Latin. Dimana suatu sistem translitertion mengambil masuk suatu karakter dalam sumber bahasa dan menghasilkan sebuah karakter dalam bahasa target keluaran. Proses dapat conceptualized seperti dua tingkatan tentang memecahkan kode segmentasi sumber ke dalam transliteration unit dan berhubungan sumber bahasa transliteration unit dengan unit di dalam target bahasa, dengan pemecahan yang berbeda kombinasi kelurusan dan unit yang memetakan. Permasalahan dalam mesin transliteration telah dipelajari secara ekstensif di dalam paradigma keramaian model saluran(Ekbal, 2006:193). Jadi ketika ingin membuat sistem Transliterasi dari bahasa Arab ke bahasa Latin mengambil masuk karakter Arab dan menghasilkan keluaran karakter Latin. Untuk menunjang dalam pembuatan Aplikasi Literasi Arab-Latin ini maka diperlukan beberapa landasan teori pendukung yang bisa memperlancar dalam pengerjaan penelitian ini. Landasan-landasan teori tersebut akan dijelaskan pada sub bab yang selanjutnya. 2.2 Algoritma dan Flowchart Algoritma menjadi landasan bagi penulisan program untuk memecahkan masalah. Usaha yang dilakukan agar solusi suatu masalah dapat diperoleh adalah membuat suatu proses atau prosedur yang merupakan urutan dan Iangkah-Iangkah atau instruksi-instruksi yang berintegrasi. Langkah-
  • 27. langkah instruksi tersebut secara umum dikenal dengan Algoritma. Istilah tersebut pertama kali dikenalkan oleh seorang Ahli Matematika yang bernama Abu Ja’far Muhammad Ibnu Musa Al Khawarizmi. Selain itu ada juga definisi menurut suatu kamus bahasa Webster Dictionary bahwa Algoritma adalah suatu metode khusus yang digunakan untuk menyelesaikan suatu masaah yang nyata(Yulikuspartono, 2004:2). Algoritma adalah deskripsi langkah-Iangkah penyelesaian masalah yang tersusun secara logis atau urutan logis pengambilan keputusan untuk pemecahan suatu masalah dan ditulis dengan notasi khusus, notasi mudah dimengerti, dan notasi dapat diterjemahkan menjadi sintaks suatu bahasa pemrograman (Limbong, 2006: 141). Disini dibahas algoritma secara umum: asal usul kata, syarat, jenis proses, tahapan algoritma dan penulisan program, penulisan algoritma dengan menggunakan flowchart dan bahasa Indonesia Terstruktur, serta implementasi algoritma menjadi program. Seperti, ketika ada masalah yang timbul perlu dicarikan pemecahannya sehingga memberikan solusi yang benar atau dianggap paling benar. Berbicara mengenai pemecahan masalah dengan menggunakan komputer maka diperlukan algoritma seperti ditunjukkan pada gambar 2.1. Gambar 2.1 Algoritma dalam kerangka pemecahan masalah
  • 28. Secara umum algoritma ialah sejumlah Iangkah komputasi yang mengubah masukan (input) menjadi keluaran (output) yang benar. Algoritma yang masih berupa logika pemecahan masalah selanjutnya diubah menjadi program komputer (disebut source code) menurut bahasa pemrograman tertentu, misalnya bahasa C. Selanjutnya source code ini perlu dikompilasi oleh penerjemah (compiler, interpreter) menjadi kode-kode yang dapat dimengerti dan dijalankan mesin komputer. Kode ini disebut executable code. Pada saat executable code dijalankan data masukan dibaca melalui pengetikan keyboard atau dibaca dari file data, diolah, dan informasi dihasilkan berupa tampilan di layar monitor, cetak pada printer, atau pembentukan file data.(Ngoen, 2006:4) 2.2.1 Syarat Algoritma Menurut Donald F. Knuth sebuah algoritma harus memenuhi persyaratan: 1. Finiteness Algoritma harus berakhir (terminate) setelah melakukan sejumlah langkah proses. 2. Definiteness Setiap langkah algoritma harus didefinisikan dengan tepat dan tidak menimbulkan makna ganda (ambiguous). Oleh karena itu, cara paling tepat untuk menuliskan algoritma adalah dengan menggunakan formal language (bahasa pemrograman komputer).
  • 29. 3. Input Setiap algoritma memerlukan data sebagai masukan untuk diolah. Algoritma yang tidak memerlukan masukan apa-apa sebetulnya tidak begitu bermanfaat karena jumlah kasus yang dapat diselesaikan juga terbatas. 4. Output Setiap algoritma memberikan satu atau beberapa hasil keluaran. 5. Effectiveness Langkah-langkah algoritma dikerjakan dalam waktu yang wajar (Ngoen, 2006: 5). 2.2.2 Flowchart Dalam pembuatan program tersebut, alangkah baiknya kalau lebih dulu dibuatkan logika atau urut-urutan instruksi program tersebut dalam suatu diagram yang disebut diagram alur atau FlowChart (Yulikuspartono, 2004: 30). Flowchart adalah representasi grafis dari suatu algoritma, yang berbentuk blok, lingkaran, elips, serta garis alur (panah) seperti pada gambar 2.2 ( Hermawan, 2004:86). Flowchart dapat berupa satu diagram alur lengkap dari suatu aktivitas dan bisa juga menggambarkan hanya bagian tertentu dari aktivitas tersebut (Hermawan, 2004:88). Hal ini dilakukan bila algoritma begitu kompleks dan detail, sehingga satu halaman kertas tidak mampu untuk melukiskan keseluruhan flowchart. Bila
  • 30. menggambarkan keseluruhan aktivitas, flowchart tersebut dimulai dengan blok “Mulai” dan diakhiri dengan blok “Selesai”. Bila hanya sebagian, flowchart dimulai dan diakhiri dengan lingkaran kecil serta diberi notasi abjad atau angka yang menunjukkan bagian tersebut merupakan sambungan dan bagian yang lain. flowchart dibuat berdasarkan representasi grafis seperti pada gambar 2.2. Gambar 2.2 Representasi Grafis Flowchart Simbol-Simbol Dasar Proses Control Dokumen Data Predefined Process Data Tersimpan Internal Storage Data Sekuensial Input Manual Kartu Paper Tape Display Operasi Manual inisialisasi Mulai / selesai Batas perulangan Sambungan dan Konektor Sambungan Bagian Pada Halaman Yang Sama Sambungan Bagian Pada Halaman Berbeda Konektor (Control Transfer)
  • 31. 2.3 Operasi concatenation (penyambungan) Definisikan sebuah untai (kata) atau string atas sebuah himpunan A, dan berikan sebuah contoh. Misalkan A adalah sebuah abjad, yaitu, sebuah himpunan yang elemen-elemennya disebut huruf. Sebuah kata (string) w dan A adalah suatu barisan huruf-huruf yang berhingga. Contoh, u = ababb dan v = accbaa adalah barisan huruf atau huruf-huruf dan abjad A = {a, b, c}. Barisan hampa (kosong), dinyatakan dengan LLLL atau 1, juga didefinisikan sebagai sebuah kata dan A. Biasanya menyingkat notasi dengan menuliskan ܽଶ untuk aa, ܽଷ untuk aaa dan seterusnya. Sehingga, untuk kata di atas, u = abaܾଶ dan v = aܿଶ bܽଶ . Himpunan dan semua kata atas A dinyatakan dengan A*. Definisikan operasi penyambungan (concatenation), dan berikan sebuah contoh. Perhatikan dua kata u dan v dan sebuah abjad A. Concatenation (penyambungan) dan u dan v ditulis uv, adalah kata-kata dan A yang didapatkan dengan menuliskan huruf-huruf dari u diikuti oleh huruf-huruf dan v. Contoh, dari soal 6.1, untuk kata u = abaܾଶ dan v = aܿଶ bܽଶ , uv = abaܾଶ aܿଶ bܽଶ dan vu = accbaaababb Sehingga, concatenation (penyambungan) tidak komutatif. Juga didefinisikan ‫ݑ‬ଶ = uu, ‫ݑ‬ଷ dan, secara umum, ‫ݑ‬௡ାଵ =‫ݑ‬௡ u ( Lipschutz, 2002 : 230).
  • 32. 2.4 Bahasa Pemrograman Java 2.4.1 Bahasa Java 1. Definisi Java Secara umum Java dijelaskan dengan singkat karena akan lebih dipahami pada saat menggeluti dan menggunakannya.“Java adalah suatu teknologi di dunia software komputer. Selain merupakan suatu bahasa pemrograman, Java juga merupakan suatu platform”. Telah didefinisikan secara ringkas, dan berikut ini akan dijelaskan lebih lanjut: “Java merupakan teknologi di mana teknologi tersebut mencakup Java sebagai bahasa pemrograman yang memiliki sintaks dan aturan pemrograman tersendiri, juga mencakup Java sebagai platform di mana teknologi ini memiliki virtual machine dan library yang diperlukan untuk menulis dan menjalankan program yang ditulis dengan bahasa pemrograman Java” ( Rickyanto, 2003: 2). 2. Sejarah Java Java diciptakan oleh suatu tim yang dipimpin oleh Patrick Naughton dan James Gosling dalam suatu proyek dari Sun Microsystem yang memiliki kode Green dengan tujuan untuk menghasilkan bahasa komputer sederhana yang dapat dijalankan di peralatan sederhana dengan tidak terikat pada arsitektur tertentu. Mula-mula James Gosling menyebut bahasa pemrograman yang dihasilkannya dengan OAK, tetapi karena OAK sendiri merupakan nama dari bahasa pemrograman komputer yang sudah ada maka
  • 33. kemudian Sun mengubahnya menjadi Java. Akhirnya setelah melalui beberapa transformasi dan proses, Sun akhirnya meluncurkan browser dan Java yang disebut Hot Java yang mampu menjalankan applet. Setelah itu teknologi Java diadopsi oleh Netscape yang memungkinkan program Java dijalankan di browser Netscape sejak Januari 1996 yang kemudian diikuti oleh Internet Explorer. Karena keunikan dan kelebihannya, teknologi Java mulai menarik banyak vendor terkemuka seperti IBM, Symantec, Inprise, dll. Akhirnya Sun merilis versi awal Java secara resmi pada awal 1996 yang kemudian terus berkembang hingga muncul JDK 1.1 kemudian JDK 1.2 yang mengandung banyak peningkatan dan perbaikan sehingga mulai versi ini Java disebut Java 2. Perubahan yang utama adalah adanya Swing yang merupakan teknologi GUI (Graphical User Interface) yang mampu menghasilkan aplikasi window yang benar-benar portabel. Pada tahun-tahun berikutnya (1998-1999) lahirlah teknologi J2EE (Java 2 Enterprise Edition) yang berbasis J2SE yang diawali dengan servlet dan EJB kemudian diikuti JSP. Kelebihan Java di lingkungan network dan terdistribusi serta kemampuan multithreading mengakibatkan Java menjadi cepat populer di lingkungan server side. Terakhir teknologi Java melahirkan J2ME (Java 2 Micro Edition) yang sudah diadopsi oleh Nokia, Siemens, SonyEricsson, Motorola, Samsung untuk menghasilkan aplikasi mobile baik games
  • 34. maupun software bisnis dan berbagai jenis software lain yang dapat dijalankan di peralatan mobile seperti ponsel ( Rickyanto, 2003: 3). 3. Kelebihan Java Mengapa Java sering dibicarakan dan memiliki daya tarik bagi para programmer? Karena Java merupakan suatu teknologi yang unik dan revolusioner dan merupakan teknologi pertama di dunia software yang memiliki semboyan “write once, run anywhere”. Semboyan tersebut telah terbukti karena banyak program Java dapat dijalankan di berbagai platform Sistem Operasi, seperti Linux, Windows maupun Unix. Java telah mengatasi masalah portabilitas yang sering menjadi kendala dan hambatan dalam pembuatan suatu aplikasi software. Mengapa? Karena software developer harus mengeluarkan banyak tenaga, pikiran dan waktu untuk menghasilkan aplikasi yang dapat berjalan di operating system atau platform lain. Java dapat mengatasi kendala tersebut karena program Java dapat dijalankan secara langsung tanpa banyak perubahan berarti di sistem operasi atau platform lain. Java juga didesain untuk menghasilkan program dengan seminimal mungkin bug karena kemampuan sebagai berikut: a. Java didesain untuk menghilangkan alokasi memori dan dealokasi memori secara manual. Java memiliki garbage collection otomatis yang mencegah adanya memory leak. Memory leak
  • 35. adalah masalah yang sering dihadapi programmer C dan C++ di mana memori yang digunakan untuk objek atau variabel yang sudah tidak digunakan tidak didealokasikan sehingga menyebabkan kehabisan memori karena proses alokasi maupun dealokasi yang tidak diatur dengan baik. b. Java memiliki array yang tidak memerlukan pointer sehingga memudahkan para programmer. c. Java menghilangkan banyak kebingungan apabila terjadi proses assignment (pemberian nilai) pada statemen kondisional seperti ini : if (varnya=5) Kode di atas menyebabkan program Java tidak dapat dikompilasi karena Java membedakan tanda = yang digunakan untuk pemberian nilai dan untuk pengecekan kondisi True atau False yang harus menggunakan tanda = ganda (= =). d. Java menghilangkan multiple inheritance pada C++ dan menggunakan interface yang memiliki kemampuan yang sama tetapi lebih sederhana( Rickyanto, 2003: 5). 4. Karakteristik Java Secara singkat, karakteristik Java adalah: a. Sederhana Java tidak memiliki sintaks yang aneh tetapi banyak menggunakan sintaks C++ yang sudah banyak dikenal sehingga
  • 36. Java tidak menyulitkan bagi para programmer. Bahkan Java memberikan banyak keunggulan dan kemudahan dibanding C++. b. Berorientasi objek Java merupakan pemrograman berorientasi objek yang murni. Dalam pemrograman Java semua adalah objek, terkecuali tipe data primitif. c. Dapat didistribusikan dengan mudah Sifat terdistribusi dari Java sangat tampak sebagai applet dan library yang mampu bekerja dalam Jaringan dan bekerja dengan objek terdistribusi (RMI) dengan sangat baik. Saat ini Java juga memiliki kemampuan untuk server side processing, yaitu teknologi Java Servlet dan Java Server Pages. d. Aman Aman karena program Java memiliki library security serta policy yang membatasi akses applet di komputer client. e. Diinterpretasi oleh interpreter Java memerlukan virtual machine yang bertindak sebagai interpreter yang menterjemahkan bytecode (file class) menjadi bahasa mesin yang dimengerti oleh komputer host. f. Portabel Portabel karena Java dapat dijalankan di berbagai platform tanpa perubahan kode sama sekali.
  • 37. g. Multithreading Java memiliki kemampuan untuk menangani dan menjalankan banyak thread sekaligus. h. Dinamis Java merupakan teknologi yang terus berkembang, dan hal ini tampak nyata sekali dengan library yang terus ditingkatkan kemampuan dan kelengkapannya. Bahkan Java saat ini telah menjadi teknologi handal untuk aplikasi mobile dengan adanya Java 2 Micro Edition. i. Netral terhadap arsitektur hardware Java dapat dijalankan dengan baik pada komputer yang memiliki arsitektur berbeda-beda. j. Robust Java merupakan teknologi yang mampu menolong programmer untuk menghasilkan program secara cepat dan handal karena Java mencegah adanya memory leaking, meniadakan pointer (yang merupakan keharusan pada programmer C dan C++) serta mencegah berbagai error yang mungkin terjadi dengan adanya berbagai proses pengecekan awal pada kompilasi( Rickyanto, 2003: 6). 5. Java Saat ini Saat ini setiap dapat ditemukan berbagai applet yang dapat diakses di browser web, baik games, aplikasi bisnis maupun applet untuk animasi dan interaktifitas. Walaupun berbagai aplikasi game,
  • 38. animasi dan interaktifitas juga dapat dihasilkan oleh teknologi Flash, tetapi applet Java tetap memiliki kelebihan dan kemampuan yang tidak dimiliki oleh Flash sehingga applet Java masih banyak digunakan di internet. Untuk memberikan gambaran teknologi Java saat ini untuk teknologi enterprise, yaitu J2EE, maka Anda dapat menemukan bahwa IBM, Oracle telah mengadopsi teknologi ini secara besar- besaran seperti yang terlihat pada implementasi dan pemanfaatan Java dalam database dan software-software. IBM memiliki application server WebSphere yang dibangun dari teknologi Java. Oracle pun memiliki application server yang menggunakan teknologi Java. Selain dari IBM, Oracle saat ini memiliki puluhan application server dengan teknologi Java dan berbagai vendor, di mana yang paling menguasai pasar saat itu adalah BEA WebLogic yang telah mencapai versi 7. Karena kelebihan Java yang menonjol adalah kemampuannya di networking, multithreading, serta lingkungan terdistribusi maka Java dalam waktu singkat menjadi bintang utama di pemrosesan server side dan aplikasi enterprise. Bahkan Web Service yang merupakan teknologi software, di mana komponen-komponennya bekerja pada lingkungan terdistribusi dan remote, juga dapat dihasilkan dengan menggunakan teknologi Java. Selain aplikasi desktop, applet, dan J2EE, saat ini teknologi Java, khususnya J2ME, sudah menghasilkan berbagai aplikasi dan
  • 39. game di berbagai ponsel seperti Siemens SL45i, Siemens M50, Nokia 7210, dan Nokia 7650. Berbagai tipe ponsel dan berbagai vendor juga sudah menerapkan teknologi Java. Penggunaan Java untuk kartu pintar (smart card) juga telah digunakan dan dikembangkan oleh beberapa vendor ( Rickyanto, 2003: 8). 2.4.2 Variabel dan Tipe data 1. Definisi dan Jenis Variabel Variabel adalah bagian dari program yang digunakan untuk menyimpan data. Sebagai tempat menyimpan data, variabel harus dideklarasikan, yaitu diberi tipe data, nama variabel, dan dapat juga diberi nilai awal (inisial) (Hermawan, 2004: 51). Ada tujuh macam variabel, yaitu: a. Variabel Kelas Adalah variabel yang dideklarasikan di dalam kelas dan diberi modifier static. Sifat dari variabel static ini adalah melekat pada kelas dan tidak terpengaruh oleh proses Instansiasi. Dengan demikian, variabel ini tidak dapat dimiliki dan diakses oleh objek yang diinstans dari kelas tersebut. b. Variabel Instans (Instance) Adalah variabel yang dideklarasikan di dalam kelas dan tidak memiliki modifier static. Berbeda dengan variabel kelas, pada proses instansiasi kelas menjadi objek, variabel Instans ini akan ikut dimiliki dan dapat diakses oleh objek.
  • 40. c. Komponen Array Array adalah deretan variabel yang bertipe sama dan dianggap sebagai suatu kelompok. Meskipun merupakan satu kelompok, masing-masing anggotanya memiliki indeks, sehingga dapat diakses secara sendiri-sendiri. d. Parameter Method Adalah variabel yang berfungsi sebagai argumen input. Variabel ini memiliki life time hanya selama Interpreter memanggil dan mengeksekusi method tersebut. Setelah proses eksekusi selesai, variabel ini akan dihapuskan. e. Parameter Konstruktor Adalah nilai argumen yang dilewatkan pada konstruktor. f. Parameter Exception Handler Adalah variabel yang tercipta setiap kali Exception terjadi dan ditangkap oleh catch pada blok try-catch. g. Variabel Lokal dalam Blok Adalah variabel yang dideklarasikan secara lokal untuk suatu blok, misalnya variabel inisialisasi, terminasi dan increment pada perulangan, serta variabel yang berada di dalam blok statement tersebut. Mendeklarasikan variabel pada hakikatnya adalah memberitahu Kompiler untuk mengalokasikan sejumlah blok memory yang sesuai dengan tipe data yang akan digunakan. Pada saat mendeklarasikan variabel, Anda memberi nama variabel tersebut serta menentukan tipe datanya (Hermawan, 2004: 52).
  • 41. Arab Unicode Arab Unicode ‫ا‬ u0627 ‫ق‬ u0642 ‫ب‬ u0628 ‫ك‬ u0643 ‫ت‬ u062A ‫ل‬ u0644 ‫ث‬ u062B ‫م‬ u0645 ‫ج‬ u062C ‫ن‬ u0646 ‫ح‬ u0124 ‫و‬ u0648 ‫خ‬ u062E u0647 ‫د‬ u062F ‫ء‬ u0621 ‫ذ‬ u0630 ‫ي‬ u064A ‫ر‬ u0631 َ u064E ‫ز‬ u0632 ِ u0650 ‫س‬ u0633 ُ u064F ‫ش‬ u0634 ً u064B ‫ص‬ u0635 ٍ u064D ‫ض‬ u0636 ٌ u064C ‫ط‬ u0637 ‫ى‬ u0649 ‫ظ‬ u0638 Ś u015A ‫ع‬ u0639 Ĥ u0124 ‫غ‬ u063A ś u017B ‫ف‬ u0641 Ş u015E ‫ة‬ u0629 Ā u0100 Ukuran unit memory terkecil untuk menyimpan data adalah Byte. Satu Byte sama dengan 8 bit, dan ini cukup untuk merepresentasikan satu karakter data. Ditinjau dari cara mengkodekan karakter, ada dua tipe data, masing-masing dikeluarkan oleh asosiasi komputer internasional yang berbeda, yaitu kode EBCDIC dan ASCII (Hermawan, 2004: 52).. Pada umumnya tipe karakter data yang digunakan saat ini adalah ASCII, walaupun Java mengenali sejumlah kumpulan karakter, seperti ASCII, tapi Java menyukai Unicode. Seperti pada Tabel 2.2 Unicode Arab
  • 42. penelitian ini dalam pembacaan karakter Arab memakai Unicode seperti pada Tabel 2.2. 2. Penamaan Variabel Dalam menamakan suatu variabel, perlu diperhatikan aturan- aturan sebagai berikut: Aturan dasar itu bersifat harus diikuti adalah: a. Dimulai dengan abjad (a,b,c,d,e...) atau karakter underscore ( _ ) atau tanda dollar ( $). Nama variabel tidak dapat dimulai dengan bilangan (0,1,2...). Setelah karakter pertama, dapat diikuti kombinasi abjad, underscore, dollar, atau bilangan. b. Tidak boleh menggunakan reserved keyword dalam Java (public, class, boolean,...). c. Tidak boleh menggunakan operator (+, -,=). d. Java bersifat case sensitive (membedakan huruf kecil dan kapital), sehingga abjad “a” dan “A” diperlakukan sebagai dua variabel yang berbeda. Aturan Konvensi (bersifat boleh diikuti atau tidak) sebagai berikut: a. Apabila nama variabel hanya terdiri dari satu abjad atau satu kata, maka semua abjad dituliskan sebagai huruf kecil. Contoh: “A”, “x”, “warna”, “nama”. b. Bila nama variabel terdiri dari dua kata atau lebih, kedua kata itu digabungkan. Huruf pertama dari kata pertama sebaiknya huruf kecil, sedangkan huruf pertama kata kedua dan kata berikutnya
  • 43. sebaiknya huruf kapital. Contoh: “radiusLingkaran”, “gajiKaryawan” Bentuk Umum: contoh: int a; // variabel “a” sebagai tipe integer double gajiKaryawan; // variabel “gajiKaryawan” sebagai tipe double String nama; // variabel “nama” sebagai tipe string Deklarasi dapat dilakukan sekaligus sebagai satu statement dan di antara variabel tersebut dipisahkan dengan koma untuk variabel- variabel yang bertipe data sama (Hermawan, 2004: 53).. 3. Tipe data primitif Java mengelompokkan tipe data primitif ke dalam tiga kategori: tipe numerik, tipe karakter (juga disebut data alpanumerik), dan tipe boolean. Masing-masing tipe ini melayani kegunaannya sendiri dalam sebuah program Java. Type data Range Ukuran Memory (1Byte=8Bit) byte െ2଻ (128) s/d 127 8-bit signed short െ2ଵହ (-32768) s/d 2ଵହ (32767) 16-bit signed int െ2ଷଵ s/d 2ଷଵ 32-bit signed long െ2଺ଷ s/d 2଺ଷ float െ3.4E38 s/d 3.4E38 32-bit IEEE 754 double െ1.7E308 s/d 1.7E308 64-bit IEEE 754 char singgel character, assign with boolean true or false Sebelum mendekati pemrograman Java yang kompleks, juga harus punya konsep yang jelas terhadap ketiga kategori data Java, dan pada tipe spesifik masing-masing. tipedata namaVariabel Tabel 2.3 Tipe data di Java
  • 44. a. Data numerik Banyak aplikasi Java menjalankan pengolahan sejumlah besar data penting. Karenanya, topik-topik yang berhubungan dengan penyimpanan dan manipulasi data numerik adalah penting. Digunakan data numerik untuk melakukan operasi dan perhitungan matematis. Dalam data numerik, simbol bilangan menyatakan kuantitas. Konsep ini mengecualikan penggunaan bilangan sebagai designator, sebagai contoh, nomor telepon atau nomor keamanan sosial. Data numerik tampak dalam kode Java dalam bentuk variabel atau konstanta. Selain itu, Anda bisa memasukkan data numerik secara eksplisit dalam sebuah operasi. Dalam tabel tipe data, data numerik digolongkan ke dalam tipe integral dan tipe titik- mengambang. Kadang memanggil tipe titik-mengambang real. Setiap tipe data sesuai dengan kategori bilangan; sebagai contoh, Anda bisa menggunakan tipe data integer untuk menyatakan seluruh bilangan, dan tipe data titik-mengambang untuk menyajikan pecahan. Untuk setiap tipe data, Java menyediakan sejumlah penyebut tipe yang menentukan karakteristik dan kisaran nilai-nilai yang bisa ditampilkan (Sanchez, 2002: 59).
  • 45. b. Data karakter Data karakter (alpanumerik) mengacu pada item-item yang bertindak sebagai designator. Siapa saja menggunakan huruf alpabet dan simbol numerik lain sebagai designator. Juga, simbol numerik murni adalah sah dalam data alpanumerik. Demikian pula dengan nomor telepon, alamat jalan, kode zip, nomor keamanan sosial, banyak designator lainnya. Dalam Java, data alpanumerik dimiliki oleh tipe data Char atau kelas String. Java menganggap data Char sebagai sebuah integer tak-berlambang 16-bit, dengan nilai dalam kisaran 0 sampai 65.535, atau sebagai sebuah karakter Unicode tunggal. Ini artinya char dapat digunakan sebagai tipe data untuk menyajikan integer tidak-berlambang dalam kisaran 0 sampai 65.535, dan ia mendukung aritmatika dasar pada nilai-nilai ini. Biasanya lebih disukai menggunakan tipe data numerik untuk keperluan ini dan membiarkan tipe Char untuk data alpanumerik. Dalam pendeklarasian obyek-obyek String seperti dibawah ini: String aCity = “Malang”; c. Data boolean Penggolongan tipe data ketiga dari bahasa Java adalah boolean, yang direpresentasikan tipe data tunggal, juga disebut boolean. Tipe data boolean mengambil namanya dari ahli logika Inggris George Boole yang pada abad ke sembilan belas, mengemukakan hubungan antara matematika dan logika.
  • 46. Variabel boolean berisi dua nilai: benar dan salah. diketik nilai-nilai ini dalam huruf kecil. Umumnya, variabel boolean mewakili elemen program yang menunjukkan validitas pernyataan atau proposisi. Bahwa mendeklarasikan dan menginisialisasi sama dengan alphanumerik(Sanchez, 2002: 60). Seperti contoh: boolean switchlsOn = true; 2.4.3 Operator Operator Java merupakan karakter khusus yang berupa simbol atau tanda yang memerintahkan compiler untuk melakukan berbagai operasi terhadap sejumlah operand. Perintah operasi dispesifikasikan oleh operator, dimana operand-nya adalah variabel, pernyataan, atau besaran literal. Operator yang dibahas pada bagian ini adalah operator aritmatika, increment dan decrement, assignment (penugasan), relasi, logical, dan bitwise. 1. Operator Aritmatika Operator Penggunaan Deskripsi + Op1 + Op2 Menambahkan Op1 dengan Op2 - Op1 – Op2 Mengurangkan Op1 dengan Op2 * Op1 * Op2 Mengalikan Op1 dengan Op2 / Op1 / Op2 Membagi Op1 dengan Op2 % Op1 % Op2 Menghasilkan sisa hasil bagi Op1 dengan Op2 Ket: Op adalah operand Tabel 2.4 Operator Aritmatika
  • 47. Sama halnya dengan semua bahasa pemrograman, Java menyediakan operator-operator aritmatika untuk manipulasi variabel data numerik. 2. Operator Increment dan Decrement Operator Increment dan Decrement digunakan untuk menaikan atau menurunkan suatu nilai integer (bilangan bulat) sebanyak satu satuan, dan hanya dapat digunakan pada variabel. Ada dua versi operator increment maupun decrement, yaitu prefix dan postfix. Prefix berarti operator digunakan sebelum variabel atau ekspresi, dan postfix berarti operator digunakan sesudahnya. Operator Penggunaan Deskripsi ++ Op++ Op dinaikkan nilainya 1 setelah dilakukan operasi pada Op ++Op Op dinaikkan nilainya 1 sebelum dilakukan operasi pada Op -- Op-- Op diturunkan nilainya 1 setelah dilakukan operasi pada Op --Op Op diturunkan nilainya 1 sebelum dilakukan operasi pada Op 3. Operator Assignment ( Penugasan ) Operator assignment dalam Java digunakan untuk memberikan sebuah nilai ke sebuah variabel. Operator assignment hanya berupa ‘=’, namun selain itu dalam Java dikenal beberapa shortcut assignment operator yang penting, yang digambarkan dalam tabel 2.6 berikut : Tabel 2.5 Increment dan Decrement
  • 48. Operator Penggunaan Deskripsi += Op1 += Op2 Op1 = Op1 + Op2 -= Op1 -= Op2 Op1 = Op1 – Op2 *= Op1 *= Op2 Op1 = Op1 * Op2 /= Op1 /= Op2 Op1 = Op1 / Op2 %= Op1 %= Op2 Op1 = Op1 % Op2 &= Op1 &= Op2 Op1 = Op1 & Op2 ¦= Op1 ¦= Op2 Op1 = Op1 ¦ Op2 ^= Op1 ^= Op2 Op1 = Op1 ^ Op2 <<= Op1 <<= Op2 Op1 = Op1 << Op2 >>= Op1 >>= Op2 Op1 = Op1 >> Op2 >>>= Op1 >>>= Op2 Op1 = Op1 >>> Op2 4. Operator relasi Operator relasi dalam Java digunakan untuk menghasilkan nilai boolean yang sering digunakan untuk mengatur alur jalannya sebuah program. Operator Penggunaan Deskripsi > Op1 > Op2 Menghasilkan true jika Op1 lebih besar dari Op2 < Op1 < Op2 Menghasilkan true jika Op1 lebih kecil dari Op2 >= Op1 >= Op2 Menghasilkan true jika Op1 lebih besar atau sama dengan Op2 <= Op1 <= Op2 Menghasilkan true jika Op1 lebih kecil atau sama dengan Op2 == Op1 == Op2 Menghasilkan true jika Op1 sama dengan Op2 != Op1 != Op2 Menghasilkan true jika Op1 tidak sama dengan Op2 Tabel 2.6 Assignment ( Penugasan ) Tabel 2.7 Operator relasi
  • 49. 5. Operator Logical A B A ¦¦ B A && B True True True True True False True False False True True False False False False False Operator ini digunakan untuk ekspresi logik yang menghasilkan nilai boolean. Operator-operator yang digunakan adalah AND ( && ), OR ( ¦ ¦ ) dan NOT ( ! ). 6. Operator Bitwise Operator ini dalam Java digunakan untuk melakukan manipulasi bit. Operator Penggunaan Deskripsi & Op1 & Op2 Bitwise AND ¦ Op1 ¦ Op2 Bitwise OR ^ Op1 ^ Op2 Bitwise XOR ~ ~Op Bitwise Complement << Op1 << Op2 Menggeser bit Op1 ke kiri sejauh Op2 >> Op1 >> Op2 Menggeser bit Op1 ke kanan sejauh Op2 >>> Op1 >>> Op2 Geser kanan tanpa mempertahankan sign (dengan nilai 0 sebagai pengisi bit paling kiri) Tabel 2.8 Operator Logical Tabel 2.9 Operator Bitwise
  • 50. 7. Operator Penghubung Dalam operator ini bisa digunakan operator +, yang digunakan dalam operator Aritmatika, untuk menyambung string-string. Istilah concatenation (pennyambungan) berasal dari kata latin “catena”, yang artinya rantai. Sesuai dengan aslinya, untuk menyambung string adalah merantai mereka bersama. Potongan kode berikut diperlihatkan aksi operator ini(Sanchez, 2002: 83): String str1=”con”; String str2=”ca”; String str3=”ten”; String str4=”ate”; String hasil= str1 + str2 + str3 + str4 // hasil=”concatenate” 2.4.4 String String adalah deretan karakter. Pada bahasa pemrograman lain, string dianggap sebagai array dari karakter. Namun dalam Java, string diberlakukan sebagai suatu objek(Hermawan, 2004: 132). Dapat dipelajari mengenai kelas dan objek melalui penggunaan string karena string merupakan class yang terdapat dalam library Java(Rickyanto, 2003: 113). Berikut beberapa method yang digunakan dalam peneitian ini. 1. Membuat dan menginisialisasi String Ada dua cara membuat dan menginisialisasi objek string, yaitu: a. Mendeklarasikan string sebagaimana literal tipe data primitif, yaitu serangkaian karakter dalam suatu penggalan program yang diapit oleh kutip ganda. Kapanpun ditemukan string literal dalam
  • 51. program, maka kompiler akan membentuk objek String dengan nilai yang terkandung didalamnya, seperti contoh: String salam = “Selamat Pagi”; b. Membuat objek string dengan operator new dan menugaskan Gunakan sintaks berikut untuk membentuk objek string dan kelas ini. String namaString = new String(”deretan karakter”); Contoh: String salam = new String(”Selamat Pagi”); Cara pertama merupakan perlakuan istimewa Java kepada String. Mengapa? Karena bentuk tersebut menganggap string sebagai suatu tipe data, sebagaimana layaknya tipe data primitif lainnya, seperti byte, short, int, char, boolean, dan sebagainya. Padahal, String dalam Java merupakan suatu kelas sehingga bila mengikuti kaidah pembentukan objek dan suatu kelas. maka hanya bentuk kedualah sebagai cara membuat objek String. Bentuk pertama merupakan akomodasi atau toleransi Java karena pada bahasa pemrograman lainnya, seperti Pascal atau C/C++; string dianggap sebagai suatu tipe data(Hermawan, 2004: 134). 2. Membaca karakter secara individu dalam String Ada dua method yang sering digunakan untuk membaca karakter yang menyusun suatu string secara individir, yaitu: a. int length()
  • 52. Method ini akan mengembalikan jumlah karakter dalam suatu string. Digunakan untuk menentukan batas akhir dan indeks yang akan dipakai sebagai penunjuk posisi pada method charAt(int index). b. char charAt(int index) Membaca satu karakter pada suatu posisi yang ditunjukkan oleh indeks dalam string memiliki indeks = 0 dan karakter terakhir memiliki indeks = jumlah karakter pembentuk string.-1 atau objekString.length() – 1(Hermawan, 2004: 135). 3. Mencari karakter dan substring Method di bawah ini berguna untuk mencari indeks dan suatu karakter atau indeks awal dan suatu substring dalam suatu String. Mekanisme pencarian adalah dengan mencari karakter yang dimaksud secara maju (forward) dan awal sampai akhir string. Bila pencarian gagal (tidak ditemukan), maka method akan mengembalikan nilai -1. a. int indexOf (int ch) Mengembalikan - nilai indeks dan karakter pertama yang berhasil ditemukan berdasarkan suatu argumen karakter (Hermawan, 2004: 143). 2.4.5 Kondisi if Pada penelitian ini digunakan seleksi if untuk memeriksa apakah suatu variabel atau ekspresi memenuhi persyaratan suatu kondisi.
  • 53. Seleksi if menggunakan ekspresi boolean untuk menentukan apakah suatu statement atau blok statement akan dieksekusi atau tidak. Bila variabel atau ekspresi memenuhi persyaratan kondisi, maka seleksi akan bernilai “benar”, dan kemudian statement atau blok statement yang menyertai if tersebut akan dieksekusi, untuk flowchart if terdapat dalam gambar 2.3 (Hermawan, 2004: 88). 1. Bentuk if…else Terkadang selain menentukan aksi apa saja yang akan dilakukan bila suatu kondisi terpenuhi, juga ingin menetapkan konsekuensi- konsekuensi yang terjadi bila kondisi itu gagal dipenuhi. true falseKondisi pengujian If Statement Statement Gambar 2.3 Flowchart if
  • 54. Dibutuhkan tambahan keyword else sebagai pelengkap if untuk menambahkan konsekuensi ini, sehingga disebut juga bentuk if…else. Sama dengan if, else juga hanya akan mengeksekusi sebanyak satu statement yang terletak persis di bawahnya. Dibutuhkan blok setelah deklarasi else untuk mengeksekusi sejumlah statement. Bila terdapat beberapa kemungkinan konsekuensi (multiple condition), setelah suatu if…else dapat menambahkan if… else yang lainnya(Hermawan, 2004: 90). Gambar 2.4 Flowchart If..else Kondisi pengujian If Statement Statement Statement untuk false (else) Salah / False Benar / True
  • 55. 2. Bentuk if atau if…else bersarang (nested if…else) Selain bentuk tunggal if atau if… else serta mutlitple condition if…else yang telah dibahas sebelumnya, siapa saja juga diperbolehkan untuk membuat if atau if…else yang bersarang. Maksudnya if atau if…else itu dapat ditempatkan sebagai suatu blok seleksi di dalam blok if atau if. . else yang lain. Bila pada bentuk multiple if. . else kedudukan masing-masing if…else adalah sederajat, namun pada nested if…else, kedudukannya adalah bertingkat. Kondisi if…else tingkat pertama akan menyeleksi variabel atau objek untuk pertama kali, dan bila lulus, maka variabel atau objek itu akan menghadapi seleksi if…else tahap kedua, bila lulus lagi ke seleksi if…else ketiga, dan seterusnya. Proses seleksi seperti ini ditemui pada kasus misalnya seleksi penerimaan pegawai baru. Seleksi tahap pertama merupakan tes tulis dan psikotes, bila lulus, pelamar harus menghadapi seleksi wawancara, dan bila lulus lagi, ia akan menghadapi tes kesehatan(Hermawan, 2004: 93). 2.4.6 Perulangan for Bentuk ini adalah yang paling sering digunakan. for akan mengulang suatu statement atau blok statement sejumlah yang dikehendaki, yakni bila kondisi akhir telah tercapai.
  • 56. Bentuk umum : Dari bentuk di atas, terdapat tiga bagian dalam deklarasi for, yakni kondisi awal, akhir, dan banyaknya increment.dan flowchart untuk for adalah sebagaimana dalam gambar 2.5(Hermawan, 2004: 97). 1. Kondisi awal Adalah bagian yang menginisialisasi permulaan dari perulangan. Umumnya dalam perulangan,diperlukan suatu variabel yang berfungsi sebagai indeks perulangan. Indeks ini akan memiliki tiga fungsi, yakni sebagai kondisi awal sebelum loop dieksekusi, sebagai kondisi akhir yang akan dicapai, serta beberapa jumlah kenaikan (increment) untuk setiap langkah perulangan. Ambil contoh, digunakan variabel i sebagai indeks loop. Sebelum loop dieksekusi, harus menginisialisasi variabel i ini dengan nilai awal, misalnya int i = 0. Bila terdapat lebih dari satu variabel indeks, dapat di inisialisasi secara bersamaan dan di antara masing-masing variabel dipisahkan dengan koma, misalnya: int i = 0, int k = 0. Sebagai catatan, variabel yang dideklarasikan sebagai indeks perulangan ini hanya berlaku di dalam scope perulangan itu sendiri, jadi tidak akan mengganggu variabel lain yang berada di luar scope. Begitu perulangan tersebut selesai dieksekusi, maka variabel indeks akan berakhir masa tugasnya. for (kondisi awal; persyaratan atau kondisi akhir; increment) { blok statement; }
  • 57. 2. Persyaratan atau Kondisi akhir Adalah bagian yang akan menyebabkan interpreter menghentikan perulangan karena telah tercapai suatu kondisi akhir. Kondisi akhir ini dapat berupa suatu nilai boolean, yaitu: benar atau salah atau merupakan fungsi yang bisa menghasilkan nilai logika Gambar 2.5 Flowchart For Inisialisasi Counter Apakah counter masih belum melewati batas ? Statement setelah loop body untuk setiap perulangan Statement setelah loop body untuk setiap perulangan Statement berikutnya true false
  • 58. boolean. Bila benar, maka perulangan akan terus dilaksanakan dan bila salah, maka dihentikan. Contohnya: i <5. 3. Increment Adalah bagian yang menunjukkan berapa jumlah kenaikan untuk setiap langkah perulangan. Misalnya i = i +1 atau yang biasa disingkat sebagai i++ akan menyebabkan variabel indeks perulangan ditambah satu(Hermawan, 2004: 98).
  • 59. BAB III PERANCANGAN DAN DESAIN SISTEM 3.1 Materi Penelitian Pada bab ini yang harus terlebih dahulu dipahami beberapa materi, dalam hal ini materi yang digunakan dalam penelitian adalah : 1. Literasi 2. Algoritma 3. Operasi concatenation (penyambungan) 4. Bahasa pemrograman java Dari beberapa materi diatas harus dibaca dan dipahami, serta mengerti apa itu literasi, algoritma, operasi concatenation, dan bahasa pemrograman java. Dan aturan main yang ada didalamnya. 3.2 Alat Penelitian 3.2.1 Kebutuhan Hadware Mulai tahap penelitian sampai dengan tahap implementasi dalam sebuah rancangan program literasi Arab-Latin menggunakan perangkat komputer dengan spesifikasi sebagai berikut : Hardware : a. Processor intel (R) 1.60 GHz. b. Memory 512 MB. c. VGA 64 MB d. Hardisk 160 GB. e. Mouse, Keyboard, dan Monitor.
  • 60. 3.2.2 Kebutuhan Software Adapun untuk kebutuhan software mulai tahap penelitian sampai tahap implementasi dari program Literasi Arab-Latin. Menggunakan beberapa software sebagai berikut: Software : a. Operating System Windows XP Service pack 2 b. jdk.1.5.0. c. JCreator d. Microsoft Word 2007. 3.3 Tahap – Tahap Pembangunan Sistem Tahap tahap yang dilakukan dalam penelitian ini adalah: 1.Fase Analisis a. Studi literature Langkah ini dilakukan dengan tujuan untuk mendapatkan referensi yang akan digunakan dalam pembahasan permasalahan sehingga dapat dibangun suatu konsep literasi Arab - latin. b. Penerapan algoritma Pada langkah ini diterapkan algoritma literasi sederhana pada software literasi dengan pendekatan concatenation (penyambungan). 2. Fase Desain a. Desain output Desain awal yang digunakan untuk memperkirakan yang dihasilkan dari masalah yang diangkat.
  • 61. b. Desain input Dari desain hasil, dapat ditentukan apa saja yang dibutuhkan untuk didapat hasil yang diinginkan. c. Desain proses Setelah desain output dan input selesai, baru dilakukan desain untuk prosess digambarkan dengan diagram blok. d. Desain inteface Setelah semua selesai baru dibuat desain tampilan aplikasi. 3.4 Rancangan Program Aliran dalam diagram blok memodelkan masukan ke sistem dan keluaran dari sistem. Penjelasan diagram konteks software aplikasi literasi arab - latin dengan menggunakan pendekatan operasi concatenation adalah sebagai berikut : 1. Input ; masukan sebuah/lebih karakter Arab. 2. Algoritma literasi; pemilihan karakter Arab dibaca per-karakter dan di literasikan ke dalam huruf latin. Gambar 3.1 Diagram blok Input Algoritma Literasi Operasi Concatenation Output
  • 62. 3. Operasi concatenation ; hasil dari pada algoritma literasi yang berupa huruf latin, setelah itu dilakukan operasi concatenation. 4. Output ; keluarannya berupa karakter latin. Algoritma literasi merupakan proses pembacaan yang dimulai dari huruf pertama, dalam hal ini adalah huruf Arab dari array dengan indeks nomor 1 sampai data ke N. Berikut ini algoritma literasi : 3.5 Proses Literasi Pada proses literasi ini diperlukan proses algoritma literasi dari huruf Arab ke huruf latin dan seperti contoh dibawah ini : Input karakter Arab : ُ َ ُ Pembacaan karakter : ‫م‬ / ُ / ‫ح‬ / َ / ‫م‬ / ّ / َ / ‫د‬ / ُ Huruf target : M/U/H/A/M/M/A/D/U Operasi concatenation: M+U+H+A+M+M+A+D+U Output : MUHAMMADU Dari gambaran diatas dapat dijelaskan bahwa mulai dari input huruf arab setelah itu, dibaca karakter satu persatu setelah itu diliterasikan ke huruf latin dan dilanjutkan pada operasi concatenation dan dihasilkan N: integer = (huruf arab,huruf Latin)…N {jumlah pasangan huruf Arab-Latin sampai ke N} A= array[1….N] of integer I,baca: integer Algoritma Input (baca){meminta nilai data yang akan dibaca} I 1 {indeks array dimulai dari 1} While(I<N) and (A[I]=baca) do I I+1 {menaikkan nilai indeks } End while If A[I]=baca then Output(huruf latin) Else Output(input salah) End if
  • 63. output huruf latin. Lebih detailnya proses literasi dijelaskan pada flowcart. Dimisalkan pada proses literasi diatas adalah input huruf Arab dimisalkan X ,mulai dari ܺଵ, ܺଶ…… ܺ௠ିଵ ܺ௠,… ܺ௠ merupakan karakter Arab dan output karakter Latin dimisalkan Y mulai dari ܻଵ, ܻଶ…… ܻ௡ିଵ ܻ௡,… ܻ௡ merupakan huruf Latin. Concatenation dalam Java untuk penggabungan String atau Char ini dideskripsikan dengan dua bentuk yaitu, concat dan operator penjumlahan. seperti contoh: Dengan concat : Str1.concat(str2) Dengan penjumlahan : Str3=Str1+Str2 3.6 Flowcart Dari contoh proses literasi dapat digambarkan Flowchart literasi menjelaskan mengenai langkah-langkah proses literasi yang terjadi di dalam Aplikasi Literasi Arab - Latin. yang digambarkan pada gambar 3.2. Pada flowchart proses literasi pada gambar 3.2 yang dilakukan adalah di inisialisasikan input, output dan perulangannya. Input karakter Arab dimisalkan X , mulai dari ܺଵ, ܺଶ…… ܺ௠ merupakan karakter Arab, output huruf latinY, mulai dari ܻଵ, ܻଶ…… ܻ௡ merupakan karakter Latin. Sehingga langkah – langkah yang ditempuh sebagai berikut: 1. Input, Dalam langkah ini perlu dideklarasikan antara input dan output yang akan diperoleh. 2. Decision, dimana pada saat desision dilakukan pembacaan input sehingga dapat menghasilkan output yang diinginkan. 3. Operasi concatenation
  • 64. 4. Output, merupakan hasil yang akan diperoleh. ya tidak ya mulai selesai ܺଵ Output = ܻଵ chartAt (i)=062 Output=”B tidak Output=Input salah Tampilkan : Output Inisialisasi Input output dan perulangan ya ܺ௠ Output=ܻ௡ tidak 1 ܺଶ Output=ܻଶ ܻଵ൅ܻଶ … ൅ ܻ௡ Operasi Concatination Gambar 3.2 Flowchart literasi
  • 65. 3.7 Implementasi Tahap implementasi algoritma literasi Arab-Latin merupakan tahapan untuk meletakkan algoritma supaya siap untuk dioperasikan. Pada tahapan ini aktivitas yang dilakukan yaitu : 1. Instalasi software Proses pemasangan hardware dan instalasi software yang sudah ada. Dalam penelitian ini tahap Instalasi hardware dan software dilakukan. 2. Implementasi Algoritma literasi Pada gambar flowchart algoritma literasi yang akan diimplementasikan kedalam bahasa pemrograman Java, dan dijelaskan langkah-langkah sebagai berikut: 2 ya Output=”Xn” tidak Xm dan Xm-1 Output=”” 1 Gambar 3.3 Sambungan Flowchart literasi
  • 66. 1. Inisialisasi, adalah menginisialisasikan tipe data yang digunakan, dikarenakan input dan output tipe datanya berupa string yang dimana string merupakan deretan karakter, dan diperlukan juga pembacaan secara individu. Gambar 3.4 Flowchart Literasi di Java ya tidak ya mulai selesai chartAt (i)=0627 Output=”” tidak Output=Input salah Tampilkan : Output TArea Input, TArea output; String Hasil, output, temp; int i=0; i<hasil.length(); i++ yachartAt (i)=Xi Output=Ym tidak 1 chartAt (i)=0628 Output=”B” Operasi Concatenation
  • 67. 2. Perulangan, dikarenakan pembacaan dalam suatu string itu secara individu atau perkarakter maka digunakan variabel i sebagai indeks loop (perulangan). 3. Kondisi Pengujian, memeriksa suatu variabel i untuk memenuhi persyaratan suatu kondisi, bila variabel i bernilai memenuhi persyaratan kondisi, maka seleksi bernilai benar maka statement akan di eksekusi. Variabel disini digunakan untuk pembacaan perkarakter apabila misal, chartAt (i) sama dengan huruf alif, maka output sama dengan null. Apabila pemeriksaan tidak memenuhi peryaratan maka akan dilanjutkan ke pemeriksaan berikutnya. 4. Proses concatenation, setelah dihasilkan output perkarakter maka pada proses ini operasi concatenation diproses setelah itu akan ditampilkan. 2 ya Output=”Ô tidak chartAt (i)=0627 (i-1)=064E Output=”” 1 Gambar 3.5 Sambungan Flowchart literasi di Java
  • 68. Pada gambar 3.5 dijelaskan dimana pada saat variabel i=Alif dan i-1=fathah ini memerlukan kondisi if yang tersarang dimaksudkan ada dua atau beberapa persyaratan dalam pemeriksaan suatu kondisi, agar output yang dihasilkan huruf”Ā”. 3. desain antarmuka Di dalam desain antarmuka,berikut akan dijelaskan pembangunan komponen-komponen yang ada dalam Aplikasi Literasi Arab-Latin beserta source code yang digunakan dalam desain formnya. 1. frame Frame ini dibangun oleh JFrame yang merupakan komponen top level container dan dilengkapi dengan border, title bar, dan memiliki fungsi sebagai managemen window, yang digunakan untuk membangun window aplikasi. Langkah-langkah beserta sourcecode adalah sebagai berikut : import java.io.*; import javax.swing.*; import java.awt.*; import java.awt.event.*; import javax.swing.JTextArea.*; public class Tampilan { public static void main(String args[]) { // Script membuat frame JFrame frame=new JFrame("Transliterasi Arab- Latin v.0.1"); // Script untuk ukuran window lebar 450 tinggi 400 frame.setSize(450,400); // Script Untuk menampilkan frame window: frame.setVisible(true); // Script untuk keluar dan program
  • 69. Langkah – langkahnya: 1. Import paket GUI javax.swing.*, java.awt.*, java.awt.event.* 2. Membuat class Window. 3. Menampilkan Window. 2. Menu Menu merupakan komponen yang berupa grup fungsi pemroses yang berkaitan dengan fitur-fitur dan suatu aplikasi. Perhatikanlah menu yang terdapat pada saat Anda mengetik dengan Microsoft Word. Pada bagian atas dan MS Word, terdapat menubar yang berisi objek-objek menu File, Edit, View, Insert, dan sebagainya. Di dalam masing-masing menu tersebut terkandung sub menu lainnya, seperti dalam File terdapat New, Open Close, Save, Save As, dan sebagainya. Kelas JMenuBar mengimplementasikan bar yang di dalamnya terdapat objek-objek menu yang bersifat pull down (dapat ditekan). Kelas JMenultem digunakan untuk menyusun item menu yang berupa teks text / label, termasuk membuat shortcut dan tombol- tombol keyboard. Kelas JMenu digunakan untuk menginstans objek- objek pull down menu yang akan ditaruh pada menu bar. Untuk sourcecode menu yang lebih detail dalam implementasinya terdapat pada gambar.
  • 70. 3. Label Adalah komponen yang digunakan untuk memberi nama komponen lainnya. Label bisa berupa text atau gambar. Dalam Java, label merupakan objek yang diinstans dari kelas JLabel. Dimasalkan dalam aplikasi ini label yang berupa text seperti ; Tulisn Arab, Lietasi Latin, By Iqbal. Lebih detailnya untuk pembuatan label dijelaskan pada sourcecode dibawah ini: //membuat Tulisan Arab JLabel label=new JLabel("Tulisan Arab :"); //membentuk font ukuran 14,tebal,jenis font bertipe Arial label.setFont (new Font("Arial",Font.BOLD,12)); //membuat Literasi Latin JLabel label1=new JLabel("Literasi Latin :"); label1.setFont (new Font("Arial",Font.BOLD,12)); //membuat By Iqbal JLabel label2=new JLabel("By: Iqbal "); label2.setFont (new Font("Monotype Corsiva",Font.BOLD,16)); //membuat menu bar JMenuBar menu=new JMenuBar(); frame.setJMenuBar(menu); //membuat menu bar JMenu submenu=new JMenu("Menu"); submenu.setMnemonic('M'); //Membuat item-item menu dan menambahkannya ke dalam menu. Ada dua hal yang harus ditambahkan ke dalam menu, yaitu: Menu ltem dan Separator JMenuItem TabelLiterasi=new JMenuItem ("Tabel literasi",'T'); JMenuItem Keyboard=new JMenuItem ("Gambar Keyboard arabic ",'B'); JMenuItem Exit=new JMenuItem ("Exit",'E');
  • 71. 4. Text Area Komponen ini digunakan oleh user untuk menuliskan kalimat paragraf, atau tulisan yang panjang, seperti halnya pada notepad atau wordpad.dan pada aplikasi literasi Arab-Latin ini digunakan untuk menampilkan input dan output dari program.untuk lebih jelasnya terdapat dalam sourcecode dibawah ini : 5. Scrolling Pane Komponen ini merupakan komponen scroll pada TextArea yang memiliki fungsi untuk scroll kearah horizontal atau vertical dan pada aplikasi literasi Arab-Latin ini digunakan untuk melihat kalimat, atau tulisan yang tidak kelihatan,.untuk lebih jelasnya terdapat dalam sourcecode dibawah ini : //Membuat bentuk text area scroll vertical dan horizontal JScrollPane scroll = new JScrollPane(TAreaInput, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS) ; //membuat TextArea input final JTextArea TAreaInput = new JTextArea(); //untuk mengeset font yang ditampilkan TAreaInput.setFont(new Font("Arial",Font.BOLD,24)); //untuk mengeset otomatis kebaris berikutnya TAreaInput.setLineWrap(true);
  • 72. 6. Button Komponen ini diinstans dari kelas JButton dan akan menstimulasi action event bila di-klik oleh user. JButton ini memiliki beberapa properties sebagai berikut: a. Text Adalah label nama pada button, misalnya Klik, OK, Cancel, Dibutuhkan method setText() untuk menugaskan text. buttonl.setText(”Klik”); b. Icon Icon adalah gambar berukuran kecil yang digunakan untuk melapisi button, sehingga tampak lebih menarik dibandingkan dengan button standard. Pada penambahan icon, terlebih dahulu Anda membuat objek icon yang diinstans dan kelas Imagelcon. Setelah itu, Anda men assign icon ke button dengan method setIcon( ), prosesnya adalah: Icon icon1 = new ImageIcon(”gambar.gif”); buttonl.setIcon (icon1); Perlu diketahui, kelas Imagelcon dalam Java hanya men-suppor format gambar, yaitu: .gif, .jpeg, dan .png. Bila format file gambar yang Anda memiliki bukan salah satu dan tipe tersebut, maka Anda harus mengkonversinya terlebih dahulu. c. Mnemonic Digunakan bila Anda ingin membuat shortcut untuk suatu button, Shortcut ini berupa tombol ALT dan mnemonic sehingga Anda bisa
  • 73. mengaktifkan button tersebut tanpa harus mengkliknya. Method yang diperlukan adalah setMnemonic ( ). buttonl.setMnemonic(”K”); Yang berikutnya adalah desain tambahan gambar Tabel Pedoman literasi, Desain ini yang berupa gambar tabel pedoman literasi Arab-Latin yang diharapkan user dapat melihat standarisasi output yang akan dihasilkan oleh program. Berikut sourcecode yang digunakan dalam membangun tampilan tersebut: Desain form gambar keyboard, Desain ini berupa gambar keybord diharapkan user dengan mudah untuk memberikan input, itu dikarenakan Aplikasi ini hanya dapat inputan dari keyboard. //Membuat button dengan text Transliterasi JButton ButtonT = new JButton("Transliterasi"); ButtonT.setMnemonic('T'); import java.awt.event.*; import javax.swing.*; import java.awt.*; public class TabelLiterasi extends JFrame{ JLabel picture = new JLabel(new ImageIcon("TabelLit.jpg")); TabelLiterasi() { tampilan(); } void tampilan(){ picture.setPreferredSize(new Dimension(450,400)); setTitle("Tabel Pedoman Literasi"); setLocation(460,0); setSize(300,450); getContentPane().add(picture); setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE); setVisible(true); } }
  • 74. Berikut sourcecode yang digunakan dalam membangun tampilan tersebut: 3.Pengetesan program Dalam pemrograman kegiatan yang dilakukan adalah penulisan source code terutama dalam hal ini bahasa pemrograman yang digunakan bahasa pemrograman Java, maka harus diperhatikan alur compiler dan eksekusi program java, gambaran alur tersebut pada gambar 3.6. Berbeda dengan kompiler maupun interpreter yang selama ini dipakai, pada Java hasil akhir kompilasi adalah file yang berformat *.class. File mi selanjutnya akan diterjemahkan oleh Java Interpreter. Bila pada kompiler C/C++, Visual Basic, atau Delphi dibuat suatu file yang dapat dieksekusi (executable file) yang berformat *.exe, namun pada Java tidak dapat membuat format file tersebut. Hal tersebut karena Java difokuskan untuk aplikasi yang berbasis terdistribusi yang dapat diaktifkan melalui jaringan atau internet. File *.exe tidak dapat dipanggil import java.awt.event.*; import javax.swing.*; import java.awt.*; public class Pedoman extends JFrame{ JLabel picture = new JLabel(new ImageIcon("Gbkey.jpg")); Keyboard() { tampilan(); } void tampilan(){ picture.setPreferredSize(new Dimension(450,400)); setTitle("Gambar Keyboard Arab"); setLocation(460,0); setSize(500,400); getContentPane().add(picture); setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE); setVisible(true); } }
  • 75. oleh suatu browser, sebaliknya file *.class dapat dijalankan oleh browser atau melalui applet viewer(Hermawan, 2004:21). Mengedit Source Code File Source Code : Source. java Mengkompile Program : C: path_sourcejavac source. java Bila masih ada error kompilasi Hasil Kompilasi : File source.class Mengeksekusi Program : C: path_sourcejavac source. class Hasil Benar Bila ada runtime atau logic error Gambar 3.6 Alur Kompilasi Program Java
  • 76. BAB IV HASIL DAN PEMBAHASAN Sebagaimana yang telah disinggung dalam latar belakang permasalahan perintah untuk membaca pada surah Al-alaq ayat satu, surah ini masih ada kelanjutannya pada surah Al-alaq ayat ketiga yang berbunyi: Artinya:” Bacalah, dan Tuhanmulah Yang Maha Pemurah,” (QS: Al-Alaq: 3) Pada ayat ini mengulang perintah membaca dan bagi yang membacanya akan diberi sesuatu yang amat bermanfaat, salah satu diantaranya ilmu pengetahuan (Mahmud,2002:338). Dan ilmu pengetahuan itu sangatlah luas termasuk juga dalam hasil penelitian ini. Dalam bab ini dibahas mengenai implementasi dari hasil perancangan yang telah dibuat. Implementasi meliputi tiga tahap implementasi perangkat lunak, implementasi algoritma dan implentasi antar muka, berikut penjelasan mengenai tahap-tahapnya. 4.1 Implementasi Perangkat Lunak Langkah awal yang harus dilakukan user adalah instalasi hardware dan software yang diperlukan. Mengenai cara instalasi software disertakan dilampiran. Apabila setelah selesai proses instalasi software, maka Aplikasi ini dapat dijalankan. Aplikasi literasi Arab-Latin ini adalah aplikasi perangkat lunak yang memberikan kemudahan pada penggunanya dalam transliterasi Arab-Latin yang baku. User mendapat kemudahan melihat hasil litarasi dari huruf Arab
  • 77. ke huruf latin menggunakan metode pendekatan concatenation. User dapat melihat hasil tampilan proses literasi berdasarkan pedoman Transliterasi Arab-Latin yang baku. 4.2 Implementasi Antarmuka Di dalam implementasi antarmuka ini, menjelaskan kegunaan komponen-komponen yang ada di dalam Aplikasi Literasi Arab-Latin. 4.2.1 Tampilan utama Saat pertama kali aplikasi sistem pakar dijalankan, maka akan ditampilkan tampilan utama yang merupakan halaman utama bagi user. Dalam halaman utama ini terdapat dalam gambar 4.1 dan beserta kegunaannya komponen-komponennya. 1.Text Area Input Text Area Input ini digunakan untuk memberi inputan karakter Arab yang inputan tersebut diinputkan user dari keyboard. 6 4 3 2 1 Gambar 4.1 Tampilan utama 5
  • 78. 2. Scroll scroll kearah horizontal atau vertical dan pada aplikasi literasi Arab-Latin ini digunakan untuk melihat kalimat, atau tulisan yang tidak kelihatan. 3. Button Transliterasi Button Transliterasi ini digunakan untuk proses literasi dari huruf arab ke huruf latin. 4. Text Area Output Text Area Output ini digunakan untuk melihat hasil yang berupa karakter Latin. 5. Button Hapus Button Hapus ini digunakan untuk menghapus huruf arab dan huruf latin apabila user ingin melakukan proses literasi. 6. Menu Menu merupakan komponen yang berupa fitur-fitur dan suatu aplikasi dan didalam menu terdapat fitur tabel literasi dan gambar keyboard Arabic yang dimana apabila diklik oleh user akan menampilkan gambar tabel literasi atau gambar keyboard Arabic seperti pada gambar dibawah ini. Gambar 4.2 Tampilan menu
  • 79. 4.2.2 Tampilan Gambar Tabel Pedoman literasi Tampilan ini yang berupa gambar tabel pedoman literasi Arab- Latin sehingga user dapat melihat standarisasi output yang akan dihasilkan oleh program. 4.2.3 Tampilan Gambar keybord Gambar 4.4 Tampilan gambar keyboard Gambar 4.3 Tampilan gambar tabel pedoman literasi
  • 80. Tampilan ini berupa gambar keybord diharapkan user dengan mudah untuk memberi masukan, itu dikarenakan Aplikasi ini hanya mendapat inputan dari keyboard. 4.2.4 Tampilan hasil concatenation Gambar 4.5 merupakan tampilan hasil dari implementasi proses literasi yang dimana user menginputkan karakter Arab dengan hasil output huruf latin dengan menekan tombol button transliterasi, sesuai dengan proses implementasi algoritma literasi. 4.3 Pengujian Pengujian dalam hal kelayakan penggunaan aplikasi Literasi Arab- Latin yaitu dengan menjalankan program aplikasi dan memberi inputan huruf arab dengan 250 kata yang diambil dari kamus Arab-Indonesia dan 250 kalimat sebagia besar dari Al-Qur’anul Karim. Kemudian diamati mengenai hasil output dari aplikasi ini setelah itu dihitung prosentase kebenaran Gambar 4.5 Tampilan hasil concatenation
  • 81. outputnya, berikut beberapa contoh inputan kata dan kalimat Arab beserta outputannya akan ditunjukkan dalam gambar-gambar dibawah ini. Gambar 4.6 : input kata Arab Gambar 4.7 : input kalimat Arab
  • 82. Dari beberapa contoh diatas dan inputan yang disertakan dilampiran dalam bentuk tabel beserta outputnya latin. Dari hasil pengujian tersebut yang untuk kata, dari pengujian 250 kata yang benar outputnya itu 246 kata, sehingga didapatkan persentase yang benar sebesar 98,4%. Sedangkan untuk pengujian kalimat, dari pengujian 250 kalimat yang benar outputnya ada 123 kalimat, sehingga didapatkan persentasenya sebesar 49,2%. Mengenai perhitungan persentase sebagai berikut: Persentase pengujian kata yang benar adalah: Jumlah kata yang benar Jumlah kata yang diuji 246 250 = 0.984 X 100% = 98.4% Persentase pengujian kalimat yang benar adalah: Jumlah kalimat yang benar Jumlah kalimat yang diuji 123 250 = 0.492 X 100% = 49.2% Dari hasil persentase diatas bahwa aplikasi ini lebih baik diterapkan pada kata-kata Arab, itu dikarenakan hasil persentase yang lebih besar adalah pada pengujian kata dibandingkan dengan pengujian kalimat. Dan dalam pengujian kalimat itu persentasenya lebih kecil dikarenakan dalam proses literasi ini pada saat dilakukan dua tahap proses oleh sebab itu pada saat kalimat yang panjang diinputkan literasi tidak muncul atau eror. X 100% X 100% X 100%=Jadi didapatkan persentase kalimat X 100%=Jadi didapatkan persentase kata
  • 83. BAB V PENUTUP 5.1 Kesimpulan Setelah semua tahapan perancangan, implementasi dan pengujian sistem aplikasi telah selesai, dapat ditarik kesimpulan: 1. Perancangan sistem aplikasi ini menggunakan algoritma literasi dan operasi concatenation. 2. Sistem aplikasi literasi Arab-Latin dengan menggunakan pendekatan operasi concatenation dan mendapat inputan dari keyboard ini mampu mentransliterasikan dari huruf Arab ke huruf Latin. 5.2 Saran Dari beberapa kesimpulan yang telah diambil, maka didapatkan saran- saran yang akan sangat membantu untuk pengembangan perangkat lunak ini selanjutnya: 1. Diharapkan untuk kedepannya tadak hanya mendapat inputan dari keyboard. 2. Untuk pengembangan aplikasi literasi Arab-Latin selanjutnya, disarankan agar mampu menghasilkan aplikasi Arab-Latin yang lebih akurat terutama untuk inputan kalimat Arab.
  • 84. DAFTAR PUSTAKA Arianto, M. Sholihin, 2008. 1stLect_AksaraArab.pdf (http://perpus@uin- suka.ac.id. diakses tanggal 12-07-2008). Ekbal, Asif, Sudip Kumar Naskar & Sivaji Bandyopadhyay. A Modified Joint Source-Channel Model for Transliteration. Sydney, July 2006. 191-198. (http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.106.3425 diakses tanggal 12-07-2008). Eryono, M.Kailani, 1993. Katalogisasi buku Berbahasa Arab. Jakarta:Universitas Indonesia. Heijer, Johannes den dan Massier, Ab, 1992. Pedoman Transliterasi Bahasa Arab. Jakarta: INIS. Hermawan, Beni, 2004. Menguasai Java 2 & Objek Oriented.Yogyakarta: Andi. Mahmud, Sakip, 2005. Mutiara Juz Amma. Bandung: Mizan. Ngoen, Thompson Susabda. 2006. Pengantar Algoritma dengan Bahasa C. Jakarta : Salemba Teknika. Person, 2005. Java An Introduction To Problem Solving Dan Programing fourth edition. United State of America: Upper Suddle River. Puslitbang, Tim, 2003. Pedoman Transliterasi Arab Latin, Jakarta: Proyek Pengkajian dan Pengembangan Lektur Pendidikan Agama. Rickyanto, Isak ST, 2002. Dasar Pemrogrman Berorientasi Objek dengan Java2(JDK 1.4). Yogyakarta: Andi. Sanchez, Julio dan Mari P.Compton, 2002. Java 2 Weekend crash cours. Jakarta: Elex Media Komputindo.
  • 85. Shihab, M. Quroish, 2002. Tafsir Al-Misbah Vol 6. Jakarta: Lentera Hati. Yulikuspartono, 2004. Pengantar Logika dan Algoritma. Yogyakarta: Andi
  • 86. Lampiran1 Cara Mengaktifkan Arabic A. Untuk menukar dari mode Inggris (English) ke Arab, bisa dengan 2 cara yakni: Menggunakan Mouse, klik pada pojok sebelah kiri layar monitor Anda. Gantilah dari EN ke AR atau sebaliknya. (Lihat gambar) Gbr. Memilih Mode Keyboard B. Dengan menekan tombol SHIFT (jangan dilepas) kemudian dikombinasikan dengan ALT, akan terlihat pada layar kiri bawah mode EN akan berganti AR atau sebaliknya. pemakai Windows XP. Penggunaannya lebih mudah sebab sudah menyediakan fasilitas Multilanguage. Dalam proses instalasi standar biasanya belum mencakup bahasa Arab. Cara menambah fasilitas Arabic Language adalah dengan: 1. Buka ‘Start’ kemudian pilih ‘Control Panel’ dan klik ‘Regional And Language options’ 2. Pilih Tab ’Languages’ 3. Pilih ‘Install files for complex script and right-to-left languages (including Thai)’ 4. Klik OK (Jangan lupa CD Windows XP akan diminta dari CDROM) 5. Klik juga menu ‘Details…’ untuk menambah (Add) model Keyboard Arabic. 6. OK (Proses akan dilanjutkan komputer secara otomatis). Silakan tunggu. Jika ingin mengetik dalam Microsoft Word, kita tinggal mengganti model Keyboard saja seperti 2 cara di atas. Bila ingin menambah inisial pemakaian huruf Arab, pergunakan:
  • 87. Selain solusi Windows, sebenarnya ada beberapa program untuk menulis Arab yang instant, bisa langsung dipakai secara mandiri. Kemudahannya adalah kita tinggal menekan tampilan tombol keyboard di layar dengan mouse, kemudian akan muncul hasilnya di layar editor. Selain solusi Windows, sebenarnya ada beberapa program untuk menulis Arab instant, bisa langsung dipakai secara mandiri. Kemudahannya adalah kita tinggal menekan tampilan tombol keyboard di layar dengan mouse, kemudian akan muncul hasilnya di layar editor. Selain solusi Windows, sebenarnya ada beberapa program untuk menulis Arab instant, bisa langsung dipakai secara mandiri. Kemudahannya adalah kita tinggal menekan tampilan tombol keyboard di layar dengan mouse, kemudian
  • 88. Lampiran 2 Tampilan konsonan Tampilan vokal tunggal dan rangkap
  • 90. Lampiran 3 Arab Latin Arab Latin Arab Latin َ‫ح‬ ََ‫ا‬ ABAĤA ُ JUBBUN ٌ ِْ ĤIBRUN َ‫ك‬َ‫ر‬ َ BĀRAKA ِ JIDDUN ٌ ِ َ ĤĀJIBUN َ‫ك‬ َ SAMMĀKA ِ JIDDAN ْ‫ة‬َ َْ ĤABRATH ٌ‫س‬ََ MADASUN َ‫ر‬ َ JADDARA ٌ‫ر‬ ََ ĤABĀRUN َ‫ع‬ َ BĀ‘A ٌ‫ع‬ََ JAśA‘UN ‫َى‬‫ر‬ َُ ĤUBĀRAÃ َ‫ر‬ََ BADARA َ‫ف‬ َ JADDAFA ْ‫ة‬َ َْ ِ MIĤBARAĤ َُ َ BA‘UDA َ‫ب‬ َ JARRABA َ‫ث‬ َ ĤADDAŚA َ َ BAGĀ ٌ‫ب‬َ َ JARABU ٌ َِْ ĤADĪŚUN َ BALLA َ‫أ‬ َ JAZA'A ٌ‫ة‬ ِ ĤIDDATUN َ َ َ BAHALA ٌ‫م‬ْ َ JAZMUN ٌ‫د‬‫ا‬ ِ ĤIDDĀDUN َ َ َ BAĤARA َ َ ْ َ JAMHARA ٌَِْ ĤADĪDUN َ‫د‬َ َ BARADA ً ِ َ JĀMI‘AN ٌ‫د‬‫ا‬ َ ĤADDĀDUN َ‫ق‬َ َ BARAQA ْ‫ك‬ُ ْ ُ JUMRUK ٌ‫د‬ْ‫و‬ُْ َ MAĤDŪDUN ََ َ TĀKHAMA ٌ َ َ َ JAMASATUN َ‫ج‬ َ ĤARRAJA ٌ‫ب‬ْ ُ َ TĀBUŪBUN َ َ َ JĀNASA ٌ‫ج‬ َ ĤARRAJUN َ َ TABBALA ُ JUNNA َ‫ر‬ َ ĤARRARA َ‫ب‬ َ TARRABA َ َ JAHHAZA َ ĤARRUN ََ َْ TALMADU َ‫ب‬َ‫و‬ َ JĀWABA ٌ‫ن‬ َ ĤARRANUN َ‫ب‬ َ TAWWABA ٌ‫ز‬ْ َ JAUZUN ٌ‫ر‬ِ َ ĤARIRUN ٍ‫ل‬ َ TĀLIN َ JAWWAN َ‫ز‬َ ْ َ‫أ‬ 'AĤRAZA ٌ‫ت‬ ََ ŚABĀTUN َ‫د‬ َ َ‫أ‬ 'AJĀDA ٌ‫ز‬ْ ِ ĤIRZUN َ َ ŚAQQALA ً َ JAYYIDAN ٌ ِْ َ ĤARĪZUN َ َ ŚALLAŚA َ‫ر‬َ‫و‬ َ JĀWARA ٌ‫س‬ِ‫ر‬ َ ĤĀRISUN ُ ŚUMMA ٌ‫ر‬َ ِ JIWARUN ْ‫س‬َ َْ ُ MUĤTARAS َ‫س‬ َ ĤARRASA ٌ‫ض‬ َ ُ MUĤARRIðUN ٌَْ ِ ĤIRFATUN ُ‫س‬َ ْ َ‫أ‬ 'AĤRASU َ‫ف‬ َ ĤARRAFA ٌ‫ف‬ ِ ĤIRRAFUN ٌ ِْ ْ َ TAĤRĪSUN َ‫ف‬َ َ ِْ‫ا‬ INĤARAFA َ‫ق‬َ َ ĤARAQA ٌ ِْ َ ĤARĪŞUN َ‫ف‬َ َْ ِ‫ا‬ IĤTARAFA ٌ‫ق‬ْ َ ĤARQUN َ‫ض‬ َ ĤARRAðA ٌ‫ف‬ْ َ ĤARFUN ٌ‫ك‬َ َ ĤARAKUN ٌْ َ QAŞDUN َ ََ TAQAŞŞARA َ َ َ QAŞAFA
  • 91. Arab Latin Arab Latin Arab Latin َََ KHABA'A َ َ‫د‬ DABBARA َ‫س‬َ‫أ‬َ‫ر‬ RA'ASA َ KHABBUN ٌ ِ‫َا‬‫د‬ DĀBIRUN ُ‫س‬َ‫أ‬ْ َ YAR'ASU ٌ ُْ KHUBŚUN ٌ ِْْ َ TADBĪRUN ٌَ‫َا‬‫ر‬ RĀYATUN ٌ َِْ KHABĪŚUN ُ َُ MUDABBIRU ‫َب‬‫ر‬ RABBA َ ََ KHABARA ٌ ِْ‫د‬ DIBSUN َ َ‫َا‬‫ر‬ RĀBAȚA َ َْ KHABRA ٌ ََ‫د‬ DABASUN َ‫ط‬ َِ‫ر‬ RIBĀȚA َ َ KHABBARA ٌ‫غ‬ َ‫د‬ DABBĀ'UN َ ُ‫ر‬ RUBBAMĀ َ ََْ ِ‫ا‬ IKHTABARA ٌ‫ر‬ َِ‫د‬ DIŚĀRUN ٌ َْ‫ر‬ RABWUN ٌ ُْ KHUBRUN ٌ‫ل‬ َ‫د‬ DAJJĀLUN ُ ََ‫ر‬ RATALU ٌ َِ KHABILUN َ َ‫د‬ DAJJALA ٌََ‫ر‬ RATAMUN ََ KHABĀ ٌ‫ح‬َْ َ‫د‬ DAĤDAĤUN ‫ُج‬‫ر‬ RUJJA ٌ‫ء‬ َِ KHIBĀ'UN َ َ ‫َا‬‫د‬ DĀKHALA َ َ‫ر‬ RAJJAĤA ٌ‫ل‬ َ KHATTĀLUN ٌ ْ َ‫د‬ DAKHLUN ٌ ْ ِ‫ر‬ RIJSUN َََ KHATAMA ٌ َ َ‫د‬ DAKHALUN َ َ‫ر‬ RAJJA'A ْ ََْ ِ‫ا‬ IKHTATAM ٌ ِ ‫َا‬‫د‬ DĀKHILUN َ َ ‫َا‬‫ر‬ RĀJA'A ٌَْ KHATMUN ٌ َ ْ َ MADKHALUN َ َ ‫َا‬ َ TARĀJA'A ٌ‫ة‬َ‫ر‬ ََ KHAŚĀRATUN َ َ ْ َ‫د‬ DAKHMASA َ َ ْ َْ ِ‫ا‬ ISTARJA'A ٌ ِ َ KHĀŚIRUN ٌ ِ َ‫د‬ DAKHINUN ٌَ ْ َ‫ر‬ RAJ'ATUN ٌ‫ج‬‫َا‬ ُ KHURĀJUN ُ َ‫َر‬‫د‬ DARRABAHU ٌَْ َ‫ر‬ RAJFATU ٌ‫ج‬ْ َ KHARJUN ٌ َْ‫ر‬ُ‫د‬ DURBATUN َ َ َ TARAJJALA ٌ‫ج‬ْ‫و‬ُ ُ KHURŪJUN ٌ ْ‫ْر‬ َ TADRĪBUN ٌ ِ َ‫ر‬ RAJILUN َ َ ْ َ KHARKHARA ٌ َْ‫ر‬ِ‫د‬ DIRBASUN ٌ ِ ‫َا‬‫ر‬ RĀHILUN ٌ‫ل‬َ‫د‬ْ َ KHARDALUN َ‫ج‬َ‫ر‬َ‫د‬ DARAJA ٌِ َ‫ر‬ RAĤIMA ٌ‫ز‬َ َ KHARAJUN َ‫ج‬ِ‫ر‬َ‫د‬ DARIJA ٌ‫ء‬ َ َ‫ر‬ RAKHĀ'UN ٌ‫س‬ َ KHARRASUN ً َ َ‫ر‬َ‫د‬ DARAJATAN ٌ ْ َ‫ر‬ RAKHWUN ٌ‫ع‬َ‫و‬ْ ِ KHIRWA'UN َ‫س‬‫َر‬‫د‬ DARRASA ٌ‫ذ‬‫َا‬‫ذ‬َ‫ر‬ RAśĀśUN ٌ ِْ َ KHARĪFUN ٌَْ َ‫د‬ DASTATUN ٌ ْ َ‫ر‬ RASLUN َ َْ َ KHARFASYA َ‫ش‬َ‫د‬ DASYA َ‫ق‬َ‫ز‬َ‫ر‬ RAZAQA َ‫ق‬َ َ KHARAQA ٍ‫ع‬‫َا‬‫د‬ DĀ'IN َ‫ق‬ِ‫ز‬ُ‫ر‬ RUZIQA ٌ‫ط‬‫َا‬ ِ QIRĀȚUN َ َ ْ َ QARȚASA َ َْ َ QARQAŞA
  • 92. Arab Latin Arab Latin ٌ‫ت‬ َُ SUBĀTUN ٌ ََ ŞABABUN َ َ َ SĀBAQA َ ََ ŞABAĤA َ ََ SABAKA َ َْ َ‫أ‬ AŞBAĤA ٌ ِ َ َ MASABIKUN َ َ ُْ ŞUBĤATA ٌ‫ة‬َ‫د‬ َ SĀDATUN َ ŞAĤĤA ِ َُ SUDASIYYUN ْ ِ ŞIĤĤAH َ‫س‬‫َا‬ُ SUDĀSA ْ‫ر‬ َِ ŞIFĀR ْ‫س‬ َ َ MASADDAS َ‫ب‬‫َا‬ َ ŞAWĀBA ‫ًى‬ُ SUDAN َ‫ب‬ َ ŞĀBA ٌ‫ة‬‫َا‬َ SADĀTUN ْ َ َ ŞĀAH ٌ‫ر‬ْ‫و‬ُ ْ َ MASRŪRUN ‫ى‬ َ ȚARRĀ ‫ا‬ ِ SIRRAN ٌ َِْ ȚAFĪFUN ٌ‫ب‬َ َ SARABUN ٌَِ َ ȚĀFIYATUN ٌ‫ب‬ْ ِ SIRBUN ْ‫ل‬ َُ ȚUFĀL َ‫ح‬‫ا‬ َ SARRĀĤA َ 'ADDUN ْ‫ن‬ َ ‫َا‬ َ SARĀȚĀN ٌَِْ 'ADĪDUN َ‫ع‬ َ َ TASARRA'A َ‫ل‬َِ 'ADILA ْ‫م‬َ َ SARAM َ َ َ GASAQA ٌَ ْ َ SARMADUN ٌ‫ل‬ْ َ GAZLUN ٌَ ْ ُ SUR'ATUN ‫َا‬ َ GARĀ ْ‫ن‬ َ SAFFĀN ْ‫د‬ َ FARRAD َ َ SAFFAKA ُ‫س‬َ َ FARASU َ َ SĀQAÃ ْ‫ق‬‫َا‬ ِ FIRĀQ ْ ِ‫آ‬ َ SĀKIF ٌ ْ َ FASĤUN َ َ َ SAKANA ُ‫ء‬ َ ُ FUSĀ'U ٌ ََ SALASUN ٌ‫د‬ َ َ FASĀDUN َ َِ SALIȚA َ ََ FAQA'A ٌ ِ َ SĀLIFUN َِ َ FĀQIDA َ ََ SALAKA ْ ََ FAQAȚ ٌ َْ QABðUN ٌ ِْ QIBSUN Ket: output yang salah ditandai dengan tanda garis bawah yang salah ada 4 dari 250 kata.
  • 93. Lampiran 4 No. Arab Latin 1. ِ َ َ ْ‫ا‬ ُ‫ص‬َ ُ FURAŞU L‘AMALI 2. ٍ ْ َ ََ‫ا‬ ‘ABĀ BAKRIN 3. ُ َْ َ َ َ‫آ‬ KAMĀ BA‘AŚTU 4. ْ ُُْ‫آ‬ ََُْ ĤAIŚUMA KUNTUM 5. ُ‫ة‬َ‫أ‬ْ َ ْ‫ا‬ ِ َ َ BAGATIL MAR’ATU 6. ٌ َ ُ َ‫ء‬ َ ERROR 7. ٌ َ ُ َ َ‫ه‬َ‫ذ‬ śAHABA MUĤAMMADUN 8. ‫ا‬ ِ ٌ َِْ‫آ‬ ERROR 9. ٌ ُِْ ٌ‫ب‬ َِ‫آ‬ KITĀBUN MUBĪNUN 10. ً ًَْ ُ‫م‬ ََ TANĀMU LAILAN 11. ٍ ِ ََُ ٍ َْ‫و‬ WAQTIN MUTA’AKHIRIN 12. ‫ًا‬ َِْ‫آ‬ ُ َ ْ َ TASHARU KAŚIĪRAN 13. ٌ ِْ َ‫أ‬ ٌ‫ر‬‫َا‬‫د‬ DĀRUN ‘AMĪNUN 14. ْ ََْ‫ا‬ ‫َا‬َ‫ه‬ HAśĀ LBALAD 15. ْ ِ‫َا‬‫ذ‬ ُ‫آ‬ KULLU śĀLIKA 16. ٍ‫م‬ْ َ ُ‫آ‬ KULLA NAUMIN 17. ِ َْ َ َ ُ َِ َ ERROR 18. َ ِ‫َا‬َ‫آ‬ َ ََْ‫أ‬ ‘ALAISA KAśĀLIKA 19. َ‫ك‬ َُ‫ه‬ ْ َ َ‫آ‬ ERROR 20. َِِْ َ ERROR 21. ُ َُ‫ر‬ْ َ ْ‫ت‬َ َُ‫آ‬ KAŚURAT ŚAURATUHU 22. ٍ ْ َ َ‫ن‬ْ‫و‬ُ‫د‬ DŪNA ȚAM‘IN
  • 94. 23. ُ ِْ ُ‫ف‬ َ َ TAKĀFU MINHU 24. ً َِْ َ َ َ SAKATA QALĪLAN 25. َ ُ‫أ‬ ِ ْ َ BAȚNI UMMIKA 26. َ ُ ََْ ْ َ LAN YANFA‘UKA 27. ْ َ ْ َ ‫َا‬‫ذ‬ َ MĀśĀ TA‘MAL 28. ٍ‫ء‬ْ َ ُ‫آ‬ KULLU SI’IN 29. ‫َا‬َ‫ه‬ َ َْ‫آ‬ KAIFA HAśĀ 30. ِ ََْ ُ َ‫ه‬ْ َ ERROR 31. ْ ُ َ َ َْ LAISA LAHUM 32. ِ َ َ ْ‫ا‬ َ ِ MINA LJAMALI 33. َ َْ ْ‫ا‬ ََ َ‫و‬ WASAQĀ LKALBA 34. ْ َ ًََْ َ ِ َ ERROR 35. ْ َ َِْ‫ا‬ َ‫م‬ْ َ ERROR 36. َ ِْ َ َِْ ََْ‫ا‬ ALQARĪBATA MINHA 37. ِ‫ف‬ْ‫و‬ُ ْ َ ْ‫ا‬ ِ َ ERROR 38. ِ َ َ ْ‫ا‬ َ ِ MINA LJAMALI 39. ُ‫م‬ َُ َ‫ن‬ َ‫آ‬ ERROR 40. ِِ ِْ َ َ َ MA‘A BA‘ĪRIHI 41. ِ ْ ِْ‫ا‬ َْ َ BA‘DA LFI‘LI 42. ِ‫ذ‬ْ ُ ًْ َ ERROR 43. ‫ًا‬ ْ َ ُ ُ ْ َ YASKUNU QASRAN 44. ََِْْ‫أ‬ َ ْ َ TAHTA AIDIĪNĀ 45. َ ِْ ِْ ُ ْ‫ا‬ ِ‫ل‬‫َا‬ ْ َ‫أ‬ ERROR