7
BAB II LANDASAN TEORI
2.1
Rekayasa Perangkat Lunak Perangkat lunak memiliki dua peran. Satu sisi berfungsi sebagai sebuah
produk dan sisi lainnya sebagai kendaraan yang mengantarkan sebuah produk. Perangkat lunak mengantarkan potensi perhitungan yang dibangun oleh perangkat lunak komputer. Tidak peduli apakah perangkat lunak beroperasi dalam sebuah telepon selular atau beroperasi disebuah mainframe komputer. Perangkat lunak merupakan
transformer
suatu
informasi
yang
memproduksi,
mengatur,
memperoleh, memodifikasi, menampilkan atau memancarkan informasi dimana pekerjaan dapat menjadi sangat sederhana. Sebagai kendaraan yang dipakai untuk mengantar produk, perangkat lunak berlaku sebagai dasar untuk kontrol komputer (sistem operasi), komunikasi informasi, dan penciptaan serta kontrol dari program-program lain (piranti dan lingkungan perangkat lunak). (Pressman : 1997)
2.2
Pandangan Umum Rekayasa Perangkat Lunak Rekayasa merupakan analisis, desain, konstruksi, verifikasi, dan
manajemen kesatuan teknik atau sosial. Usaha yang berhubungan dengan rekayasa perangkat lunak dapat dikategorikan kedalam tiga fase umum dengan tanpa memperdulikan area aplikasi, ukuran proyek, atau kompleksitasnya. Diantaranya adalah sebagai berikut: 1.
Fase definisi (Definition Phase) berfokus pada “apa”(what); Pada definisi ini pengembang perangkat lunak harus mengidentifikasi
informasi apa yang akan diproses, fungsi dan unjuk kerja apa yang dibutuhkan, tingkah laku sistem seperti apa yang diharapkan, interface apa yang akan dibangun, batasan desain apa yang ada, dan kriteria validasi apa yang dibutuhkan untuk mendefinisikan sistem yang sukses. Kebutuhan (requirement) kunci dari sistem dan perangkat lunak yang didefinisikan.
7
8
2.
Fase pengembangan (Development phase) berfokus pada “bagaimana” (how); Yaitu di mana selama masa pengembangan perangkat lunak, teknisi harus mendefinisikan bagaimana data dikonstruksikan, bagaimana fungsifungsi diimplementasikan, sebagai sebuah arsitektur perangkat lunak, bagaimana detail prosedur akan diimplementasikan, bagaimana interface ditandai (dikarakterisasi), bagaimana rancangan akan diterjemahkan kedalam bahasa pemrograman (atau bahasa non-prosedural), serta bagaimana pengujian akan dilakukan.
3.
Fase pemeliharaan (maintenance phase) berfokus pada ”perubahan” (change); Yang dihubungkan dengan koreksi kesalahan, penyesuaian yang dibutuhkan ketika lingkungan perangkat lunak berkembang, serta perubahan sehubungan dengan perkembangan yang disebabkan oleh perubahan kebutuhan pelanggan. Fase pemeliharaan mengaplikasikan lagi langkahlangkah pada fase definisi dan fase pengembangan tetapi semuanya tetap tergantung pada konteks perangkat lunak yang ada. Ada empat tipe perubahan yang terjadi selama fase pengembangan, yaitu :
Koreksi Meskipun dengan jaminan kualitas yang terbaik, sepertinya pelanggan akan tetap
menemukan cacat pada perangkat lunak.
Pemeliharaan korektif (Corrective maintenance) mengubah perangkat lunak, membetulkan cacat atau kerusakan.
Adaptasi Dari waktu ke waktu, lingkungan original (contohnya CPU, sistem operasi, aturan-aturan bisnis, karakteristik produk eksternal) dimana perangkat lunak dikembangkan akan terus berubah. Pemeliharaan adaptif (Adaptif maintenance) menghasilkan modifikasi kepada perangkat lunak untuk mengakomodasi perubahan pada kebutuhan fungsional original.
9
Perkembangan (Enchancement) Ketika perangkat lunak dipakai, pemakai/pelanggan akan mengenali fungsi-fungsi
tambahan
yang
memberi
mereka
keuntungan.
Perfective
maintenance memperluas perangkat lunak sehingga melampaui kebutuhan fungsi originalnya.
Pencegahan Keadaan perangkat lunak semakin memburuk sehubungan dengan waktu, dan karena itu, preventive maintenance yang sering juga disebut Rekayasa perangkat lunak, harus dilakukan untuk memungkinkan perangkat lunak melayani kebutuhan para pemakainya. Pada dasarnya preventive maintenance melakukan perubahan pada program komputer sehingga bisa menjadi lebih mudah untuk dikoreksi, disesuaikan, dan dikembangkan. (Pressman : 1997)
2.3
Model proses Perangkat Lunak Model proses perangkat lunak merupakan deskripsi yang disederhanakan
dari proses perangkat lunak yang dipresentasikan dengan sudut pandang tertentu. Model, sesuai sifatnya, merupakan penyederhanaan, sehingga model proses perangkat lunak merupakan abstraksi dari proses sebenarnya yang dideskripsikan. Model proses bisa mencakup kegiatan yang merupakan bagian dari proses perangkat lunak, produk perangkat lunak, dan peran orang yang terlibat pada rekayasa perangkat lunak. Beberapa contoh jenis model proses perangkat lunak yang dapat dihasilkan diantaranya : 1.
Model aliran kerja (work flow). Model ini menunjukkan urutan kegiatan pada proses bersama dengan input, output, dan ketergantungannya. Kegiatan pada model ini mempresentasikan pekerjaan manusia.
2.
Model aliran data (data flow) atau kegiatan. Model ini mempresentasikan proses sebagai satu set kegiatan yang masing-masing melakukan transformasi data. Model ini menunjukkan bagaimana input ke proses, misalnya spesifikasi, ditransformasikan menjadi output, misalnya desain. Kegiatan disini mungkin berada pada tingkat yang lebih rendah dari pada
10
kegiatan pada model aliran kerja. Model ini mempresentasikan tranformasi yang dilakukan oleh orang atau komputer. 3.
Model peran/aksi. Model ini mempresentasikan peran orang yang terlibat pada proses perangkat lunak dan kegiatan yang menjadi tanggung jawab mereka. Salah satu model proses yang secara umum digunakan dalam
pengembangan rekayasa perangkat lunak adalah model Waterfall. Model ini mengambil kegiatan proses dasar seperti spesifikasi, pengembangan, validasi, dan evolusi, dan merepresentasikannya sebagai fase-fase proses yang berbeda seperti spesifikasi persyaratan, perancangan perangkat lunak, implementasi, pengujian dan seterusnya. (Sommerville : 1982) Berikut ini merupakan kegiatan-kegiatan pengembangan dasar dari aktivitas proses dalam model Waterfall yaitu : 1.
Analisis dan definisi persyaratan. Pelayanan, batasan, dan tujuan sistem ditentukan melalui konsultasi dengan user sistem. Persyaratan ini kemudian didefinisikan secara rinci dan berfungsi sebagai spesifikasi sistem.
2.
Perancangan sistem dan perangkat lunak. Proses perancangan sistem membagi persyaratan dalam sistem perangkat keras atau perangkat lunak. Kegiatan ini menentukan arsitektur sistem secara keseluruhan. Perancangan perangkat lunak melibatkan identifikasi dan deskripsi abstraksi sistem perangkat lunak yang mendasar dan hubungan-hubungannya.
3.
Implementasi dan pengujian unit. Pada tahap ini, perancangan perangkat lunak direalisasikan sebagai serangkaian program atau unit program. Pengujian unit melibatkan verifikasi bahwa setiap unit telah memenuhi spesifikasi.
4.
Integrasi dan pengujian sistem. Unit program atau program individual diintegrasikan dan diuji sebagai sistem yang lengkap untuk menjamin bahwa persyaratan sistem telah dipenuhi. Setelah pengujian sistem, perangkat lunak dikirim kepada pelanggan.
11
5 5.
Operaasi dan pem meliharaan. Biasanya (walaupun ( ttidak seharuusnya), ini meruppakan fase siiklus hidup yyang paling lama. Sistem m diinstal daan dipakai. Pemeliharaan menncakup koreeksi dari berrbagai error yang tidak ditemukan t terdahulu, perbaikan p a atas implemeentasi unit sistem dan pada tahap-tahap pengem mbangan peelayanan sisstem, semenntara persyarratan-persyaaratan baru ditamb bahkan. Untuuk lebih jelaasnya, lihat Gambar G 2.1.
Gambar 2.1 Model Waterfall. W (SSommerville : 1982)
2 2.4
UML L (Unified Modelling M L Language) UML L (Unified Modeling L Language) adalah a ‘bahaasa’ pemodeelan untuk
s sistem atau perangkat luunak yang berparadigm b ma ‘berorienttasi objek’. Pemodelan P ( (modeling) sesungguhnnya digunaakan untuk penyederhhanaan perm masalahanp permasalaha an yang kom mpleks sedemikian rupaa sehingga llebih mudah h dipelajari d dan dipahami. Adapunn tujuan pemodelan p (dalam kerrangka peng gembangan s sistem/peran ngkat lunakk aplikasi) yaitu sebag gai sarana analisis, peemahaman, v visualisasi, dan komuunikasi antaar anggota tim pengem mbang (saaat seorang a analis/peran cang peranngkat lunakk bekerja dalam d tim yang beraanggotakan b beberapa/ban nyak anggoota), serta seebagai saran na dokumenntasi (yang bermanfaat b u untuk menellaah perilakuu perangkat lunak secarra seksama sserta berman nfaat untuk
12
melakukan pengujian terhadap perangkat lunak yang telah selesai dikembangkan). (Nugroho : 2010) UML merupakan kesatuan dari bahasa pemodelan yang dikembangkan oleh Booch, Object Modeling Technique (OMT) dan Object Oriented Software Engineering (OOSE). Metode Booch dari Grady Booch terkenal dengan nama metode Design Object Oriented. Metode ini menjadikan proses analisis dan desain kedalam empat tahapan iteratif, yaitu: identifikasi kelas-kelas dan obyek-obyek, identifikasi semantik dari hubungan obyek dan kelas tersebut, perincian interface dan implementasi. Keunggulan metode Booch adalah pada detil dan kayanya dengan notasi dan elemen. Pemodelan OMT yang dikembangkan oleh Rumbaugh didasarkan pada analisis terstruktur dan pemodelan entity-relationship. Tahapan utama dalam metodologi ini adalah analisis, desain sistem, desain obyek dan implementasi. Keunggulan metode ini adalah dalam penotasian yang mendukung semua konsep OO. Metode OOSE dari Jacobson lebih memberi penekanan pada use case. OOSE memiliki tiga tahapan yaitu membuat model requirement dan analisis, desain dan implementasi, dan model pengujian (test model). Keunggulan metode ini adalah mudah dipelajari karena memiliki notasi yang sederhana namun mencakup seluruh tahapan dalam rekayasa perangkat lunak. UML tidak hanya dominan dalam penotasian di lingkungan OO tetapi juga populer diluar lingkungan OO. Paling tidak ada tiga karakter penting yang melekat di UML yaitu sketsa, cetak biru dan bahasa pemrograman. Sebagai sebuah sketsa, UML bisa berfungsi sebagai jembatan dalam mengkomunikasikan beberapa aspek dari sistem. Dengan demikian semua anggota tim akan mempunyai gambaran yang sama tentang suatu sistem. UML bisa juga berfungsi sebagai sebuah cetak biru karena sangat lengkap dan detil. Dengan cetak biru ini maka akan bisa diketahui informasi detil tentang coding program (forward engineering) atau bahkan membaca program dan menginterpresentasikannya kembali kedalam diagram (reverse engineering). Reverse engineering sangat berguna pada situasi dimana kode program yang tidak terdokumentasi akan dimodifikasi/dipelihara. Hal ini bisa terjadi ketika dokumentasi asli hilang atau bahkan belum dibuat sama sekali. Sebagai bahasa pemrograman, UML dapat
13
menterjemahkan diagram yang ada di UML menjadi kode program yang siap untuk dijalankan. (Munawar :2005)
2.4.1
Diagram UML UML menyediakan 13 macam diagram untuk memodelkan aplikasi
berorientasi objek, seperti yang terdapat dalam Tabel 2.1.
Tabel 2.1 Jenis jenis Diagram UML (Munawar :2005) No. 1 2 3 4 5 6 7 8 9 10 11 12 13
Diagram Activity Class Communication Component Composite structure Deployment Interaction overview Object Package Sequence State machine Timing Use case
Kegunaan Perilaku procedural dan paralel Class, Fitur, dan hubungan-hubungan Interaksi antar objek; penekanan pada jalur Struktur dan koneksi komponen Dekomposisi runtime sebuah class Pemindahan artifak ke node Campuran sequence dan activity diagram Contoh konfigurasi dari contoh-contoh Struktur hirarki compile-time Interaksi antar objek; penekanan pada sequence Bagaimana even mengubah objek selama aktif Interaksi antar objek; penekanan pada timing Bagaimana user berinteraksi dengan sebuah sistem
Berikut ini akan dijelaskan 4 macam diagram yang paling sering digunakan dalam pembangunan aplikasi berorientasi object, yaitu use case diagram, sequence diagram, activity diagram, dan class diagram. 1.
Use Case Diagram Use case adalah konstruksi untuk mendeskripsikan bagaimana sistem akan
terlihat di mata pengguna potensial. Use case terdiri dari sekumpulan scenario yang dilakukan oleh seorang actor (orang, perangkat keras, urutan waktu atau sistem yang lain). Sedangkan use case diagram memfasilitasi komunikasi di antara analis dan pengguna serta di antara analis dan klien. Use case merepresentasikan operasi-operasi yang dilakukan oleh actor. Use case digambarkan berbentuk elips dengan nama operasi dituliskan di dalamnya. Actor yang melakukan operasi dihubungkan dengan garis lurus ke use case. Notasi notasi yang digunakan dapat dilihat dalam table 2.2. (Munawar :2005)
14
Tabel 2.2 Notasi Use Case Diagram (Fowler : 2005) Simbol
Nama
Keterangan Actor adalah pengguna sistem. pengguna tidak terbatas hanya manusia saja, jika
Actor
sebuah sistem berkomunikasi dengan aplikasi lain dan membutuhkan input atau memberikan
output,
maka
aplikasi
tersebut juga bisa dianggap sebagai actor. Use case digambarkan sebagai lingkaran Use case
elips dengan nama use case dituliskan didalam elips tersebut. Digunakan
untuk
menggambarkan
hubungan antara use case dengan use Relationship
case lainnya. Digunakan
untuk
menggambarkan
Extension
hubungan antara use case dengan use
point
case
yang
diperpanjang
(extended)
maupun yang dimasukkan (included). Asosiasi
digunakan
untuk
menghubungkan aktor dengan use case. Association
Asosiasi digambarkan dengan sebuah garis yang menghubungkan antara Aktor dengan Use Case. Kondisi yang mendeskripsikan apa yang
<<extended>>
Extended
terjadi antara use case dengan use case yang diperpanjang. Kondisi aliran proses langsung (direct
<
>
relationship) antara dua use case yang Include
secara
tidak
langsung
menyatakan
kelakuan dari use case yang dimasukkan
15
Gambar 2.2 Contoh Ringkasan Use Case sistem Restoran (Munawar :2005) 2. Sequence Diagram Sequence diagram digunakan untuk menggambarkan perilaku pada sebuah scenario. Diagram ini menunjukkan sejumlah contoh obyek dan message (pesan) yang diletakkan diantara obyek-obyek ini didalam use case. Komponen utama sequence diagram terdiri atas obyek yang dituliskan dengan kotak segi empat bernama. Message diwakili oleh garis dengan tanda panah dan waktu yang ditunjukkan dengan progress vertical. Notasi notasi yang digunakan dapat dilihat dalam tabel 2.3. (Munawar :2005)
Tabel 2.3 Notasi Sequence Diagram (Munawar : 2005) Simbol
Nama
Keterangan Aktor juga dapat berkomunikasi dengan objek, maka aktor juga dapat diurutkan
Actor
sebagai kolom. Simbol Aktor sama dengan simbol pada Aktor Use Case Diagram Aktivasi dinotasikan sebagai sebuah kotak segi empat yang digambar pada sebuah
Activation
lifeline. Aktivasi mengindikasikan sebuah objek yang akan melakukan sebuah aksi.
16
Tab bel 2.3 Notaasi Sequencee Diagram (M (Munawar : 2005) 2 L Lifeline Liffeline
( lanjutan )
meengindikasikkan
keberaadaan
ssebuah objek k dalam bassis waktu. Notasi N uuntuk Lifelinne adalah ggaris putus-p putus vvertikal yangg ditarik darii sebuah objeek. P Pesan, digam mbarkan denngan anak panah p
Messsage
hhorizontal
antara
m mengindikasikan
Acctivation. kom munikasi
Pesan P a antara
oobjek-objek.
Gambar 2.3 3 Contoh Seqquence Diaggram untuk Aktivitas Diisplay Curreent Confi figuration (M Munawar : 2005)
3.
A Activity Diag gram A Activity diaggram adalahh teknik unttuk mendesskripsikan loogika prosedural
prosess bisnis dan aliran kerja dalam banyyak kasus. Activity A diaggram mempuunyai peran seperti halny ya flowchartt, akan tetappi perbedaannnya dengan flowchart ad dalah b mendukuung perilakuu paralel sedaangkan flow wchart tidak bisa. b activitty diagram bisa A Activity diagram menu unjukkan tahapan, peengambilan keputusan dan percabbangan. Diaagram ini saangat bergunna untuk menunjukkan m n operasi seebuah obyekk dan proses bisnis. Keleebihan activvity diagram m dibanding flowchart ad dalah
17
kemampuannya dalam menampilkan aktivitas paralel. Activity diagram bisa digunakan untuk menunjukkan siapa mengerjakan apa dengan teknik partision. Notasi notasi yang digunakan dapat dilihat dalam tabel 2.4. (Munawar :2005)
Tabel 2.4 Notasi Activity Diagram (Munawar : 2005) Simbol
Keterangan Titik
awal
(start
point),
digunakan
untuk
menggambaarkan awal dari diagram aktivitas. Titik
akhir
(end
point),
digunakan
untuk
menggambarkan akhir dari diagram aktifitas. Aktivitas, digunakan untuk menggambarkan aktivitas dalam diagram aktifitas. Node keputusan (decision node), digunakan untuk menggambarkan kelakuan pada kondisi tertentu. Fork memiliki satu aksi yang masuk dan beberapa aksi yang keluar. Join digunakan untuk menggambarkan beberapa aksi yang masuk dan satu aksi yang keluar. Aksi penerimaan kejadian (accept event action), sebuah aksi yang menunggu sebuah kejadian dari suatu peristiwa bertemu kondisi yang spesifik. DataStore digunakan untuk menjaga agar semua tanda <>
yang masuk dan menduplikasikannya saat mereka dipilih untuk pindah ke alur selanjutnya (downstream). Akhir alur (flow final), digunakan untuk menhancurkan semua tanda yang datang dan tak memiliki efek alur dalam aktifitas
18
Gambar 2.4 Contoh Activity Diaagram sederrhana (Munaawar : 2005))
4.
C Class Diagra am C Class diagram m sangat meembantu dallam visualisasi struktur kelas dari suatu s
sistem m. Hal ini dissebabkan kaarena class aadalah deskrripsi kelomppok obyek-oobyek dengan n property, perilaku (operasi) dan relasi yangg sama. Disaamping itu class diagraam bisa mem mberikan paandangan global g atas sebuah s sisteem. Hal terssebut tercerm min dari claass-class yaang ada dann relasinya satu dengann lainnya. Itulah I sebabnnya class diagram menjjadi diagram m paling poppuler di UM ML. Notasi notasi n yang digunakan d daapat dilihat dalam d tabel 22.5. (Munaw war : 2005)
bel 2.5 Notaasi Class Dia agram (Munawar : 2005 5) Tab
19
Simbol
Nama
Keterangan Class adalah blok-blok pembangun pada pemrograman berorientasi objek. Sebuah
nama kelas
digambarkan
sebagai
sebuah kotak yang terbagi atas 3 bagian.
atribut method
class
Class
Bagian atas adalah bagian nama dari class. Bagian tengah mendefinisikan property/atribut class. Bagian akhir mendefinisikan
metode-metode
dari
class. Sebuah asosiasi merupakan sebuah relationship paling umum antara 2 class, dan dilambangkan oleh sebuah garis yang menghubungkan antara 2 class. Garis ini bisa melambangkan tipe1..n Owned by 1
Association
tipe
relationship
dan
menampilkan
juga
dapat
hukum-hukum
multiplisitas pada sebuah relationship ( contoh
:
one-to-one,
one-to-many,
many-to-many). Jika sebuah class tidak bisa berdiri sendiri dan harus merupakan bagian dari class lain, maka class tersebut memiliki relasi composition Composition
terhadap
class tempat dia bergantung tersebut. Sebuah
relationship
digambarkan ujung
sebagai
berbentuk
composition garis
jajaran
dengan genjang
berisi/solid.
Tabel 2.5 Notasi Class Diagram (Munawar : 2005)
(lanjutan)
20
Kadangkala sebuah class menggunakan class
yang
lain.
Umumnya
dependency.
ini
disebut
penggunaan
digunakan
dependency Dependency
Hal
untuk
menunjukkan operasi pada suatu class yang menggunakan class yang lain. Sebuah dependency
dilambangkan
sebagai sebuah panah bertitik-titik. mengindikasikan
Aggregation
keseluruhan bagian relationship dan biasanya
disebut
“mempunyai Aggregation
sebuah”
sebagai atau
relasi “bagian
dari”. Sebuah aggregation digambarkan sebagai sebuah garis dengan sebuah jajaran genjang yang tidak berisi/tidak solid. Sebuah relasi generalization sepadan dengan sebuah relasi inheritance pada konsep
Generalization
berorientasi
objek.
Sebuah
generalization dilambangkan dengan sebuah panah dengan kepala panah yang tidak solid yang mengarah ke kelas “parent”-nya/induknya.
21
Gambar 2.5 Contoh Class Diaram pada kasus KRS (Munawar : 2005)
2.5
Kamus Kamus adalah sejenis buku rujukan yang menerangkan makna kata-kata.
Kamus berfungsi untuk membantu seseorang mengenal perkataan baru. Selain menerangkan maksud kata, kamus juga mungkin mempunyai pedoman sebutan, asal-usul ( etimologi ) sesuatu perkataan dan juga contoh penggunaan bagi sesuatu perkataan. Untuk memperjelas kadang kala terdapat juga ilustrasi didalam kamus. Kata kamus diserap dari bahasa Arab qamus, dengan bentuk jamaknya qawamis. Kata Arab itu sendiri berasal dari kata Yunani okeanos yang berarti ‘lautan’. Sejarah kata itu jelas memperlihatkan makna dasar yang terkandung didalam kata kamus, yaitu wadah pengetahuan, khususnya pengetahuan bahasa, yang tidak terhingga dalam dan luas. Dewasa ini kamus merupakan khazanah yang memuat pembendaharaan kata suatu bahasa, yang secara ideal tidak terbatas jumlahnya. Setiap kebudayaan besar didunia bangga akan kamus bahasanya. Dalam kenyatannya kamus itu tidak menjadi lambing kebanggaan suatu bangsa, tetapi juga mempunyai fungsi dan manfaat praktis.
22
2.5.1 Kamus Arab-Indonesia Kamus ini menggunakan dua bahasa, yakni dengan menggunakan bahsa Arab-Indonesia atau sebaliknya Indonesia-Arab. Kamus ini usaha pendaftaran yang luas dan bertujuan mencangkup sebagian besar kata dan ungkapan Arab dan Indonesia yang paling umum dipakai di Arab. Kamus ini diperuntunkan bagi orang Indonesia yang mayoritas beragama Islam yang ingin belajar bahasa Arab agar lebih sempurna pelaksanaan ibadahnya, dan penting bagi yang ingin lebih memahami agamanya.
2.5.2 Pola Dasar Bahasa Arab Pola dasar bahasa Arab, maksudnya adalah kerangka, bagan atau garisgaris besar yang menjadi inti pembahasan tata bahasa Arab. Dengan kata lain, pada kesempatan ini kita hendak membicarakan objek atau sasaran utama yang merupakan unsure terbentuknya tata bahasa Arab. Tujuan agar nanti memperoleh gambaran yang jelas tentang pokok pelajaran. Hampir semua tata bahasa itu pada dasarnya memiliki pokok-pokok pembicaraan yang sama, intinya perihal huruf, kata, dan kalimat. Antara satu dengan yang lainnya terdapat hubungan erat. Menurut tata urutannya, huruf atau abjad adalah bagian yang paling kecil, kemudian kata, dan dari rangkaian kata-kata maka terciptalah suatu kalimat. Ini pun bias diteruskan menjadi bagian yang lebih besar, misalnya dari beberapa kalimat terciptalah alinea, dari sejumlah alenia terbentuk fasal, dari kumpulan fasal-fasal terbentuk bab, akhirnya isi karangan seluruhnya yang menggambarkan wujud dari suatu bahasa. Akan tetapi, sesungguhnya mulai urutan alenia dan seterusnya, tidak lain berintikan pada kalimat. Sebab kalimat-kalimat yang tersusun pada alenia itulah sebenarnya yang mengandung arti secara sempurna, sehingga kalimat-kalimat itulah yang menjadi pokok dari suatu bahasa. Oleh karenanya jika kita telah menguasai perihal kalimat, otomatis sama dengan menguasai tata bahasa tersebut secara keseluruhan. Namun demikian, tidak mungkin disangkal bahwa untuk sampai kesana kita harus menguasai bagian yang lebih kecil dahulu yaitu hhuruf ( abjad ) dan menyusul perihal kata.
23
2.5.3
Huruf Abjad Hijaiyah Huruf arab adalah uruf yang dipergunakan sebagai ejaan dalam bahasa
Arab. Huruf arab dipergunakan untuk menulis sebuah kata atau kalimat dalam bahasa arab. Huruf –huruf arab ini biasa disebut dengan Huruf Hijaiyah/Hurufful Hijaiyah. Mengenai jumlah hurufnya bayak ulama yang mengelompokan berbedabeda, ada yang mengelompokan menjadi 28, 29 dan 30. Huruf Hijaiyah ditujukan pada tabel berikut.
Tabel 2.6 Huruf Hijaiyah ج
ث
ت
ب
ا
ر
ذ
د
خ
ح
ض
ص
ش
س
ز
ف
غ
ع
ظ
ط
ن
م
ل
ك
ق
ي
ء
ﻻ
ﮦ
و
Abjad Arab, istilah aslinya disebut “huruf Hijaiyah’atau huruf Al-Quran. Jumlahnya 28 atau 30, dimulai dari alif ( ) اdan diakhiri dengan ya ( ) ي. Sebelum mempelajari bahasa Arab, kita harus menguasi terlebih dahulu perihal huruf Hijaiyah. Pertama cara mengucapkan tiap-tiap huruf secara fashih, kedua harus halal bentuk-bentuk dan cara menulisnya, ketiga cara merangkainya guna membentuk suatu kata yang mengandung suatu arti atau menyusun kalimat senpurna, dan sebagainya. Juga harus pula dikuasai tentang syakal atau harakat, sekaligus penggunaan masing-masing dalam menulis Arab.
24
Tentang apa manfaatnya mempelajari huruf hijaiyah, kiranya sudah jelas bahwa huruf hijaiyah itulah yang merupakan unsur paling pokok bagi terbentuknya bagi sebuah kata dan sekaligus kalimat bahasa Arab. Misalnya huruf kaf () ك, ta’()ت dan ba’ ( ) بkita dapat menyusun kata ( ) آﺘﺐyang artinya dia (laki-laki), kemudian dari huruf dal’( )دro’ ( )رdan sin’( ) سdapat dibentuk kata( ) س ر دyang artinya pelajaran, dan sebagainya. Walhasil, mempelajari huruf Hijaiyah itu mutlak perlu, dan sekaligus merupakan langkah awal bagi orang yang ingin mempelajari bahasa Arab lebih lanjut.
2.5.4 Kata ( Al-Kalimah ) Yang paling awal yang perlu diketahui dalam hubungan ini adalah mengenai istilah “al-kalimah”, karena memang ada perbadaan dengan yang kita kenal dalam tata bahasa Indonesia sebagai “kata” dalam tata bahasa Arab disebut “al-kalimah”. Seperti halnya kata, pengertian “al-kalimah” yaitu : lafad yang menunjukan suatu arti tertentu yang sifatnya tunggal tanpa ada hubungannya dengan lafad yang lain. Atau dapat pula diartikan lafad yang menunjukan satu arti ( makna tunggal ). Selanjutnya, tentang pembagiaan al-kalimah ( kata ). Dalam tata bahasa Indonesia ( gaya lama ), “kata” dibagi menjadi 10 jenis, yaitu : ,kata benda, kata kerja, kata sifat, kata ganti, kata keterangan, kata bilangaan, kata sambung, kata depan, kata sandang, kata seru,. Sedangkan tata bahasa Indonesia ( gaya baru ) hanya mengakui 4 jenis kata, yaitu : kata benda, kata kerja, kata sifat, kata tugas. Pembagian jenis kata kedua inilah yang mirip dengan kaidah dalam tata bahasa Arab, yang hanya membagi kata kedalam 3 jenis yaitu : isim, fi’il, dan harf. Penjelasan masing-masing adalah sebagai tersebut dibawah ini.
a.
Isim Dari segi bahasa, isim artinya adalah nama. Sedangkan menurut istilah,
yang dimaksud isim dalam tata bahasa Arab adalah : jenis kata yang menunjukan nama atau sebutan terhadap sesuatu. Misalnya ( )اﻹﻧﺴﺎنmanusia, ( )آﺒﻴﺮbesar,
25
( )ﺧﻤﺴﺔlima, ()أﻧﺖ, dan sebagainya. Jadi ismi tidak sama dengan kata benda, melainkan lebih luas dengan pengertian tersebut, sebab termasuk didalamnya antara lain kata sifat, kata bilangan, kata ganti, kata petunjuk, kata sandang, kata Tanya. Jika dibandingkan dengan menurut tata bahasa Indonesia ( gaya baru ), maka kata sifat yang ada dalam pembagian tersebut menurut tata bahasa Arab termasuk jenis isim.
b.
Fi’il Pengertian fi’il persis sama dengan “kata kerja” da;lam bahasa Indonesia,
yaitu : jenis kata yang menunjukan terjadinya pekerjaan, perbuatan, atau peristiwa, baik pada masa lalu, sekarang, lampau, maupun akan dating. Contohnya : telah menulis, sedang menulis, penulis, yang ditulis, tulislah, dan sebagainya. Tentu saja ada bedanya, karena kata kerja dalam bahasa Indonesia tidak mengenal bentuk perubahan walupun waktu pelaksanaanya berbeda. Tidak mungkin terjadi perubahan bentuk pada kata kerja menulis, misalnya menjadi menulus atau menulas.
c.
Harf Pengertian harf adalah seperti “kata perangkai” atau menurut tata bahasa
Indonesia ( gaya baru ) disebut “kata tugas” yaitu : jenis kata yang memiliki tugas untuk menyambung suatu kata dengan kata yang lain atau kalimat yang satu dengan kalimat yang lainnya. Dapat pula dikatakan, bahwa harf (kata tugas) adalah : suatu kata yang gunanya untuk memperluas atau mengadakan transformasi kata atau kalimat. Contohnya pada table berikut :
Tabel 2.7 Kata perangkai dan "
di "
maka "
dengan "
tidak "
belum "
و
ﻓﻲ
ف
ﻣﻊ
ل
ﻟﻢ
26
2.5.5 Kalimah ( Jumlah Mufidah ) Kalimah atau yang dikenal dalam bahasa Indonesia sebagai “kalimat” menurut tata bahasa Arab disebut “kalam” atau “ jumlah mufidah kalam,artinya pembicaraan atau percakapan. Sedangkan jumlah mufidah, artinya susunan katakata yang berafidah. Dikatakan berfaidah, karena susunan kata-kata tersebut dapat menjadikan orang lain mengerti akan isi yang terkandung didalamnya. Dengan demikian, yang dimaksud jumlah mufidah atau kalam ( kalimat ) adalah : susunan kata-kata mempunyai pengertian sempurna dan dapat difahami seseorang menurut isi yang terkandung didalamnya. Suatu kalimat, kalam,atau jumlah mufidah, pada dasarnya dimaksudkan sebagai alat untuk menyampaikan isi hati keinginan seseorang pada orang lain, baik melalui lisan atau pun tulisan. Keinginan itu bias bermacam-macam, misalnya : ingin memberikan informasi atau sebuah berita, un tuk bertanya, memerintah, melarang, atau sekedar memangil saja. Oleh karenanya sebagaimana kita ketahui dalam tata bahasa Indonesia, maka dalam tata bahasa Arab juga ada beberapa jenis kalimat, ditunjukan pada tabel 2.4 berikut :
Tabel 2.8 Jenis Kalimat kalam 1
Khabar
Kalam berita
kalam 2
istfham
َا َﻧ َﺎ َا َﺗ َﻌَﻠ ُﻢSaya belajar Diamana kamu
kalimat Tanya
ﻦ َﺗ َﺘ َﻌَﻠ ْﻢ َ َا ْﻳbelajar
Kalam 3
amar
Kalimat perintah
ﻏَﻠ ْﻢ ْ ِاBelajarlah
Kalimat 4 5
kalam nahi larangan Kalam
Kalimat
nida'
panggilan
ﻟَﺎ َﺗ ْﻐَﻠ ْﻢJangan belajar ﻲ ْ ﺧ ِ ﻳَﺎَاHai saudara
27
Akan tetapi, dalam bahasa manapun biasanya ada satu jenis kalimat, yang dianggap paling pokok atau yang merupakan standar dalam arti menjadi pedoman bagi penyusunan jenis kalimat yang lain. Menurut tata bahasa Arab, yang dianggap sebagai standar atau induk dari semua jenis kalimat ialah kalimat berita (Kalam Khabariyah = jumlah khabariyah). Dengan alasan, karena baik pertannyaan , perintah, larangan, maupun panggialan, semua itu ada hakikatnya mengandung unsure pemberitahuan atau penyampaiaan isi hati si pembicara kepada orang lain. Maka demikianlah, ketika membicarakan tata bahasa Arab yang ada hubungannya dengan soal kalimat, maka yang menjadi ukuran atau standar adalah kalimat berita dan bukan jenis kalimat yang lain.
2.6
Basis Data Basis data, menurut Stephen dan Plew (2000), adalah mekanisme yang
digunakan untuk menyimpan informasi atau data. Dengan basis data, pengguna dapat dapat menyimpan data secara terorganisasi. Setelah data di simpan, informasi harus mudah diambil. Kriteria dapat digunakan untuk mengambil informasi. Cara data disimpan dalam basis data menentukan beberapa mudah mencari informasi berdasarkan banyak criteria. Data pun harus mudah ditambahkan kedalam basis data, dimodifikasi, dan dihapus (Simarmata dan Paryudi 2006). Struktur yang mendasari suatu basis data adalah model data yang merupakan kumpulan komponen konseptual untuk mendeskripsikan data, relasi data, data semantic, dan batasan konsistensi. Model data entity relationship diagram digunakan untuk mendeskripsikan rancangan basis data pada tingkatan logis.
2.6.1 Diagram ER (Entity-Relationship Diagram) Entity-Relationship Diagram menjelaskan semesta data yang ada pada dunia nyata. Diagram ER menerjemahkan ata mentransformasikan data dengan memanfaatkan sejumlah perangkat konseptual.
28
Gambar 2.6 Contoh Diagram ER penggadaian ( Maulana : 2008 )
2.6.2 Komponen Diagram ER Struktur logis (skema basis data) dapat ditujukan secara grafis dengan diagram ER yang dibentuk dari komponen berikut : a.
Entitas dan Himpunan Entitas Entitas merupakn individu yang mewakili sesuatu yang nyata dan dapat
dibedakan dari sesuatu yang lain. Sekelompok entitas sejenis dan berada dalam lingkup yang sama membentuk sebuah himpunan entitas menunjuk pada rumpun dari individu tersebut. Himpunan entitas digambarkan dengan bentuk persegi panjang dalam diagram Entity- Relationship.
29
b Atributt b. Entitas pasti memiliki atribut yyang mendesskripsikan kaarakteristik dari d entitas t tersebut. Pennentuan atauu pemilihan atribut-atribu a ut yang relevvan bagi sebbuah entitas m merupakan hal h penting lain l dalam ppembentukann model dataa. Atribut diggambarkan d dengan benttuk elips dalaam diagram Entity-Relattionship. c c.
Relasi dan d Himpun nan Relasi Relasi menunujukan m n adanya huubungan dianntara sejumlaah entitas yaang berasal
d himmpu dari unan entitass yang berbeeda. Kumpuulan semua relasi diantaara entitase entitas yang terdapat padda himpunann entitas-him mpunan, entittas tersebut menbentuk m s suat himpun nan relasi. Himpunan H rellasi digambaarkan dengann bentuk bellah ketupat d dalam diagraam Entiyt-Reelationship.
Gambar 2.7 Contoh koomponen diaagram ER ( Maulana : 2008 )
2 2.6.3 Kard dinalitas ata au Derajat R Relasi Kard dinalitas relaasi menunjuukan jumlah h maksimum m entitas yang y dapat b berelasi den ngan entitass pada himp mpunan entittas yang laiin. Kardinalitas relasi m merujuk kep pada hubunggan maksim mum yang teerjadi dari hhimpunan enntitas yang s ke himppunan entitass yang lain. satu Kard dinalitas relaasi yang terjjadi diantaraa dua himpuunan entitass (missal 1 d 2) dapatt berupa : dan
Satu kee Satu (One to One) E Entitas padaa himpunan entitas 1 beerhubungan paling banyyak dengan satu enttitas pada him mpunan entitas 2 begitu pun sebaliknnya.
30
Gambar 2..8 Hubungann 1 : 1
Saatu ke Banyyak (One to Many) Etitas pada himpuunan entitass 1 dapat berhubungan b n dengan beenyak en ntitas pada himpunan h enntitas 2 tetaapi tidak seb baliknya. Seetiap entitas pada hiimpunan enttitas 2 behuubungan hannya dengan satu entitass pada himppunan en ntitas 1.
Gaambar 2.9 H Hubungan 1 : M
Banyak ke Saatu (many tii One) Entitas pada him mpunan entittas 1 berhuubungan hannya dengan satu ntitas pada himpunan h enntitas 2 tetaapi tidak seb baliknya. Seetiap entitas pada en hiimpunan enttitas 2 dapat berhubungaan dengan baanyak entitas pada himppunan en ntitas 1.
Hubungan M : 1 Gaambar 2.10 H
Banyak ke Banyak (man ny tuo Manyy)
31
E Entitas padaa himpunan entitas 1 dapat d berhubbungan denggan banyak entitas pada p himpunnan 2 begitu pun sebalikn nya.
Gambaar 2.11 Hubuungan M : M
2 2.6.4 Tahaapan Pembu uatan Diagrram ER Untuuk membuatt diagram E ER perlu diilakukan beeberapa tahaapan, yang p pertama adaalah dengan membuat ddiagram ER awal. Tujuaan dari penttahapan ini a adalah untuuk mendapattkan sebuahh rancangan n basis dataa minimal yang y dapat m mengakomo odasi kebutu uhan penyim mpanan datta terhadap system yaang sedang d ditinjau. Lanngkah-langkah yang dilaakukan antarra lain : 1.
Mengid dentifikasi dan d menetappkan seluruuh himpunaan entitas yang y akan terlibat.
2 2.
Menentuukan atributt-atribut key dari masingg-masing him mpunan entittas.
3 3.
Mengid dentifikasi dan d menetaapkan selurruh himpunnan relasi di antara himpunan entitas-hiimpunan enttitas yang adda foreign key ey-nya.
4 4.
Menentuukan derajatt atau kardinnalitas relasi untuk setiapp himpunan relasi. r
5 5.
Melengkkapi himpuunan entitas dan himpuunan relasi dengan atriibut-atribut deskripttif (non-key)).
2 2.6.4.1 Norm malisasi Datta Norm malisasi dataa adalah teknnik perancanngan yang akkan digunakkan sebagai p pemandu daalam meranncang basis data relasio onal. Pada dasarnya, normalisasi n a adalah prosees dua langkkah yang m meletakkan data d dalam bbentuk tabullasi dengan m menghilangk kan kelompok berulangg lalu mengghilangkan ddata yang terduplikasi d table rellasional. dari Tanp pa normalisaai system baasis data menjadi m tidakk akurat, lam mbat, tidak e efisien, sertaa tidak mem mberikan dataa yang diharrapkan. Tujuuan yang harrus dicapai
32
dalam normalisasi, diantaranya integritas data, integritas referensial dan pengaksesan data, dapat dijabarkan sebagai berikut : ¾
Mengatur data dalam kelompok-kelompok sehingga masing-masing kelompok henya menangani bagian kecil system.
¾
Meminimalkan jumlah data berulang dalam basis data.
¾
Menbuat basis data yang datanya diakses dan dimanipulasi secara cepat dan efisien tanpa melakukan integritas data.
¾
Mengatur data sedemikian rupa sehingga ketika memodifikasi data, yang diperlukan hanya mengubah pada satu tempat saja. Bentuk dan tahapan dalam proses normalisasi adalah sebagai berikut (
Fathansyah : 2001 ) : 1)
Bentuk Tidak Normal ( Unnormalized Form ) Bentuk ini merupakan data
yang akan direkam, tidak ada
keharusan mengikuti suatu format tertentu, dapat saja data tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan kedatangaannya. 2)
Bentuk Normal Kesatu ( 1NF / First Normal Form ) Bentuk normal kesatu mempunyai cirri yaitu setiap data dibentuk dalam berkas data ( flat file ), data dibentuk dalam satu rekaman ( record ) demi rekaman dana nilai ruas ( field ) berupa tunggal ( anatomic value ). Tidak set atribut yang berulang-ulang atau atribut bernilai ganda ( multi value ). Tiap ruas hanya mengandung satu pengertian, bukan merupakan kumpulan data yang mempunyai arti mendua, hanya satu arti saja dan bukanlah pecahan dari beberapa kata sehingga artinya lain.
3)
Bentuk Normal Kedua ( 2NF / Second Normal Form ) Bentuk normal kedua mempunyai syarat yaitu bentuk data telah memenuhi criteria bentuk normal pertama. Atribut bukan kunci haruslah bergantuk secara fungsional pada kunci utama ( primary key ), sehingga untuk membentuk normal kedua haruslah sudah ditentukan kunci ruas. Kunci ruas harus unik dan dapat mewakili atribut lain mennjadi anggotanya.
33
4)
Bentuk Normal Ketiga ( 3 NF / Thrid Normal Form ) Untuk menjadi normal ketiga maka hubungan harus sudah termasuk dalam bentuk normal kedua dan semua atribut bukan primer tidak punya hubungan transitif. Dengan kata lain, Setiap atribut yang bukan kunci haruslah bergantung pada kunci utama secara keseluruhan.
2.6.4.2 Bahasa Basis data Sistem basis data menyediakan bahasa pendefinisian data (Data Definition Language-DLL) untuk menentukan skema basis data dan bahasa manipulasi data (Data manipulation Language-DML) untuk menyatakan query dan update basis data. Pada prakteknya DDL dan DML bukan merupakan dua bahasa yang terpisah, melainkan membentuk bagian bahasa basis data, seperti pada umumnya digunakan pada bahasa SQL.
2.6.4.3 SQL (Structure Query Language) SQL adalah bahasa standar yang digunakan untuk mengakses server basis data. Semenjak tahun 70-an, bahas ini telah dikembangkan oleh IBM yang kemudian diikuti dengan adanya Oracle, Informix, Sybase, MySql dan lain-lain. Dengan menggunakan SQL, proses akses ke basis data menjadi lebih user-friendly dibandingkan dengan dBase ataupun Clipper yang masih menggunakan perintahperintah pemograman murni. Sebagai mana system basis data yang lain, dalam SQL juga dikenal hirarki server dengan basis data. Tiap basis data memiliki table-tabel yang masing-masing terdiri dari field-field. Umumnya informasi tersimpan dalam table-tabel yang secara logis merupakan stuktur 2 dimensi terdiri atas baris dan kolom. Field-field tersebut dapat berupa data seperti : int, real, char, date, time dan lainnya. SQL tidak memiliki fasilitas pemrograman yang lengkap sehingga sering digabungkan dengan bahasa pemrograman lain seperti Pascal atau C/C++. SQL dapat digunakan untuk membuat sebuah query dan digabungkan untuk menangani data didalam system basis data.
34
2.6.4.4 DDL (Data Definition Language) DDL merujuk pada kumpulan perintah yang dapat digunakan untuk mendefinisikan objek-objek basis data yang akan menentukan sebuah skema basis data, seperti membuat sebuah table basis data atau index primer/sekunder. Contoh pernyataan berikut dalam bahasa SQL untuk mendifinisikan sebuah table rekening
CREATE TABLE rekening ( no_rekening char (10), saldo
integer)
Beberapa pernyataan DDL yang penting antara lain : o
CREATE TABLE - membuat sebuah tabel basis data baru.
o
ALTER TABLE - mengubah sebuah table basis data.
o
DROP TABLE
o
CREATE INDEX
o
DROP INDEX
- menghapus sebuah table basis data. - membuat sebuah indexs (kunci pencarian). - menghapus sebuah indeks.
2.6.4.5 DML (Data Manipulation Language) DML menacu pada pada kumpulan perintah yang dapat digunakan untuk melakukan manipulasi data, seperti menyimpan data ke suatu table, kemudian mengubahnya atau menghapusnya atau hanya sekedar menampilkannya kembali (Fathansyah 2002). Manipulasi data adalah : •
Pengambilan informasi yang disimpan dalam basis data.
•
Penempatan informasi baru dalam basis data.
•
Penghapusan informasi dari basis data.
•
Modifikasi informasi yang disimpan dalam basis data.
Ada 2 tipe DML, yaitu : DML procedural, mengharuskan pengguna untuk menentukan data yang dibutuhkan dan bagaimana mendapatkannya.
35
DML Deklaratif, disebut pula DML non-prosedural, mengharuskan pengguna menentukan
data
yang
dibutuhkan
tanpa
menentukan
bagaimana
mendapatkannya. Query adalah pernyataan yang meminta pengguna mengambil informasi. Istilah query sering disamakan dengan istilah bahasa manipulasi data ( Simarmata dan Paryudi 2006). Beberapa perintah-perintah DML antara lain :
SELECT - mengekstrak data dari sebuah table basis data.
INSERT INTO - memasukkan data baru ke dalam table basis data.
UPDATE - mengubah data dari sebuah table basis data.
DELETE – menghapus data dari sebuah table basis data.
2.7
Sekilas tentang Java Java adalah bahasa pemograman serbaguna. Java dapat digunakan untuk
memuat suatu program sebagaimana anda membuatnya dengan bahasa seperti Pascal, atau C++. Yang lebih menarik , Java juga mendukung sumber daya Internet. Java juga mendukung aplikasi klien/server, baik dalam jaringan local (LAN) maupu dalam bersekala luas (WAN). Java dikembangkan oleh Sun Microsystem pada bulan agustus 1991, dengan nama Oak. Konon oak adalah semacam pohon jati uang terlihat dari jendela tempat penbuatnya bekerja “James Gosling”. Ada yang menyatakan bahwa oak (Object Application Kernel). Pada Januari 1995, karena nama Oak kurang komersil, maka diganti menjadi Java. Dalam sejumlah literatur disebutkan bahwa Java hasil perpaduan sifat dari sejumlah bahasa pemograman, yaitu C, C++, Obejct-C, SmallTalk dan Common LIPS. Java menambahkan paradigma pemograman yang sederhana, jika anda telah mengenal C atau C++, yang mengandalkan pointer tidak dengan Java yang telah meninggalkannya sehingga anda akan memperoleh kemudahan saat menggunakannya.
36
2.7.1 Java Tidak Bergantung Platform Program Java berifat tidak bergantung pada platform yang artinya Java dapat dijalankan pada sembarang computer dan bahkan pada sembarang sistem operasi. Ketidak bergantungan terhadap platform sering dinyatakan dengan istilah portabilitas. Yang menarik, tingkat portabilitas Java tidak hanya sebatas pada program sumber (source code), melainkan juga pada tingkat kode biner (bytecode). Dengan demikian bila kompilasi program Java pada sistem operasi Windows dapat menjalankan hasil kompilasi pada Macinthos secara langsung perlu mengkompilasi ulang. Beberapa platform dan sistem operasi yang didukung oleh Java dapat dilihat pada tabel 2.6 berikut: Tabel 2.9 Java Pada Berbagai Sistem Operasi Sistem Operasi
Vendor
AIX
IBM
DG/UX
Data General Corporation
Digital OpenVMS
Digital Equipment Corporation
Digital Unix
Digital Equipment Corporation
HP-UX
Hewlwtt Packard
IRIX
Silicon graphich
Linux
Banyak perusahaan
MacOS
Apple
Netware
Novell
OS/2
IBM
OS/390 dan OS/400
IBM
Solaris
Sun Microsytem
Keluarga Windows
Microsoft Corporation
Kode yang disebut bytecode dapat dijalankan pada berbagai sistem operasi kareba kode ini berbeda dengan kode mesin. Kode mesin sangat bergantung pada platform, sedangakan bytecude dapat dimengerti oleh semua platform yang telah
37
d dilengkapi d dengan interrpreter Java. Mengingat bahwa hasil kompilasi Java dapat d dilajankan p pada sembaraang sistem ooperasi atauppun prosesorr, Java seringg dikatakan b bersifat netraal terhadap arsitektur a coomputer. Gam mbar 2.11 meemperlihatkaan skema peengkompilassian kode su umber Java s sehingga terrbentuk bytecode dan jugga menunjukkan interpreter Java yanng berperan u untuk menteerjemahkan bytecode. b
Gam mbar 2.12 Skema S Penggkompilasia an Hingga Pengeksekus P sian Kode Java
38
2.7.2 Sekilas tentang JavaScript
Sejarah Javascript diperkenalkan pertama kali oleh Netscape pada tahun 1995. Pada awalnya bahasa yang sekarang disebut JavaScript ini dulunya dinamai “LiveScript” yang berfungsi sebagai bahasa sederhana untuk browser Netscape Navigator 2 yang sangat populer pada saat itu. Kemudian sejalan dengan sedang giatnya kerjasama antara Netscape dan Sun (pengembang bahasa pemrograman “Java”) pada masa itu, maka Netscape memberikan nama “JavaScript” kepada bahasa tersebut pada tanggal 4 desember 1995. Pada saat yang bersamaan Microsoft sendiri mencoba untuk mengadaptasikan teknologi ini yang mereka sebut sebagai “Jscript” di browser milik mereka yaitu Internet Explorer 3. JavaScript sendiri merupakan modifikasi dari bahasa pemrograman C++ dengan pola penulisan yang lebih sederhana dari bahasa pemrograman C++.
Pengertian JavaScript adalah bahasa pemrograman yang khusus untuk halaman web agar halaman web menjadi lebih hidup. Kalau dilihat dari suku katanya terdiri dari dua suku kata, yaitu Java dan Script. Java adalah Bahasa pemrograman berorientasi objek, sedangkan Script adalah serangkaian instruksi program.
Hal-Hal Yang Harus Diperhatikan Ada
beberapa
hal
yang
harus
diperhatikan
dalam
pengelolaan
pemrograman JavaScript, diantaranya JavaScript adalah “case sensitive”, yang artinya JavaScript membedakan huruf besar dan huruf kecil, Jika Anda pernah belajar bahasa pemrograman seperti Turbo C atau C++, maka sama seperti bahasa pemrograman tersebut, dimana huruf T tidak sama dengan huruf t. Dalam bahasa pemrograman JavaScript juga, sebagai contoh fungsi perintah var tidak boleh ditulis Var dan juga tidak boleh ditulis VAR (huruf besar semua), yang benar adalah var (huruf kecil semua). Perintah lain adalah new Date tidak boleh ditulis new date (huruf kecil semua)
39
2.7.3
Kelebihan JavaScript JavaScript bekerja pada sisi browser. maksudnya adalah untuk
menampilkan halaman web, user menuliskan alamat web di address bar url. setelah itu, browser “mengambil” file html ( dengan file jJvaScript yang melekat padanya jika memang ada ) ke server yang beralamat di URL yang diketikan oleh user. Selesai file diambil, file ditampilkan pada browser, setelah file JavaScript berada pada browser, barulah script JavaScript tersebut bekerja. Efek dari Javascript yang bekerja pada sisi browser ini, Javascript dapat merespon perintah user dengan cepat, dan membuat halaman web menjadi lebih responsif. JavaScript melakukan apa yang tidak bisa dilakukan oleh HTML, PHP, dan CSS : menangani hal – hal yang membutuhkan respons cepat terhadap aksi dari user. Contoh : fungsi validasi pada form. ketika mengisi sebuah form yang divalidasi menggunakan JavaScript, dan mengetikkan data lalu mengetik submit, sebelum data dikirimkan ke server, data akan “dicek” terlebih dahulu pada browser menggunakan fungsi JavaScript yang ada pada halaman web. sehingga, jika memang data yang dimasukankan tidak valid, dengan tidak membuang – buang waktu dengan mengirimkan data ke server baru di validasi di server dan lalu server mengirimkan respons balik mengenai ketidak validan input data, lebih baik cek validasi data form dilakukan secara lokal di browser menggunakan fungsi JavaScript.
2.7.4
Lebih Cepat dan Lebih Hemat Implementasi terpopuler saat ini dari pemrograman JavaScript adalah
teknik AJAX. (Asynchronous JavaScript and XMLHTTP ). teknik ini sering digunakan oleh aplikasi berbasis web seperti Gmail, Google Reader, dan lain lain. Teknik yang membuat pertukaran data antara server dan browser terjadi di belakang layar sehingga interaksi antara user dan aplikasi web semakin responsif. Post tersendiri untuk membahas hal ini akan kita siapkan (Soepono 2005).