tag:blogger.com,1999:blog-62287061141895120882024-03-13T12:24:21.931-07:00Do'aku Harapankuberawal dari nol dan berakhir di tak terhingga..*_**********************************************************************trisna dewa herawatihttp://www.blogger.com/profile/06559881740171074964noreply@blogger.comBlogger7125tag:blogger.com,1999:blog-6228706114189512088.post-32407292603007515132010-08-21T00:29:00.000-07:002010-08-21T00:29:14.401-07:00Pemrograman Berbasis Objek (PBO)<div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 16pt; line-height: 150%;">A.<span style="color: white;">.</span>Object<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;">A.1.Definisi dan Gambaran Umum Object</span></b><span style="font-size: 14pt; line-height: 150%;"><o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Object merupakan sesuatu yang memiliki identitas (nama), pada umumnya juga memiliki data tentang dirinya maupun object lain dan mempunyai kemampuan untuk melakukan sesuatu dan bisa bekerja sama dengan objek lainnya. Pada dasarnya semua benda yang ada di dunia dapat dianggap sebagai sebuah object. Rumah, mobil, sepeda motor, meja, dan komputer merupakan contoh-contoh object yang ada di dunia nyata. Object adalah implementasi dari class. Secara sederhananya, dapat dikatakan terdiri dari properti (atribut) dan method. </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">Pemahaman singkatnya :</span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 9pt; text-align: justify; text-indent: -9pt;"><span style="font-size: 78%;">• Objek merupakan sebuah objek khusus yang digunakan untuk mengakses anggota objek (atribut atau method) dari dalam objek itu sendiri. </span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 9pt; text-align: justify; text-indent: -9pt;"><span style="font-size: 78%;">• Apabila terdapat variabel lain yang memiliki nama yang sama dengan nama atribut di dalam objek, “this” dapat digunakan untuk merujuk ke atribut objek. </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;">A.2.Karakteristik Object<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Setiap object memiliki dua karakteristik yang utama, yaitu atribut dan behavior. Atribut merupakan status object dan behavior merupakan tingkah laku dari object tersebut. Contoh sederhana adalah sepeda. Object sepeda memiliki atribut : pedal, roda, dan gigi, kecepatan serta memiliki tingkah laku seperti pacu dan rem. Sama seperti penggambaran di dunia nyata, pengembangan program dengan konsep OOP juga menggunakan model object yang akan menyimpan atributnya dalam variabel dan tingkah lakunya dalam method atau fungsi-fungsi/prosedur. Deskripsinya :<span style="font-size: 14pt; line-height: 150%;"><o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">Contoh objek : Sepeda </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">- Sepeda memiliki atribut ( <b><i>state </i></b>) : pedal, roda, jeruji, dan warna.</span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 9pt; text-align: justify; text-indent: -9pt;"><span style="font-size: 78%;">- Sepeda memiliki tingkah laku ( <b><i>behaviour </i></b>) : kecepatannya menaik, kecepatannya menurun, <span> </span>dan perpindahan gigi sepeda.</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Dalam pengembangan perangkat lunak berorientasi objek, objek dalam perangkat lunak akan menyimpan <b><i>state</i></b>-nya dalam variabel dan menyimpan informasi tingkah laku ( <b><i>behaviour </i></b>) dalam <b><i>method-method </i></b>atau fungsi-fungsi/prosedur.</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;">A.3.Deklarasi Object dalam Pemrograman Java<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Bentuk Umum Object :<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><!--[if gte vml 1]><v:rect id="_x0000_s1045" style="'position:absolute;left:0;text-align:left;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 61px; left: 0px; margin-left: -2px; margin-top: 15px; position: absolute; width: 443px; z-index: -5;"><img height="61" shapes="_x0000_s1045" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image002.gif" width="443" /></span><b><span style="color: black; letter-spacing: -0.05pt;"><span> </span><o:p></o:p></span></b></span><!--[endif]--></div><div class="MsoNormal" style="margin-left: 0.25in;"><span style="font-size: 78%;"><i><span style="font-family: "Courier New"; font-size: 11pt;">namaObjek.namaMethod([daftarNilaiParameter]);</span></i><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 0.25in;"><span style="font-size: 78%;"><i><span style="font-family: "Courier New"; font-size: 11pt;">namaObjek.namaAttribute;</span></i><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Deskripsi pendeklarasiannya (sebagai contoh) 1 :<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Misalnya kita akan membuat objek sepeda dengan<span> </span>nama Onthel dan Onta, sepeda Onthel mempunyai 10 gigi dengan merk enlander sedangkan sepeda Onta memiliki 20 gigi dengan merk wan ‘abud, maka pembuatan / deklarasi objeknya adalah:</span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><!--[if gte vml 1]><v:rect id="_x0000_s1026" style="'position:absolute;left:0;text-align:left;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 61px; left: 0px; margin-left: -2px; margin-top: 13px; position: absolute; width: 400px; z-index: -24;"><img height="61" shapes="_x0000_s1026" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image003.gif" width="400" /></span><span style="color: black; letter-spacing: -0.05pt;"><o:p></o:p></span></span><!--[endif]--></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">Sepeda Onthel=new Sepeda(10, “Enlander”);</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">Sepeda Onta=new Sepeda(20,”Wan Abud”);</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Terlihat<span> </span>bahwa<span> </span>objek<span> </span>onthel<span> </span>dan<span> </span>onta<span> </span>akan<span> </span>memanggil<span> </span>konstruktor<span> </span>sepeda<span> </span>dengan<span> </span>2</span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">parameter yakni gigi dan merk. Sekarang kita<span> </span>akan coba membuat objek sepedaku dari<span> </span>class sepeda dengan meman ggil konstruktor tanpa berparameter.<o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><!--[if gte vml 1]><v:rect id="_x0000_s1027" style="'position:absolute;left:0;text-align:left;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 42px; left: 0px; margin-left: -2px; margin-top: 17px; position: absolute; width: 340px; z-index: -23;"><img height="42" shapes="_x0000_s1027" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image004.gif" width="340" /></span><span style="color: black; letter-spacing: -0.05pt;"><o:p></o:p></span></span><!--[endif]--></div><div class="MsoNormal" style="line-height: 150%; margin-left: 0.25in; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; letter-spacing: -0.05pt;">Sepeda Sepedaku= new Sepeda();</span><span style="font-family: "Courier New";"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Maka secara otomatis, objek sepedaku akan berisi gigi 0 dengan merk “Aneh”.<o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Deskripsi pendeklarasiannya (sebagai contoh) 2 :<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Untuk membuat <span>object</span>, kita menggunakan perintah <i>new</i> dengan sebuah nama <span>class</span> yang akan dibuat sebagai instance dari <span>class</span> tersebut, sebagai contoh :</span></div><div class="MsoNormal" style="text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="margin: 5pt 0in 5pt 17.85pt; text-align: justify;"><!--[if gte vml 1]><v:rect id="_x0000_s1028" style="'position:absolute;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 112px; left: 0px; margin-left: -2px; margin-top: 0px; position: absolute; width: 304px; z-index: -22;"><img height="112" shapes="_x0000_s1028" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image005.gif" width="304" /></span><span style="font-family: "Courier New";">String str = new String();<o:p></o:p></span></span><!--[endif]--></div><div class="MsoNormal" style="margin: 5pt 0in 5pt 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New";">Random r = new Random();<o:p></o:p></span></span></div><div class="MsoNormal" style="margin: 5pt 0in 5pt 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New";">Pegawai p2 = new PEgawai();<o:p></o:p></span></span></div><div class="MsoNormal" style="margin: 5pt 0in 5pt 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New";">Date hari = new Date(); <o:p></o:p></span></span></div><div class="MsoNormal" style="margin: 5pt 0in; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="line-height: 150%; margin: 5pt 0in; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Hari adalah <span>object</span> reference dari <span>class</span> Date yang akan digunakan untuk mengakses <span>class</span><i>new</i> adalah operator yang akan menghasilkan hari sebagai reference ke instance dari <span>class</span> Date(). Date. Sedangkan operator </span></div><div class="MsoNormal" style="line-height: 150%; margin: 5pt 0in; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div style="line-height: 150%; margin: 0in 0in 0.0001pt; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 16pt; line-height: 150%;">B. Class<o:p></o:p></span></b></span></div><div style="line-height: 150%; margin: 0in 0in 0.0001pt; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; font-size: 14pt; letter-spacing: -0.05pt; line-height: 150%;">B.1.Definisi dan Gambaran Uum Class<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Class didefinisikan sebagai<span> </span>sebuah<span> </span>blue<span> </span>print,<span> </span>atau<span> </span>prototipe,<span> </span>yang<span> </span>mendefiniskan<span> </span>variabel-variabel dan metode-metode<span> </span>yang umum untuk semua objek dari n jenis tertentu (n maksudnya jumlah tertentu). </span>Sebuah kelas menyerupai sebuah struktur yang merupakan tipe data sendiri, misalkan tipe data titik yang terdiri dari koordinat x dan y. Bahasa Java telah menggunakan sebuah kelas untuk menyatakan tipe data titik karena bahasa pemrograman Java merupakan bahasa pemrograman berorientasi objek murni sehingga tidak mengenal struktur, melainkan mengenal apa yang disebut dengan kelas. </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Perbedaan sebuah kelas dengan sebuah struktur adalah sebuah kelas dapat berdiri sendiri dan dapat digunakan untuk berbagai keperluan kelas-kelas yang lain, sedangkan sebuah struktur tidak dapat berdiri sendiri. Sebuah kelas lebih fleksibel untuk digunakan oleh kelas lain tanpa harus membongkar kode program utama, sedangkan jika digunakan struktur maka kode program harus dibongkar unuk disalin bagian strukturnya ke kode program utama yang lain. </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Sebuah <i>file </i>dapat terdiri dari berbagai kelas, namun biasanya pada bahasa pemrograman Java sebuah <i>file </i>hanya terdiri dari satu kelas yang disimpan dengan nama kelas, misal <i>file </i>List.java berisi kelas <i>List</i>. Namun jika kelas yang dibuat misalnya public class nama_kelas, maka kelas itu harus disimpan dalam satu <i>file </i>hanya untuk satu kelas. Setelah dilakukan kompilasi maka pada Java akan ada sebuah <i>file </i>.class yang berisi <i>bytecode </i>dari setiap kelas. </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Jika sebuah <i>file </i>terdiri dari dua kelas, maka setelah dilakukan kompilasi akan dihasilkan dua buah <i>file </i>.class yang nantinya akan dibaca oleh interpreter Java saat program dieksekusi. Sebuah kelas saat program dieksekusi dan perintah new dijalankan, maka akan dibuat sebuah objek. Class adalah template untuk pembuatan objek. Class juga memiliki anggota, diantaranya : atribut dan method.</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">Pemahaman singkatnya :</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">• Class merupakan pola / template yang menggambarkan kumpulan object yang mempunyai sifat </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span> </span><span> </span>dan perilaku yang sama. </span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 9pt; text-align: justify; text-indent: -9pt;"><span style="font-size: 78%;">• Class merupakan struktur data dari object (blueprint dari sebuah object), dan proses pembuatan object dari sebuah class disebut juga dengan instantiation.. </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">• Class merupakan definisi data dan fungsi dari suatu hal (benda, konsep, dll). </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">• <span>Di dalam class dideklarasikan variabel</span> <span>dan method yang dimiliki oleh obyek</span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;">B.2.Karakteristik Class<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;"><span> </span></span></b>Class memiliki beberapa karakteristik, diantaranya : anggota class terdiri dari atribut dan method. Tiap-tiap anggota class memiliki control pengaksesan tersendiri, maksudnya adalah apakah anggota class tersebut dapat diakses dengan bebas (dengan tipe public) atau hanya dapat diakses melalui sebuah interface. Dalam hal ini, interface adalah device yang digunakan untuk komunikasi antar object berbeda yang tidak memiliki hubungan apapun. Interface bisa dikatakan sebagai protokol komunikasi antar object tersebut.</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; font-size: 14pt; letter-spacing: -0.05pt; line-height: 150%;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; font-size: 14pt; letter-spacing: -0.05pt; line-height: 150%;">B.3.Deklarasi Class dalam Pemrograman Java<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Bentuk Umum Class :<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><!--[if gte vml 1]><v:rect id="_x0000_s1046" style="'position:absolute;left:0;text-align:left;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 91px; left: 0px; margin-left: -2px; margin-top: 14px; position: absolute; width: 389px; z-index: -4;"><img height="91" shapes="_x0000_s1046" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image006.gif" width="389" /></span><b><span style="color: black; letter-spacing: -0.05pt;"><o:p></o:p></span></b></span><!--[endif]--></div><div class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">(modifier1)class NamaKelas (modifier2)<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">{<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">Classbody<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">}<o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Dalam pemrograman Java, untuk mendeklarasikan suatu class tentunya kita harus memperhatikan aturan-aturan umumnya, diantaranya :</span></span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 9pt; text-align: justify; text-indent: -9pt;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">- Tidak<span> </span>menggunakan<span> </span>space (spasi / blank)<span> </span>atau<span> </span>menggunakan<span> </span>spasi<span> </span>dengan<span> </span>diganti<span> </span>“_”<span> </span>(misal : class Sarjana_Mipa)</span></span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 9pt; text-align: justify; text-indent: -9pt;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">- Apabila<span> </span>nama<span> </span>kelas<span> </span>terdiri<span> </span>atas<span> </span>2<span> </span>kata,<span> </span>maka<span> </span>huruf<span> </span>pertama<span> </span>dari<span> </span>kedua<span> </span>kata tersebut menggunakan huruf besar (misal : class SarjanaMipa)</span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">- Tidak menggunakan<span> </span>kata-kata<span> </span>yang telah dipakai oleh compiler (reserved Word)<o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Deskripsi pendeklarasiannya (sebagai contoh) :<o:p></o:p></span></b></span></div><div class="MsoNormal" style="text-align: justify;"><!--[if gte vml 1]><v:rect id="_x0000_s1029" style="'position:absolute;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 101px; left: 0px; margin-left: 4px; margin-top: 8px; position: absolute; width: 316px; z-index: -21;"><img height="101" shapes="_x0000_s1029" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image007.gif" width="316" /></span><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;"><o:p></o:p></span></span><!--[endif]--></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">Public Class Sepeda{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">private String merk;</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">Variable</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">private int gigi;</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">public Sepeda(){</span><span style="font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><!--[if gte vml 1]><v:rect id="_x0000_s1047" style="'position:absolute;left:0;text-align:left;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 326px; left: 0px; margin-left: 8px; margin-top: 6px; position: absolute; width: 316px; z-index: -3;"><img height="326" shapes="_x0000_s1047" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image008.gif" width="316" /></span><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;"><o:p></o:p></span></span><!--[endif]--></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;"><o:p> </o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">this.gigi=0;</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">Konstruktor</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">this.merk=”Aneh”</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">public Sepeda(int g, string m){</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">this.gigi=g;</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">this.merk=m;</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">public void ganti_gigi(int g){</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">this.gigi=g;</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">Method</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">public String tampilkan_merk(){</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">return this.merk</span><span style="font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">Class Body</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">}<o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; font-size: 14pt; letter-spacing: -0.05pt; line-height: 150%;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; font-size: 14pt; letter-spacing: -0.05pt; line-height: 150%;">B.4.Class Body</span><span style="color: black; letter-spacing: -0.05pt;"><o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Class<span> </span>Body<span> </span>merupakan<span> </span>bagian<span> </span>dari<span> </span>kelas<span> </span>yang<span> </span>mendeklarasikan<span> </span>kode-kode<span> </span>program<span> </span>java. Class Body tersusun atas:</span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">a .Konstruktor</span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">b. Variable</span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">c. Method (Fungsi-fungsi atau prosedur)<o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Berikut adalah penjelasan secara umum apa yang dimaksud dengan konstruktor dan juga bagaimana peranannya :<span> </span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Konstruktor<span> </span>adalah<span> </span>suatu<span> </span>method<span> </span>yang<span> </span>mempunyai<span> </span>nama<span> </span>sama<span> </span>dengan<span> </span>nama<span> </span>class<span> </span>dimana method<span> </span>itu<span> </span>dibuat.<span> </span>Fungsi<span> </span>konstruktor<span> </span>adalah<span> </span>sebagai<span> </span>inisiasi awal<span> </span>dari<span> </span>terbentuknya sebuah objek. </span>Sebuah kelas harus memiliki sebuah metode yang disebut sebagai konstruktor. nama sebuah konstruktor harus sama dengan nama dari sebuah kelas, misalkan kelas Elemen maka konstruktornya adalah Elemen(). </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Sebuah konstruktor juga dapat menerima sebuah masukan seperti halnya prosedur pada pemrograman prosedural. Fungsi dari sebuah konstruktor adalah mengalokasikan sebuah objek saat program dieksekusi, memberikan nilai awal sebagai inisialisasi dari semua atribut yang perlu diinisialisasi dan mengerjakan prosesproses yang diperlukan saat sebuah objek dibuat. </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Namun, pada kenyataannya sebuah konstruktor dapat tidak berisi apa-apa, hal ini jika memang tidak diperlukan adanya inisialisasi atau proses yang dikerjakan ketika sebuah objek dibuat. Konstruktor tersebut disebut sebagai konstruktor <i>default. </i>Konstruktor harus bersifat <i>public </i>karena sebuah konstruktor akan diakses oleh kelas lain untuk membuat objek suatu kelas. Sebuah kelas dapat memiliki konstruktor lebih dari satu. </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Pada saat eksekusi program, kompiler atau interpreter akan mencari konstruktor mana yang sesuai dengan konstruktor yang dipanggil, hal ini juga merupakan <i>overloading </i>.</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></span></div><div style="line-height: 150%; margin: 0in 0in 0.0001pt; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;">B.5.Perbedaan antara Class dengan Object<o:p></o:p></span></b></span></div><div style="line-height: 150%; margin: 0in 0in 0.0001pt; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Class tentunya berbeda dengan object. Class merupakan prototipe yang mendefinisikan variabel dan method secara umum. Akan tetapi, object adalah hasil instansiasi dari suatu class.</span></div><div style="line-height: 150%; margin: 0in 0in 0.0001pt; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span> </span>Object-object yang memiliki kondisi yang berbeda seperti sepeda A pada gigi posisi 4 dan sepeda B pada gigi posisi 6 dapat disatukan dalam satu “class sepeda” berdasarkan kondisi umum sepeda yang dapat ubah posisi giginya. Untuk dapat memahami Konsep OOP dengan baik seorang pemrogram harus dapat membedakan antara object dengan class.</span></div><div style="line-height: 150%; margin: 0in 0in 0.0001pt; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 16pt; line-height: 150%;">C. Method <o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt;">C.1.Definisi dan Gambaran Umum Method<o:p></o:p></span></b></span></div><div class="NormalBlack"><span style="font-size: 78%;">Method adalah fungsi atau prosedur yang dibuat oleh seorang programmer didalam suatu Class. Dengan kata lain, method pada sebuah kelas hampir sama dengan fungsi atau prosedur pada pemrograman prosedural. Pada sebuah method di dalam sebuah kelas juga memiliki izin akses seperti halnya atribut pada kelas, izin akses itu antara lain <i>private</i>, <i>public </i>dan <i>protected </i>yang memiliki arti sama pada izin akses atribut yang telah dibahas sebelumnya. Sebuah kelas boleh memiliki lebih dari satu method dengan nama yang sama asalkan memiliki parameter masukan yang berbeda sehingga kompiler atau interpreter dapat mengenali method mana yang dipanggil. Hal ini dinamakan <i>overloading</i>. Di dalam sebuah kelas, terdapat juga yang disebut sebagai method atau atribut statis yang memiliki kata kunci static. Maksud dari statis di sini adalah method yang dapat diakses secara berbagi dengan semua objek lain tanpa harus membuat objek yang memiliki method statis tadi (tanpa proses new), tapi sebuah method statis mempunyai keterbatasan yaitu hanya dapat mengakses atribut atau method lain di dalam kelas yang membungkusnya yang juga bersifat statis. Method statis biasanya diimplementasikan untuk method main.</span></div><div class="NormalBlack"><span style="font-size: 78%;"><span> </span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;">C.2.Karakteristik Method<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;"><span> </span></span></b>Didalam suatu class, behavior disimpan dalam bentuk Method. Method merupakan serangkaian statemen / perintah (perintah = baris program) dalam suatu class yang menghandle task tertentu. Method merupakan hal-hal yang bisa dilakukan oleh object dari suatu class. Method didefinisikan pada class akan tetapi dipanggil melalui object. Method memiliki peranan diantaranya : </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">- merubah nilai atribut dari suatu object, </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">- menerima informasi dari object lain, dan</span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 9pt; text-align: justify; text-indent: -9pt;"><span style="font-size: 78%;">- mengirim informasi ke obyek lain untuk melakukan suatu task (cara obyek berkomunikasi dengan obyek lain adalah dengan menggunakan method).</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;">C.3.Deklarasi Method dalam Pemrograman Java<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Suatu method terdiri atas dua bagian / dua blok, yakni Method Declaration dan Method Body.</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Bentuk Umum Method :<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;"><span> </span>:<span> </span></span></b><span style="height: 103px; left: 0px; margin-left: -2px; margin-top: 6px; position: absolute; width: 522px; z-index: -2;"><img height="103" shapes="_x0000_s1048" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image009.gif" width="522" /></span><b><span style="color: black; letter-spacing: -0.05pt;"><o:p></o:p></span></b></span><!--[if gte vml 1]><v:rect id="_x0000_s1048" style="'position:absolute;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><!--[endif]--></div><div class="MsoNormal" style="text-indent: 0.25in;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">[modifier] tipe_return_value namaMethod(tipe parameter) <o:p></o:p></span></span></div><div class="MsoNormal" style="text-indent: 0.25in;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 0.25in;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">methodbody;</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 0.25in;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt; line-height: 150%;"><o:p> </o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Deskripsi pendeklarasiannya (sebagai contoh) :<o:p></o:p></span></b></span></div><div class="MsoNormal" style="text-align: justify;"><!--[if gte vml 1]><v:rect id="_x0000_s1030" style="'position:absolute;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 124px; left: 0px; margin-left: -2px; margin-top: 6px; position: absolute; width: 340px; z-index: -20;"><img height="124" shapes="_x0000_s1030" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image010.gif" width="340" /></span><b><span style="color: black; letter-spacing: -0.05pt;"><o:p></o:p></span></b></span><!--[endif]--></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">Public int perkalian (int y;int z)<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">}<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><!--[if gte vml 1]><v:line id="_x0000_s1031" style="'position:absolute;left:0;text-align:left;z-index:6'" from="81pt,3.6pt" to="99pt,3.6pt"><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 2px; left: 0px; margin-left: 107px; margin-top: 4px; position: absolute; width: 26px; z-index: 6;"><img height="2" shapes="_x0000_s1031" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image011.gif" width="26" /></span><span style="height: 30px; left: 0px; margin-left: 167px; margin-top: 4px; position: absolute; width: 126px; z-index: 10;"> <table cellpadding="0" cellspacing="0"><tbody>
<tr> <td bgcolor="silver" height="30" style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-size: auto auto; background-attachment: scroll; background-color: silver; background-image: none; background-position: 0% 50%; background-repeat: repeat; border: 0.75pt solid black; vertical-align: top;" width="126"><!--[endif]--><!--[if !mso]--><span style="left: 0pt; position: absolute; z-index: 10;"> <table cellpadding="0" cellspacing="0"><tbody>
<tr> <td><!--[endif]--> <div class="shape" shape="_x0000_s1035" style="padding: 4.35pt 7.95pt;"> <div align="center" class="MsoNormal" style="text-align: center;"><span style="font-size: 9pt;">Method Body<o:p></o:p></span></div></div><!--[if !mso]--></td> </tr>
</tbody></table></span><!--[endif]--><!--[if !mso & !vml]--> <!--[endif]--><!--[if !vml]--></td> </tr>
</tbody></table></span><span style="height: 38px; left: 0px; margin-left: 131px; margin-top: 4px; position: absolute; width: 2px; z-index: 8;"><img height="38" shapes="_x0000_s1033" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image012.gif" width="2" /></span><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">Int x=0;<o:p></o:p></span></span><!--[endif]--><!--[if gte vml 1]><v:rect id="_x0000_s1035" style="'position:absolute;left:0;text-align:left;margin-left:125.85pt;" fillcolor="silver"> <v:textbox style="'mso-next-textbox:#_x0000_s1035'/"> </v:rect><![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte vml 1]><v:line id="_x0000_s1033" style="'position:absolute;" from="99pt,3.6pt" to="99pt,30.6pt"><![endif]--><!--[if !vml]--><!--[endif]--></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><!--[if gte vml 1]><v:line id="_x0000_s1034" style="'position:absolute;left:0;text-align:left;z-index:9'" from="99pt,.1pt" to="126pt,.1pt"> <v:stroke endarrow="block"> </v:line><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="position: relative; z-index: 9;"><span style="height: 12px; left: 131px; position: absolute; top: -6px; width: 39px;"><img height="12" shapes="_x0000_s1034" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image013.gif" width="39" /></span></span><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">X=y*z;<o:p></o:p></span></span><!--[endif]--></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><!--[if gte vml 1]><v:line id="_x0000_s1032" style="'position:absolute;left:0;text-align:left;z-index:7'" from="81pt,5.65pt" to="99pt,5.65pt"><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 2px; left: 0px; margin-left: 107px; margin-top: 7px; position: absolute; width: 26px; z-index: 7;"><img height="2" shapes="_x0000_s1032" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image011.gif" width="26" /></span><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">Return x;<o:p></o:p></span></span><!--[endif]--></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">} <o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">Keterangan :</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><!--[if gte vml 1]><v:line id="_x0000_s1036" style="'position:absolute;left:0;text-align:left;z-index:11'" from="153pt,11.35pt" to="3in,11.35pt"><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 2px; left: 0px; margin-left: 203px; margin-top: 14px; position: absolute; width: 86px; z-index: 11;"><img height="2" shapes="_x0000_s1036" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image014.gif" width="86" /></span><span style="height: 74px; left: 0px; margin-left: 287px; margin-top: 14px; position: absolute; width: 2px; z-index: 13;"><img height="74" shapes="_x0000_s1038" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image015.gif" width="2" /></span>Public<span> </span>= Akses Level</span><!--[endif]--><!--[if gte vml 1]><v:line id="_x0000_s1038" style="'position:absolute;left:0;text-align:left;z-index:13'" from="3in,11.35pt" to="3in,65.35pt"><![endif]--><!--[if !vml]--><!--[endif]--></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><!--[if gte vml 1]><v:rect id="_x0000_s1040" style="'position:absolute;left:0;text-align:left;"><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 35px; left: 0px; margin-left: 335px; margin-top: 6px; position: absolute; width: 126px; z-index: 15;"> <table cellpadding="0" cellspacing="0"><tbody>
<tr> <td bgcolor="white" height="35" style="-moz-background-clip: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-size: auto auto; background-attachment: scroll; background-color: white; background-image: none; background-position: 0% 50%; background-repeat: repeat; border: 0.75pt solid black; vertical-align: top;" width="126"><!--[endif]--><!--[if !mso]--><span style="left: 0pt; position: absolute; z-index: 15;"> <table cellpadding="0" cellspacing="0"><tbody>
<tr> <td><!--[endif]--> <div class="shape" shape="_x0000_s1040" style="padding: 4.35pt 7.95pt;"> <div align="center" class="MsoNormal" style="text-align: center;"><span style="font-size: 9pt;">Method Declaration<o:p></o:p></span></div></div><!--[if !mso]--></td> </tr>
</tbody></table></span><!--[endif]--><!--[if !mso & !vml]--> <!--[endif]--><!--[if !vml]--></td> </tr>
</tbody></table></span><span style="height: 12px; left: 0px; margin-left: 287px; margin-top: 18px; position: absolute; width: 51px; z-index: 14;"><img height="12" shapes="_x0000_s1039" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image016.gif" width="51" /></span>Int<span> </span>= Return type</span><!--[endif]--><!--[if gte vml 1]><v:line id="_x0000_s1039" style="'position:absolute;" from="3in,17.65pt" to="252pt,17.65pt"> <v:stroke endarrow="block"> </v:line><![endif]--><!--[if !vml]--><!--[endif]--></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">Perkalian<span> </span>= Nama Method </span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><!--[if gte vml 1]><v:line id="_x0000_s1037" style="'position:absolute;left:0;text-align:left;z-index:12'" from="153pt,3.25pt" to="3in,3.25pt"><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 2px; left: 0px; margin-left: 203px; margin-top: 3px; position: absolute; width: 86px; z-index: 12;"><img height="2" shapes="_x0000_s1037" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image014.gif" width="86" /></span>(Int y; int z)<span> </span>= Parameter</span><!--[endif]--></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><o:p> </o:p></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b>Akses Level<o:p></o:p></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span> </span></b>Access Level menentukan level pengaksesan sebuah method. Hal ini menentukan apakah sebuah method bias diakses oleh objek lain, objek anak, objek dalam satu paket atau tidak dapat diakses oleh suatu object sama sekali berikut adalah beberapa jenis level access:</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">- Public</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">Atribut ini menunjukan bahwa fungsi/method dapat diakses oleh objek lain.</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">- Private</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">Atribut ini menunjukan bahwa fungsi atau method tidak dapat diakses oleh objek lain.</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">- Protected</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">Atribut ini menunjukan bahwa fungsi atau method hanya bisa diakses oleh objek itu sendiri atau objek lain yang merupakan subclass nya.</span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><b><o:p> </o:p></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b>Return Type<o:p></o:p></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Setiap fungsi menghasilkan suatu nilai dengan tipe data tertentu. Apabila terdapat suatu fungsi yang tidak menghasilkan suatu nilai apapun maka bagian return type ini diganti dengan void.<span style="font-size: 10pt; line-height: 150%;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><b><o:p> </o:p></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b>Method Name / Nama Method<o:p></o:p></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;">Setiap fungsi dalam pemrograman mempunyai identitas nama fungsi. Penamaan fungsi / method mengikuti aturan :</span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 9pt; text-align: justify; text-indent: -9pt;"><span style="font-size: 78%;">- Tidak menggunakan spasi atau menggunakan spasi dengan diganti “_” (misal method<span> </span><span style="color: white;">.</span>Hitung_integral).</span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 9pt; text-align: justify; text-indent: -9pt;"><span style="font-size: 78%;">- Tidak menggunakan kata-kata yang telah dipakai oleh compiler (reserved Word).</span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><b><o:p> </o:p></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><!--[if gte vml 1]><v:line id="_x0000_s1041" style="'position:absolute;left:0;text-align:left;z-index:16'" from="81pt,-171pt" to="99pt,-171pt"><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="position: relative; z-index: 16;"><span style="height: 2px; left: 107px; position: absolute; top: -229px; width: 26px;"><img height="2" shapes="_x0000_s1041" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image011.gif" width="26" /></span></span><b><span>Parameter<o:p></o:p></span></b></span><!--[endif]--></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span><span> </span></span></b>Bagian parameter diisi dengan parameter-parameter fungsi yang diperlukan. Parameter apabila lebih dari satu akan dipisahkan dengan tanda koma (“,”) parameter-parameter pada fungsi-fungsi di java akan di bypass value yang artinya pada tiap fungsi tidak akan dapat merubah isi dari variable parameter yang dimasukan.</span></div><div class="MsoNormal" style="line-height: 200%; text-align: justify;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 16pt; line-height: 150%;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 16pt; line-height: 150%;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 16pt; line-height: 150%;">D. Atribut<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="font-size: 16pt; line-height: 150%;"><o:p> </o:p></span></b></span></div><div class="Normal14pt" style="line-height: normal; text-indent: 0in;"><span style="font-size: 78%;"><b><span style="font-size: 14pt;">D.1.Definisi dan Gambaran Umum Atribut<o:p></o:p></span></b></span></div><div class="Normal14pt"><span style="font-size: 78%;">Atribut dari sebuah kelas adalah variabel global yang dimiliki sebuah kelas, Atribut dapat memiliki hak akses private, public maupun protected. Sebuah atribut yang dinyatakan sebagai <i>private </i>hanya dapat diakses secara langsung oleh kelas yang membungkusnya, sedangkan kelas lainnya tidak dapat mengakses atribut ini secara langsung. Sebuah atribut yang dinyatakan sebagai <i>public </i>dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya. Sebuah atribut yang dinyatakan sebagai <i>protected </i>tidak dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya, kecuali kelas yang mengaksesnya adalah kelas turunan dari kelas yang membungkusnya. </span></div><div class="Normal14pt" style="line-height: normal; text-indent: 0in;"><span style="font-size: 78%;"><b><span style="font-size: 14pt;">D.2.Karakteristik Atribut<o:p></o:p></span></b></span></div><div class="Normal14pt" style="text-indent: 0in;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;"><span> </span></span></b>Dalam class, atribut disebut sebagai variabel. Atribut dapat membedakan antara satu object dengan object yang lain. Sebagai contoh, pada class : mahasiswa,<span> </span>terdapat object mahasiswa si A, dan object mahasiswa si B. Yang membedakan antara object si A dan si B adalah NPM-nya (Nomor Pokok Mahasiswa) yang merupakan atribut dari object tersebut. Pada atribut, terdapat pula dua istilah variabel, yaitu Instance Variabel dan Class Variable. Dimana pada tiap variabel memiliki karakteristik tersendiri, diantaranya : Pada Instance Variabel <span style="font-family: Wingdings;"><span>à</span></span><b>tiap</b> object memiliki instance variabel dan menyimpan nilainya tersendiri. Sedangkan pada Class Variabel <span style="font-family: Wingdings;"><span>à</span></span> atribut yang dimiliki oleh <b>semua</b> object yang berasal dari class yang sama, serta <b>semua </b>object memiliki nilai class variabel yang sama. atribut yang dimiliki object dari class yang sama, serta </span></div><div class="Normal14pt" style="text-indent: 0in;"><span style="font-size: 78%;"><b><span style="font-size: 14pt; line-height: 150%;">D.3.Deklarasi Atribut dalam Pemrograman Java<o:p></o:p></span></b></span></div><div class="Normal14pt" style="text-indent: 0in;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Bentuk Umum Atribut :</span></b><b><span style="font-size: 14pt; line-height: 150%;"><o:p></o:p></span></b></span></div><div class="Normal14pt" style="line-height: normal; text-indent: 0.25in;"><!--[if gte vml 1]><v:rect id="_x0000_s1049" style="'position:absolute;left:0;text-align:left;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 60px; left: 0px; margin-left: -2px; margin-top: 7px; position: absolute; width: 549px; z-index: -1;"><img height="60" shapes="_x0000_s1049" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image017.gif" width="549" /></span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span><!--[endif]--></div><div class="Normal14pt" style="line-height: normal; text-indent: 0.25in;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">[modifier] tipedata namavariabel;<o:p></o:p></span></span></div><div class="Normal14pt" style="line-height: normal; margin-left: -4.5pt; text-indent: 22.5pt;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">[public] [static] final tipedata NAMA_KONSTANTA = nilai;<o:p></o:p></span></span></div><div class="Normal14pt" style="text-indent: 0in;"><span style="font-size: 78%;"><span> </span><span> </span></span></div><div class="Normal14pt" style="text-indent: 0in;"><span style="font-size: 78%;">Merujuk pada Sub bahasan D.1.Definisi dan Gambaran Umum Atribut, berikut ini adalah contoh penggunaan atribut-atribut yang dimaksud (atribut yang ada didalam suatu class) :</span></div><div class="Normal14pt" style="text-indent: 0in;"><!--[if gte vml 1]><v:rect id="_x0000_s1042" style="'position:absolute;left:0;text-align:left;margin-left:0;margin-top:31.2pt;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 148px; left: 0px; margin-left: -2px; margin-top: 40px; position: absolute; width: 244px; z-index: -8;"><img height="148" shapes="_x0000_s1042" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image018.gif" width="244" /></span><b><span style="color: black; letter-spacing: -0.05pt;">Deskripsi pendeklarasiannya (sebagai contoh) :<o:p></o:p></span></b></span><!--[endif]--></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">class Elemen<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">{<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">private Elemen next1;<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">public Elemen next2;<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">protected Elemen next3;<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">Elemen()<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">{}<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">}<o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span><o:p> </o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">*) <i>Catatan</i> :</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">Jika kelas lain mempunyai objek dari kelas Elemen, dengan dilakukan pembuatan objek sbb: Elemen e = new Elemen(), maka :</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">● Atribut next1, tidak dapat diakses melalui elemen next1 karena atribut yang hak aksesnya private hanya dapat diakses oleh kelas yang membungkusnya. Jadi, pengaksesannya dapat dilakukan dengan membuat method pada kelas Elemen yang akan mengembalikan nilai atribut next1 tersebut. Contoh:</span></div><div class="MsoNormal" style="text-align: justify;"><!--[if gte vml 1]><v:rect id="_x0000_s1043" style="'position:absolute;" fillcolor="silver" strokeweight="2.25pt"> <v:stroke dashstyle="1 1" endcap="round"> </v:rect><![endif]--><!--[if !vml]--><span style="font-size: 78%;"><span style="height: 88px; left: 0px; margin-left: -2px; margin-top: 8px; position: absolute; width: 196px; z-index: -7;"><img height="88" shapes="_x0000_s1043" src="file:///C:/DOCUME%7E1/lazuardi/LOCALS%7E1/Temp/msohtml1/01/clip_image019.gif" width="196" /></span></span><!--[endif]--></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">public getNext1()<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">{<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">return next1;<o:p></o:p></span></span></div><div class="MsoNormal" style="margin-left: 17.85pt; text-align: justify;"><span style="font-size: 78%;"><span style="font-family: "Courier New"; font-size: 11pt;">}<o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">Kelas lain yang akan mengakses atribut next1 pada kelas Elemen harus memanggil method getNext1().Izin akses private ini ditujukan untuk melindungi atribut - atributnya agar tidak dapat diakses oleh kelas lain.</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">● Atribut next2, dapat diakses kelas lain melalui e.next2 karena bersifat public yang memungkinkan kelas lain untuk mengakses secara langsung terhadap kelas tersebut. Jika sebuah atribut tidak ditulis izin aksesnya, maka interpreter Java akan menganggap atribut tersebut memiliki izin akses public.</span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;">● Atribut next3, dapat diakses secara langsung oleh kelas lain yang merupakan turunan kelas Elemen. Izin akses protected ini dimaksudkan untuk melindungi atribut agar tidak diakses secara langsung oleh sembarang kelas lain, kecuali oleh kelas turunannya. </span></div><div class="MsoNormal" style="line-height: 200%; text-align: justify;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;"><span style="font-size: 78%;"><b><span style="color: black; font-size: 16pt; letter-spacing: -0.05pt; line-height: 150%;">E. Implementasi Program Java Lengkap (Object, Class, Method, dan Atribut)</span></b><span style="color: black; letter-spacing: -0.05pt;"> <o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Deskripsi Program :<o:p></o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></b></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Class <span> </span></span></b><span style="color: black; letter-spacing: -0.05pt;">: <span> </span>Radio</span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Object <span> </span></span></b><span style="color: black; letter-spacing: -0.05pt;">:<span> </span>Radioku</span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Attribute <span> </span></span></b><span style="color: black; letter-spacing: -0.05pt;">: <span> </span>Warna Kuning Jeruk</span></span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 1in; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Merek Arrowz</span></span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 1in; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Pemutar volume</span></span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 1in; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Tombol on/off</span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><b><span style="color: black; letter-spacing: -0.05pt;">Method</span></b><span> </span><span style="color: black; letter-spacing: -0.05pt;">: <span> </span>Membesarkan volume</span></span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 1in; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Menyalakan radio</span></span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 1in; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Mematikan radio<o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; margin-left: 1in; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Dari contoh di atas, terdapat satu buah class Radio dengan object<span> </span>Radioku. Object<span> </span>dalam<span> </span>class<span> </span>Radio<span> </span>bisa<span> </span>dibuat<span> </span>lebih<span> </span>dari<span> </span>satu.<span> </span>Kita<span> </span>bisa<span> </span>membuat<span> </span>object Radioku, Radiomu, Radionya Budi, dan Radionya Ridho. Banyak object yang dapat diciptakan dari satu kelas yang sama seperti halnya banyak radio yang dapat dibuat dari satu gambar rancangan yang sama. Bagaimana<span> </span>bentuk<span> </span>class,<span> </span>object,<span> </span>attribute,<span> </span>dan<span> </span>method<span> </span>dalam<span> </span>baris-baris pemrograman berbasis object? Mari kita lihat melalui bahasa Java yang menerapkan OOP :<o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><o:p> </o:p></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">// Radio.java</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">class Radio</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">String warna; //attribute dari class Radio</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">String merek;<span> </span>//attribute adalah data member atau variabel</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">int volume;</span><span style="font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">int off = 1;</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">//method dari kelas Radio</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">//method melakukan sebuah fungsi atau tugas dalam sebuah kelas</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">void nyalakanRadio()</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">System.out.println ("Radio menyala...");</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">off = 0; //tanda bahwa radio menyala</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">void matikanRadio()</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">off = 1; //tanda bahwa radio tidak menyala</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">System.out.println ("Radio tidak menyala...");</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">void besarkanVolume()</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">if (off == 1) //jika radionya mati</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">System.out.println ("Radio saat ini tidak menyala.");</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">System.out.println ("Tidak bisa besarkan volume.");</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">else</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">System.out.println ("Volume bertambah 1 level.");</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">void kecilkanVolume()</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">if (off == 1) //jika radionya mati</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">System.out.println ("Radio saat ini tidak menyala.");</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">System.out.println ("Tidak bisa kecilkan volume.");</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">else</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">System.out.println ("Volume berkurang 1 level.");</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">void cetakAttribute()</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">System.out.println ("Warna radio: " + warna);</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">System.out.println ("Merek radio: " + merek);</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">} //akhir dari kelas Radio</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;"><o:p> </o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Semua data member (variabel)<span> </span>dan method dibungkus dalam kelas-kelas atau object-object.<span> </span>Class<span> </span>Radio<span> </span>memiliki<span> </span>data<span> </span>yang<span> </span>berfungsi<span> </span>sebagai<span> </span>attribute<span> </span>seperti <b>warna</b>, <b>merek</b>, <b>off</b>, dan <b>volume</b>. Class Radio juga memiliki fungsi atau tugas yang berfungsi sebagai method seperti <b>nyalakanRadio</b>, <b>matikanRadio</b>, <b>besarkanVolume</b>, <b>kecilkanVolume</b>, dan <b>cetakAttribute</b>. <o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Selanjutnya,<span> </span>mari<span> </span>kita<span> </span>buat<span> </span>file <i>RadioBeraksi.java </i>Yang menggunakan attribute dan method dari file <i>Radio.java</i>.<o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">//RadioBeraksi.java</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">public class RadioBeraksi</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">public static void main (String[] args)</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">{</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">//membuat object terlebih dahulu</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">Radio radioku = new Radio();</span><span style="font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">//memanggil attribute dan memberi input nilai</span><span style="font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">radioku.warna = "Hitam";</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">radioku.merek = "Arrowz";</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">//panggil method dari class Radio</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="font-size: 11pt;">radioku.cetakAttribute();</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">radioku.kecilkanVolume();</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">radioku.nyalakanRadio();</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">radioku.besarkanVolume();</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">radioku.matikanRadio();</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: 78%;"><span style="color: black; font-family: "Courier New"; font-size: 11pt; letter-spacing: -0.05pt;">}</span><span style="font-family: "Courier New"; font-size: 11pt;"><o:p></o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;"><o:p> </o:p></span></span></div><div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"><span style="font-size: 78%;"><span style="color: black; letter-spacing: -0.05pt;">Dari<span> </span>baris-baris<span> </span>pemrograman dengan<span> </span>bahasa<span> </span>java<span> </span>yang dilengkapi<span> </span>dengan comment<span> </span>(komentar),<span> </span>kita<span> </span>dapat<span> </span>melihat<span> </span>bagaimana<span> </span>definisi<span> </span>class,<span> </span>object,<span> </span>data (attribute), dan method. Dalam OOP, data<span> </span>member<span> </span>dan method diperlakukan sama, tidak seperti dalam pemrograman terstruktur. Bagaimanapun, penggunaan sudut pandang object memberikan nuansa yang berbeda dalam merancang sebuah program. </span></span></div>trisna dewa herawatihttp://www.blogger.com/profile/06559881740171074964noreply@blogger.com0tag:blogger.com,1999:blog-6228706114189512088.post-34097935429107350022010-08-21T00:07:00.000-07:002010-08-21T00:07:01.235-07:00Statistik dengan SPSS<div class="p-con"> <div class="snap_preview"><img alt="0_deskriptif" class="alignnone size-full
wp-image-40" height="623" src="http://harisucahyowati.files.wordpress.com/2009/11/0_deskriptif.jpg?w=480&h=623" title="0_deskriptif" width="480" /><br />
<img alt="deskriptif2" class="alignnone size-full wp-image-47" height="610" src="http://harisucahyowati.files.wordpress.com/2009/11/deskriptif21.jpg?w=480&h=610" title="deskriptif2" width="480" /><br />
<img alt="deskriptif3" class="alignnone size-full wp-image-48" height="553" src="http://harisucahyowati.files.wordpress.com/2009/11/deskriptif3.jpg?w=480&h=553" title="deskriptif3" width="480" /><br />
<img alt="deskriptif4" class="alignnone size-full wp-image-50" height="588" src="http://harisucahyowati.files.wordpress.com/2009/11/deskriptif4.jpg?w=480&h=588" title="deskriptif4" width="480" /><br />
<img alt="deskriptif5" class="alignnone size-full wp-image-51" height="549" src="http://harisucahyowati.files.wordpress.com/2009/11/deskriptif5.jpg?w=480&h=549" title="deskriptif5" width="480" /><br />
</div></div>trisna dewa herawatihttp://www.blogger.com/profile/06559881740171074964noreply@blogger.com0tag:blogger.com,1999:blog-6228706114189512088.post-67218716545808286372010-08-20T23:41:00.000-07:002010-08-20T23:41:09.630-07:00PENGENALAN BASIS DATA<div class="pd-rating" id="pd_rating_holder_2047808_post_128" style="display: inline-block;"><div id="rating_info_2047808_post_128" onclick="javascript:PDRTJS_2047808_post_128.togglePopup();return false;" style="background: url("http://i0.poll.fm/images/ratings/info.png") no-repeat scroll 3px 2px transparent; cursor: pointer; display: none; float: left; height: 16px; width: 16px;"><span style="display: none;">i</span></div><div id="PDRTJS_2047808_post_128_msg" style="float: left; padding-left: 5px; text-align: left;"> </div><img alt="Quantcast" border="0" height="1" src="http://pixel.quantserve.com/pixel/p-ab3gTb8xb3dLg.gif" style="display: none;" width="1" /></div><script charset="utf-8" type="text/javascript">
<!--//--><![CDATA[//><!--
PDRTJS_settings_2047808_post_128={"id":2047808,"unique_id":"wp-post-128","title":"PENGENALAN BASIS DATA","permalink":"http:\/\/p2kckdw.wordpress.com\/2010\/06\/22\/pengenalan-basis-data\/","item_id":"_post_128"}
//--><!]]>
</script><strong>I. PENDAHULUAN</strong><br />
Sekarang peranan basis data sangatlah menonjol. Pemrosesan basis data menjadi perangkat andalan yang kehadirannya sangat diperlukan oleh berbagai institusi dan perusahaan. Basis data tidak hanya mempercepat perolehan informasi, tetapi juga dapat meningkatkan pelayanan kepada pelanggan. Hal ini pulalah yang mendorong banyak perusahaan yang menggunakan pemrosesan manual mulai beralih memanfaatkan basis data.<br />
Basis data dapat dibayangkan sebagai sebuah lemari arsip. Jika kita memiliki sebuah lemari arsip dan berwenang untuk mengelolanya, maka kemungkinan kita akan melakukan hal-hal seperti: memberi sampul/map pada kumpulan arsip yang akan disimpan, menentukan jenis arsip, melakukan penomoran dengan pola unik pada setiap map, lalu menempatkan arsip-arsip tersebut dengan cara tertentu didalam lemari.<br />
Pembicaraan basis data tidak dapat dipisahkan dengan teknologi komputer, karena teknologi basis data dan komputer berkembang beriringan. Perkembangan teknologi pengelolaan basis data mempunyai pengaruh besar terhadap perkembangan penggunaan komputer. Sebagai contoh, pemakaian teknologi basis data dalam pengelolaan data yang berjumlah besar untuk keperluan bisnis, keteknikan, pendidikan, kesehatan, hukum, perpustakaan dan sebagainya akan sangat efisien apabila menggunakan komputer.<br />
Sebelum istilah basis data dibahas lebih lanjut, lebih baik jika istilah data dan informasi dibahas terlebih dahulu. <strong>Data</strong> <em>merupakan fakta yang mewakili suatu obyek seperti manusia, hewan, peristiwa, konsep, keadaan dan sebagainya, yang dapat dicatat dan menpunyai arti yang implisit</em>. Data dicatat atau direkam dalam bentuk angka, huruf, simbol, gambar, bunyi, atau kombinasinya. Sebagai contoh, terdapat daftar nama, nomor telepon, dan alamat orang–orang yang menjadi anggota suatu organisasi.<br />
Sejumlah penulis menggunakan data untuk menyatakan nilai-nilai yang secara aktual terkandung dalam basis data sedangkan informasi digunakan untuk menyatakan makna nilai ketika dipahami oleh pengguna. <strong>Informasi</strong> <em>adalah hasil analisis dan sintesis terhadap data</em>. Dengan kata lain, informasi dapat dikatakan sebagai data yang telah diorganisasikan kedalam bentuk yang sesuai dengan kebutuhan seseorang dalam suatu organisasi atau perusahaan.<br />
Menurut <em>Encyclopedia of Computer Science and Engineering</em>, banyak ilmuwan di bidang informasi menerima definisi standar : “ Informasi adalah data yang digunakan dalam pengambilan keputusan”. Alasannya adalah informasi bersifat relatif; relatif terhadap situasi, relatif terhadap waktu saat keputusan diambil , juga relatif terhadap pembuat keputusan, dan bahkan juga terhadap latar belakang pengambil keputusan.<br />
Segala sesuatu yang dianggap penting pada suatu waktu bisa saja tidak berguna pada waktu yang lain. Ada kemungkinan pula bahwa sesuatu dianggap penting oleh seorang pengambil keputusan tidak dianggap penting oleh orang lain. Seperti halnya orang yang menerima kabar bahwa kurs dolar terhadap rupiah menguat. Apakah hal itu berguna bagi Anda ? Jika ya, itu adalah informasi bagi Anda. Namun bagi orang di pelosok desa yang tidak mengenal dolar, kabar tersebut tidak ada artinya apa-apa (bukan merupakan informasi). Dalam era informasi sekarang ini, informasi menjadi sumber penting untuk dapat mengurangi ketidakpastian dan mempermudah pengambilan keputusan.<br />
<h4>II. DEFINISI BASIS DATA</h4>Basis data didefinisikan sebagai kumpulan kelompok data (informasi) yang saling berhubungan yang diorganisasikan ke dalam tatacara yang khusus sedemikian rupa dan tanpa pengulangan (redundansi) yang tidak perlu agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah. Definisi lainnya, basis data dapat dianggap sebagai tempat untuk sekumpulan file data terkomputerisasi yang tujuan utamanya memelihara informasi dan membuat informasi tersebut tersedia saat dibutuhkan.<br />
Dalam praktek, penggunaan istilah basis data lebih dibatasi pada arti implisit yang khusus, yaitu :<br />
<ol><li>Basis data merupakan penyajian suatu aspek dari dunia nyata (<em>real world</em>). Misalnya basis data perbankan, perpustakaan dan lain sebagainya.</li>
<li>Basis data merupakan kumpulan dari berbagai sumber yang secara logika mempunyai arti yang implisit. Sehingga data yang terkumpul secara acak dan tanpa arti, tidak dapat disebut basis data.</li>
<li>Basis data dapat digunakan oleh beberapa pemakai dan beberapa aplikasi yang sesuai dengan kepentingan pemakai.</li>
</ol>Tidak semua bentuk penyimpanan data secara elektronis bisa disebut basis data, yang sangat ditonjolkan dalam basis data adalah <strong>pengaturan, pemilahan, pengelompokan, pengorganisasian</strong> data yang akan di simpan sesuai fungsi/jenisnya.<br />
Operasi-operasi dasar yang dapat kita lakukan berkaitan dengan basis data, meliputi:<br />
<ul><li>Create database (pembuatan basis data baru).</li>
<li>Drop database (penghapusan basis data).</li>
<li>Create table (pembuatan tabel ke suatu basis data).</li>
<li>Drop table (penghapusan tabel).</li>
<li>Insert (penambahan/pengisian data ke file/tabel di database).</li>
<li>Retrieve / search (pengambilan data dari sebuah file/tabel).</li>
<li>Update (pengubahan data dari sebuah file/tabel).</li>
<li>Delete (penghapusan data dari sebuah file/tabel).</li>
</ul>Pemanfaatan basis data dilakukan untuk memenuhi sejumlah tujuan (objektif) seperti berikut ini:<br />
<ul><li>Speed (kecepatan dan kemudahan).</li>
<li>Space (efisiensi ruang penyimpanan).</li>
<li>Accuracy (keakuratan).</li>
<li>Availability of data resources (ketersediaan data).</li>
<li>Completeness (kelengakapan).</li>
<li>Security (keamanan).</li>
<li>Sharability (kebersamaan pemakaian).</li>
</ul><strong>III. SISTEM PENGELOLA BASIS DATA</strong><br />
<strong>Database Management System / DBMS)</strong><br />
<strong> </strong><br />
Sistem adalah sebuah tatanan (keterpaduan) yang terdiri atas sejumlah komponen fungsional yang saling behubungan dan secara bersama bertujuan memenuhi suatu proses/pekerjaan tertentu.<br />
Basis data hanyalah sebuah objek yang pasif (mati), ia ada karena ada pembuatnya. Ia tidak akan berguna jika tidak ada pengelola/penggeraknya. Yang menjadi pengelola/penggerak-nya secara langsung adalah software. Gabungan keduanya (basis data dan pengelolanya) menghasilkan sebuah sistem.<br />
Secara umum, sebuah sistem basis data merupakan sistem yang terdiri atas kumpulan file (tabel) saling berhubungan dalam sebuah basis data di sebuah sistem komputer dan sekumpulan program (DBMS) yang memungkinkan beberapa pemakai dan/atau program untuk mengakses dan memanipulasi file-file (tabel-tabel) tersebut.<br />
Suatu <em>Database Management System</em> (DBMS) adalah kumpulan program yang digunakan untuk membuat dan mengelola basis data. DBMS ini merupakan suatu perangkat lunak yang secara umum dapat digunakan untuk melakukan proses dalam hal pendefinisian, penyusunan dan manipulasi basis data. Pendefinisian basis data meliputi spesifikasi tipe data, struktur dan pembatasan data yang dapat disimpan dalam basis data. Penyusunan basis data meliputi proses pemasukan data dalam media penyimpanan data. Sedangkan yang termasuk dalam manipulasi basis data seperti pembuatan pertanyaan (<em>query</em>) dari basis data untuk mendapatkan informasi tertentu, melakukan pembaharuan (<em>updating</em>) data dan pembuatan laporan (<em>report</em>) dari data dalam basis data.<br />
<h4>3.1. Pendekatan Tradisional</h4>Sistem pemrosesan basis data terbentuk setelah masa sistem pemrosesan manual dan sistem pemrosesan file.<br />
Sistem pemrosesan manual (berbasis kertas) merupakan bentuk pemroresan yang menggunakan dasar berupa setumpuk rekaman yang disimpan pada rak-rak file. Jika sesuatu file diperlukan, file tersebut harus dicari pada rak-rak tersebut. Bentuk seperti ini masih banyak dijumpai dalam kehidupan sehari-hari.<br />
Pada saat awal penerapan sistem komputer, sekelompok rekaman disimpan dalam sejumlah file secara terpisah. Sistem yang menggunakan pendekatan seperti ini disebut sebagai sistem pemrosesan file. Pendekatan tradisional yang berhubungan dengan manajemen data, sumber data dikumpulkan dalam file-file yang tidak berhubungan satu dengan lainnya. Biasanya tiap-tiap file dirancang untuk aplikasi tertentu. Gambaran dari sistem ini dapat dilihat pada Gambar 1 di atas. Kelebihan sistem ini dari sistem manual adalah dalam hal kecepatan dan keakuratannya. Kelemahannya, perancangan sistem masih didasarkan pada kebutuhan individual pengguna, bukan kebutuhan sejumlah pengguna. Kelemahan lainnya adalah :<br />
<ol><li>Duplikasi Data</li>
<li>Keterbatasan Berbagi Data</li>
<li>Ketidakkonsistenan dan kurangnya integritas</li>
<li>Kekurangluwesan</li>
</ol><strong>Duplikasi data</strong> diakibatkan oleh karena setiap program aplikasi menggunakan data tersendiri. Sebagai contoh, dalam sebuah perusahaan terdapat bagian Personalia dan Pelatihan. Program aplikasi personalia dipakai untuk mengarsipkan data pegawai untuk kepentingan personalia sedangkan program aplikasi pelatihan dipakai untuk mencatat segala kepentingan yang menyangkut pelatihan. Data pada kedua aplikasi tersebut, seperti nomor pegawai, nama pegawai dan bagian tempat kerja pegawai akan dicatat. Hal seperti inilah yang memungkinkan adanya duplikasi data.<br />
Duplikasi data terjadi karena <strong>keterbatasan berbagi data</strong>. Apabila suatu data dapat dipakai oleh beberapa program aplikasi, ataupun sejumlah orang, duplikasi data dapat dihindari.<br />
<strong>Ketidakkonsistenan</strong> data diakibatkan oleh adanya perubahan terhadap data yang sama. Sebagai contoh bila seorang telah pindah bagian dan hal ini telah di catat oleh bagian personalia, tetapi tidak dicatat oleh bagian pelatihan, maka pengguna pada bagian pelatihan tetap menganggap orang tersebut belum pindah bagian. Ketidakkonsistenan data berkaitan dengan <strong>integritas</strong> data. Bila data tidak konsisten, maka integritas akan berkurang. Integritas berarti bahwa data selalu dalam keadaan valid. Pada lingkungan <em>multiuser</em>, integritas merupakan hal yang sangat kritis, disebabkan tindakan yang dilakukanoleh masing-masing pengguna akan mempengaruhi pengguna yang lain. Bayangkan apa jadinya seandainya dua buah biro perjalanan bisa menjual sebuah tiket untuk tempat duduk yang sama pada pesawat terbang pada dua pelanggan ?<br />
<h4>3.2. Pendekatan Basis Data</h4>Pendekatan basis data mencoba untuk memperbaiki kelemahan-kelemahan yang terjadi di pendekatan tradisional. Selain itu sistem ini memiliki keunggulan yaitu pengaturan sekuritas terhadap basis data berdasarkan wewenang pengguna. Sebagai contoh, A hanya boleh membaca suatu data, tetapi B boleh mengubahnya. Sekuritas data sangat penting pada basis data, yaitu untuk menghindari pengaksesan data sensitif oleh orang yang tidak berhak.<br />
Di dalam lingkungan basis data, data lebih mudah digunakan. Pada beberapa DBMS tersedia fasilitas <em>query</em> yang memudahkan pengguna untuk memperoleh informasi. Gambaran sistem ini dapat dilihat pada Gambar 2. Pengguna yang tidak memiliki kemampuan pemrograman pun dengan mudah bisa menggunakan fasilitas <em>query</em> tersebut. Bagi pemrogram aplikasi, pembuatan program aplikasi juga dapat dilakukan dengan mudah dengan tersedianya bahasa pemrograman visual, dibanding dengan menggunakan bahasa-bahasa konvensional seperti COBOL dan FORTRAN. Keadaan seperti ini dapat meningkatkan produktifitas pemrogram. Keuntungan lainnya dapat dilihat di bawah ini :<br />
<ol><li>Pemusatan kontrol data</li>
</ol>Dengan satu DBMS di bawah kontrol, satu orang atau kelompok dapat menjamin terpeliharanya standar kualitas data dan keamanan pembatasan pemakaian. Disamping itu integritas data dapat terjaga.<br />
<ol><li>Pemakaian data bersama</li>
</ol>Dengan menggunakan DBMS, informasi yang ada dalam basis data dapat digunakan secara efektif oleh beberapa pemakai dengan kontrol data yang terjaga. Fasilitas penanganan data dalam DBMS juga memberi kemungkinan untuk mengembangkan program aplikasi yang baru (dengan menggunakan basis data yang ada).<br />
<ol><li>Data yang bebas</li>
</ol>Program aplikasi dan data saling bebas, tidak tergantung satu sama lain. Jadi apabila ada perubahan pada program aplikasi tidak akan mempengaruhi data, demikian juga sebaliknya.<br />
<ol><li>Pemakaian secara langsung</li>
</ol>Sistem basis data saat ini biasanya menyediakan jendela pemakai, sehingga pemakai (bukan pemrograman) dapat melakukan analisis data yang rumit sekalipun. Pada saat yang sama sistem basis data berperan sebagai pengontrol penggunaan dan operasi basis data untuk menjaga konsistensi, dan adanya perlindungan pada integritas basis data.<br />
<ol><li>Data yang berlebihan dapat di kontrol</li>
</ol>Dalam pemrosesan file untuk setiap apliaksi menggunakan file-file yang berbeda. Sehingga sering menghasilkan data yang rangkap (<em>redundant</em>). Hal demikian menyebabkan pemborosan biaya. Sedangkan tujuan penggunaan basis data salah satunya adalah apabila dilakukan penambahan data pada salah satu dile, maka file data yang lainnya juga ikut diperbaharui. DBMS dapat digunakan untuk menurunkan tingkat <em>redundancy</em> dan pengelolaan proses pembaruan data.<br />
<ol><li>Pandangan pemakai (<em>user views</em>)</li>
</ol>DBMS dapat memberikan kemudahan untuk membuat dan memelihara jendela pemakai (<em>user interface</em>) sesuai dengan pandangan pemakai terhadap basis data. Sehingga ada kemungkinan basis data yang diakses sama, tetapi jendela pemakai akan berbeda disesuaikan dengan pemahaman tiap pemakai terhadap basis data menurut kebutuhan.<br />
Selain keuntungan atau kelebihan yang ada pada basis data, ada beberapa kelemahan pada penggunaan dengan pendekatan basis data, yaitu :<br />
<ol><li>Biaya</li>
</ol>Biaya yang digunakan untuk mendapatkan perangkat lunak dan perangkat keras yang tepat sangatlah mahal. Termasuk juga biaya pemeliharaan<em> (maintenance cost</em>) dan penyediaan sumberdaya manusia untuk mengelola basis data tersebut.<br />
<ol><li>Sangat kompleks</li>
</ol>Sistem basis data lebih kompleks di banding sistem file. Semakin kompleks suatu sistem akan semakin mudah terjadi kesalahan dan semakin sulit dalam pemeliharaan data.<br />
Untuk lebih jelasnya mengenai perkembangan teknologi basis data, dapat dilihat pada tabel di bawah ini. Terlihat bahwa pada perkembangan di tahun 1990-an sudah ada integrasi antara bidang ilmu basis data dan bidang kecerdasan buatan. Penggabungan dua bidang ilmu ini bertujuan untuk menciptakan komputer yang dapat berpikir. Komputer dapat mengambil keputusan berdasarkan <em>rule-rule</em> atau kaidah yang disimpan dalam basis data dan juga berdasarkan aturan yang telah ditetapkan. Contohnya adalah pembuatan aplikasi robot yang dapat mengerti bahasa manusia dan mengerjakan tugas yang diperintahkan oleh manusia.<br />
<strong>Tabel 1 Evolusi teknologi basis data</strong><br />
<table border="1" cellpadding="0" cellspacing="0"><tbody>
<tr> <td valign="top" width="95">Masa</td> <td valign="top" width="359">Perkembangan Basis Data</td> </tr>
<tr> <td valign="top" width="95">1960-an</td> <td valign="top" width="359">v Sistem Pemrosesan file v DBMS<br />
v Layanan informasi secara <em>online</em> berbasis manajemen teks</td> </tr>
<tr> <td valign="top" width="95">1970-an</td> <td valign="top" width="359">v Penerapan sistem pakar pada sistem pendukung pengambilan keputusan v Basis data berorientasi obyek</td> </tr>
<tr> <td valign="top" width="95">1980-an</td> <td valign="top" width="359">v Sistem <em>hypertext, </em>yang memungkinkan untuk melihat basis data secara acak menurut suatu kata kunci (sebagaimana yang diterapkan pada Internet)</td> </tr>
<tr> <td valign="top" width="95">1990-an</td> <td valign="top" width="359">v Sistem basis data cerdas v Sistem basis data multimedia cerdas</td> </tr>
</tbody> </table><h4>3.3. Jenjang Data</h4>Sampai dengan membentuk suatu basis data, basis data mempunyai jenjang mulai dari karakter, data <em>item/field</em>, <em>record</em>, file dan kemudian basis data. Jenjang ini dapat digambarkan sebagai berikut :<br />
<strong>Karakter</strong> merupakan bagian data yang terkecil, dapat berupa karakter numerik, huruf maupun karakter khusus yang membentuk suatu field. Suatu <strong>field </strong>menggambarkan suatu atribut dari record yang menunjukkan suatu item dari data, seperti misalnya nama, alamat dan lain sebagainya. Ada tiga hal yang penting dari suatu field, yaitu :<br />
Nama dari field (<em>Field Name</em>)<br />
Field harus diberi nama untuk membedakan antara field yang satu dengan field yang lainnya.<br />
Representasi dari Field (<em>Field Representation</em>)<br />
Representasi dari field menunjukkan tipe dari field (<em>field type</em>) serta lebar dari field<em> (field width</em>). Field dapat bertipe numerik, karakter atau huruf, tanggal dan memo. Lebar dari field menunjukkan ruang maksimum dari field yang dapat diisi dengan karakter-karakter data.<br />
Nilai dari Field (<em>Field Value</em>)<br />
Menunjukkan isi dari field untuk masing-masing record.<br />
Kumpulan dari field membentuk suatu <strong>record</strong>. Record menggambarkan suatu unit data individu yang tertentu. Kumpulan dari record-record yang menggambarkan suatu kesatuan data yang sejenis disebut dengan <strong>file</strong>. Kumpulan dari file membentuk <strong>basis data</strong>.<br />
<h4>3.4. File Secara Fisik dan File Secara Logika</h4>File secara fisik menunjukkan bagaimana file tersebut secara fisik disusun dan disimpan di media simpanan luar seperti misalnya disket atau pita magnetik. File secara logika menyangkut bagaimana hubungan antara data di pandang untuk menyediakan informasi kepada pemakai. Di dalam merancang suatu file, biasanya dirancang secara logika. Tugas pengubahan dari file secara logika ke bentuk nyata secara fisik diselesaikan dengan suatu perangkat lunak.<br />
<h4>3.5. Komponen Utama DBMS</h4>Komponen utama DBMS dapat terdiri dari 5 bagian, yaitu :<br />
Perangkat keras<br />
Data<br />
Pengguna<br />
Perangkat Lunak<br />
Prosedur<br />
<ul><li>Perangkat Keras</li>
</ul>Perangkat keras berupa komputer dan bagian-bagian di dalamnya, seperti prosesor, memori dan harddisk. Komponen inilah yang melakukan pemrosesan dan juga menyimpan basis data. Perangkat keras ini dapat berupa PC (<em>Personal Computer</em>) maupun jaringan komputer.<br />
<ul><li>Data</li>
</ul>Data di dalam basis data mempunyai sifat terpadu (<em>integrated</em>) dan berbagi (<em>shared</em>).<br />
<ul><li>Perangkat Lunak</li>
</ul>Berupa Sistem Operasi, DBMS dan lainnya jika dibutuhkan. Perangkat lunak, dalam hal ini DBMS, berkedudukan antara basis data (data yang disimpan dalam harddisk) dan pengguna. Perangkat lunak inilah yang berperan melayani permintaan-permintaan pengguna.<br />
Pemilihan paket DBMS dapat ditentukan berdasarkan pedoman berikut :<br />
<ol><li>Harus mudah digunakan</li>
<li>Mempunyai prosedur <em>back-up</em> untuk membuat file pelindung</li>
<li>Dapat memberikan signal bila terjadi kegagalan sistem</li>
<li>Banyaknya file yang dapat dibuka serentak pada suatu waktu</li>
<li>Kemampuan untuk merubah nilai-nilai default yang sudah ditentukan</li>
<li>Kemampuan operasi aritmatikanya</li>
<li>Kemampuan untuk mengedit data dengan mudah</li>
<li>Kemampuan untuk mengurutkan data</li>
<li>Kecepatan pengolahan</li>
<li>Kemampuan pembuatan laporan</li>
<li>Kemampuan untuk menggabung atau mengupdate dengan dua atau lebih file</li>
<li>Kemampuan memodifikasi struktur data</li>
<li><em>13. </em>Kemampuan <em>indexing</em></li>
<li>Kemampuan <em>query language</em></li>
<li>Kemampuan untuk digunakan pada sistem multi-user</li>
<li>Harga dari paket tersebut</li>
<li>Dukungan purna jual apabila ada paket yang lebih baru</li>
</ol><ul><li>Pengguna</li>
</ul>Pengguna dapat diklasifikasikan menjadi tiga kategori :<br />
Pengguna akhir<br />
Pemrogram aplikasi<br />
Administrator basis data<br />
Pemrogram aplikasi adalah orang yang membuat program aplikasi yang menggunakan basis data. Program apliaksi yang dibuat tentu saja sesuai dengan kebutuhan pengguna.<br />
Pengguna akhir dapat dibagi menjadi 2 macam :<br />
<ol><li>Pengguna aplikasi</li>
<li>Pengguna interaktif</li>
</ol>Pengguna aplikasi adalah orang yang mengaplikasikan program aplikasi yang dibuat oleh pemrogram aplikasi.<br />
Pengguna interaktif adalah orang yang dapat memberikan perintah-perintah pada antarmuka basis data yang tersedia (misalnya dengan menggunakan perintah SELECT, INSERT dan sebagainya) atau melakukan perintah-perintah melalui antarmuka berbasis menu.<br />
Setiap pengguna diberi akses terhadap basis data secara tersendiri. Tidak semua pengguna bisa menggunakan data yang bersifat sensitif. Penentuan hak akses disesuaikan dengan wewenang pengguna dalam organisasi.<br />
<ul><li>Prosedur</li>
</ul>Dokumentasi prosedur adalah cara penggunaan sistem, yaitu instruksi bagaimana cara untuk :<br />
<ul><li>Log on to DBMS <ul><li>Penggunaan fasiltas DBMS tertentu atau aplikasi program</li>
<li>Start & stop DBMS</li>
<li>Membuat backup database</li>
<li>Menangani hardware/software failure <ul><li>Mengubah struktur table, reorganisasi database antar disk, meningkatkan <em>performance</em> atau <em>archive</em> data ke <em>secondary storage</em></li>
</ul></li>
</ul></li>
</ul><h4>Hubungan Pemakai dengan Basis Data</h4>Semua operasi input dan output yang berhubungan dengan basis data harus menggunakan DBMS. Bila pemakai akan mengakses basis data, DBMS menyediakan penghubung (<em>interface</em>) antara pemakai dengan basis data. Hubungan pemakai dengan basis data dapat dilakukan dengan dua cara, yaitu :<br />
<ol><li>Secara interaktif menggunakan <em>query language</em></li>
<li>Dengan menggunakan program aplikasi</li>
</ol>Dengan menggunakan <em>query languge</em>, maka pemakai dapat menggunakan basis data tanpa harus membuat suatu program terlebih dahulu. Hanya dengan perintah-perintah pendek saja, maka dapat berhubungan dengan basis data. Dengan demikian mereka yang tidak menguasai pemrograman, masih memungkinkan untuk memanipulasi basis data secara langsung dengan mudah. <em>Query language</em> biasanya digunakan untuk permintaan informasi yang mendadak. Bila pemrosesan data sifatnya adalah rutin, maka dapat dibuatkan suatu program aplikasi untuk mengakses basis data. Supaya user dapat berhubungan dengan basis data baik melalui query language maupun program aplikasi, DBMS mempunyai paling sedikit dua buah fasilitas, yaitu DDL (<em>Data Definition Language</em>) dan DML (<em>Data Manipulation Language</em>).<br />
<em>Data Definition Language</em> mempunyai fungsi utama untuk mendefinisikan dalam basis data, diantaranya yaitu :<br />
<ol><li>Digunakan untuk mendefinisikan karakteristik dari <em>record</em> (meliputi nama, tipe dan lebar dari field).</li>
<li>Untuk menentukan kunci field.</li>
<li>Menyediakan cara untuk menentukan hubungan dengan data di file lain</li>
<li><em>4. </em>Untuk merubah struktur dari <em>record</em></li>
</ol><em>Data Manipulation Language</em> digunakan untuk memanipulasi basis data yang telah didefinisikan dengan DDL. Manipulasi data dapat berupa:<br />
<ul><li>Penyisipan / penambahan data baru ke suatu basis data.</li>
<li>Penghapusan data dari suatu basis data.</li>
<li>Pengubahan data disuatu basis data.</li>
</ul>DML ada 2 jenis, yaitu:<br />
<ul><li> <ol><li>Prosedural, yang mensyaratkan agar pemakai menentukan data apa yang diinginkan serta bagaimana cara mendapatkannya.</li>
<li>NonProsedural, yang membuat pemakai dapat menentukan data apa yang diinginkan tanpa menyebutkan bagaimana cara mendapatkannya.</li>
</ol></li>
</ul>Program aplikasi basis data yang beredar dipasar sekarang ini sangat beragam jenisnya. Contohnya :<br />
<ol><li>Oracle</li>
<li>Gupta</li>
<li>Microsoft Access</li>
<li>Microsoft Foxfo</li>
<li>DB2</li>
<li>SQL Server</li>
<li>dsb</li>
</ol><strong>IV. MODEL DATA</strong><br />
Yang dimaksud dengan model data adalah kumpulan konsep untuk merepresentasikan suatu lingkungan aplikasi. Lingkungan aplikasi terdiri dari obyek – obyek beserta sifatnya serta hubungan antar obyek beserta koneksitasnya untuk memenuhi kebutuhan pemakai. Beberapa jenis model data yang ada adalah :<br />
<ul><li>Model <em>entity relationship</em></li>
<li>Model jaringan</li>
<li>Model hirarki</li>
<li>Model berorientasi obyek</li>
<li>Model relasi</li>
</ul>Model relasi adalah jenis model basis data yang banyak digunakan saat ini untuk pembuatan basis data. Pada model ini, basis data dilihat sebagai data yang disimpan dalam sekumpulan tabel atau relasi dua dimensi dengan beberapa sifat khusus.<br />
attribut<br />
MAHASISWA<br />
<table border="1" cellpadding="0" cellspacing="0"><tbody>
<tr> <td valign="top" width="159"><span style="text-decoration: underline;">NIM</span></td> <td valign="top" width="160">NAMA</td> <td valign="top" width="160">ALAMAT</td> <td valign="top" width="81">JURUSAN</td> </tr>
<tr> <td valign="top" width="159">17101209</td> <td valign="top" width="160">Hery</td> <td valign="top" width="160">Makasar, JakTim</td> <td valign="top" width="81"> <table cellpadding="0" cellspacing="0"><tbody>
<tr> <td height="40" width="88"> <table cellpadding="0" cellspacing="0"><tbody>
<tr> <td>tupples</td> </tr>
</tbody> </table></td> </tr>
</tbody> </table>S1 – SI</td> </tr>
<tr> <td valign="top" width="159">17101219</td> <td valign="top" width="160">Aji</td> <td valign="top" width="160">BtKemang, Bogor</td> <td valign="top" width="81">S1 – SI</td> </tr>
<tr> <td valign="top" width="159">17101229</td> <td valign="top" width="160">Novianto</td> <td valign="top" width="160">PdKelapa, Bekasi</td> <td valign="top" width="81">S1 – SI</td> </tr>
</tbody> </table>Tabel terdiri atas sekumpulan kolom bernama dan sejumlah baris tak bernama. Setiap kolom dihubungkan dengan sebuah domain. Hubungan antar tabel dinyatakan secara eksplisit dengan duplikasi kolom dari satu tabel pada tabel yang lain. Setiap relasi harus memiliki kolom yang menjadi identitas yang unik dari relasi. Identitas unik ini disebut atribut <em>key</em>. Istilah untuk setiap baris dalam tabel adalah <em>tuple</em>. Jadi tabel adalah koleksi dari <em>tuple</em>, sedangkan <em>tuple</em> adalah koleksi dari atribut.<br />
<strong>4.1. Model Relasional </strong><br />
<em>Relational Database Management System</em> sudah menjadi perangkat lunak pemrosesan data yang dominan saat ini. Pada model relational semua data secara logical terstruktur dalam relasi ( tabel). Setiap relasi memiliki nama dan terdiri dari beberapa atribut (kolom). Setiap tuple (baris) mengandung satu nilai untuk setiap atribut.<br />
<strong>4.1.1. Terminologi Struktur Data Relasi</strong><br />
Relational DBMS hanya membutuhkan bahwa database yang dilihat user adalah berupa tabel. Namun, persepsi ini hanya diterapkan dalam <em>logical</em> <em>structure</em> dari database yaitu pada level external dan konseptual. Hal ini tidak dapat diterapkan pada struktur fisik dari database, yang dapat diimplementasikan menggunakan berbagai struktur penyimpanan.<br />
Pada model relasional, relasi digunakan untuk menyimpan informasi mengenai objek yang akan direpresentasikan dalam database. Sebuah relasi direpresentasikan sebagai tabel dua dimensi dimana baris dari tabel merupakan record dan kolom pada tabel merupakan atribut.<br />
Domain merupakan hal yang paling berguna dalam model relasional. Setiap atribut dalam database relational ditentukan pada sebuah domain. Domain dapat berbeda untuk setiap atribut, atau dua atau lebih atribut bisa memiliki domain yang sama. Konsep domain menjadi penting karena mengijinkan user untuk menentukan arti dan sumber nilai yang dapat disimpan dalam atribut. Sehingga lebih banyak informasi dapat disediakan sistem pada saat melakukan operasi relasi, dan operasi yang tidak benar secara semantik dapat dihindari.<br />
Elemen dari sebuah relasi adalah baris atau tuple dari tabel. Tuple dapat muncul dalam urutan bebas dan relasi akan tetap, urutan baris tidak mempengaruhi kondisi relasi.<br />
Relasi yang hanya memiliki satu atribut disebut <strong>unary relation</strong> atau <strong>one-tuple</strong>. Relasi dengan dua atribut disebut dengan <strong>binary relation</strong>, dengan tiga atribut disebut <strong>ternary</strong>, dan selebihnya istilah <strong>n-ary</strong> sering digunakan.<br />
Sebaliknya, jumlah tuple disebut cardinality dari relasi dan kondisi ini berubah setiap ada penambahan atau pengurangan tuple. Akhirnya didapat definisi :<br />
Terminologi lain untuk model relasional dapat dilihat pada Tabel berikut :<br />
Terminologi dalam model relasional<br />
<table border="0" cellpadding="0" cellspacing="0"><tbody>
<tr> <td valign="top" width="169"><strong>Istilah Formal</strong></td> <td valign="top" width="169"><strong>Alternatif 1</strong></td> <td valign="top" width="169"><strong>Alternatif 2</strong></td> </tr>
<tr> <td valign="top" width="169">Relation</td> <td valign="top" width="169">Table</td> <td valign="top" width="169">File</td> </tr>
<tr> <td valign="top" width="169">Tuple</td> <td valign="top" width="169">Row</td> <td valign="top" width="169">Record</td> </tr>
<tr> <td valign="top" width="169">Attribute</td> <td valign="top" width="169">Column</td> <td valign="top" width="169">Field</td> </tr>
</tbody> </table><strong> </strong><br />
<strong>4.2. Entitas, Atribut, Domains, Relationship Type, Key,</strong><br />
<strong>Constraints </strong><br />
Beberapa konsep yang ada dalam database adalah entitas, atribut, <em>domain</em>, <em>relationship type</em>, <em>key</em>, dan <em>constraints</em>. Entitas merupakan obyek atau konsep yang dapat dikenali dan berdiri sendiri, seperti fakultas, jurusan, mahasiswa, dan sebagainya. Atribut merupakan properti yang dimiliki oleh setiap entitas. Misalnya entitas fakultas memiliki atribut nomor fakultas, nama, nama dekan. <em>Domain</em> adalah satu set dari nilai sebuah atribut. Misalnya fakultas mempunyai <em>domain</em> set dari karakter yang panjangnya 15 karakter. Tipe entitas adalah kumpulan dari entitas yang mempunyai atribut yang sama. Dalam model data relasional tipe entiti disebut sebagai tabel. <em>Relationship</em> merupakan relasi antara satu entitas dengan entitas lain.<br />
Istilah lain yang dikenal dalam database model relasi adalah <em>superkey, candidate key, </em>dan<em> primary key</em>. <em>Superkey</em> merupakan suatu set dari atribut yang membedakan satu <em>tuple</em> dengan <em>tuple</em> lainnya. <em>Superkey</em> bisa mempunyai atribut yang berulang. <em>Key</em> adalah bagian dari <em>superkey</em> dengan tambahan properti. Dengan kata lain <em>key</em> adalah minimal <em>superkey</em> yang membedakan setiap <em>tuple</em>, atau membuat setiap <em>tuple</em> menjadi unik. <em>Candidate key</em> adalah set dari atribut yang dapat dijadikan <em>key</em>. <em>Primary key</em> adalah set dari <em>candidate</em> <em>key</em> yang dijadikan <em>key</em>. Dengan kata lain <em>primary key</em> berfungsi untuk membedakan setiap <em>tuple</em>. Set {Nama, ID, Alamat} adalah <em>superkey</em>. Set {Nama, ID, Alamat}, {ID, Alamat}, {Nama, ID} adalah contoh dari <em>candidate</em> <em>key</em>. ID merupakan salah satu contoh dari <em>primary key</em> karena ID menjamin keunikan setiap <em>tuple</em> di dalam tabel atau relasi.<br />
<em>Constraint</em> adalah batasan-batasan yang membatasi setiap kombinasi dari setiap entitas dalam sebuah relasi. Batasan-batasan itu terdiri dari : <em>cardinality</em> dan <em>participation</em>. <em>Cardinality</em> antara dua entitas dapat berupa 1:1 <em>(one-to-one)</em>, 1:M <em>(one-to many)</em>, dan N:M <em>(many-to-many)</em>. Dengan <em>Cardinality</em> 1:1 antara entitas E1 dengan entitas E2 menunjukkan setiap elemen dari entitas E1 berelasi satu elemen entitas E2. <em>Cardinality</em> 1:M menunjukkan setiap satu elemen entitas E1 dapat berelasi dengan banyak elemen entitas E2. Sedangkan <em>cardinality</em> N:M menunjukkan bahwa beberapa elemen entitas E1 dapat berelasi dengan beberapa elemen entitas E2. <em>Constraint participation</em> dapat berupa <em>full</em> dan <em>partial</em>. <em>Full participation</em> berarti setiap entitas harus ada dalam setiap relasi. Sedangkan <em>partial participation</em> menunjukkan setiap entitas tidak harus ada dalam relasi.<br />
<strong> </strong><br />
<strong>4.3. Entity Relationship Diagram (ER Diagram)</strong><br />
Alat bantu yang digunakan dalam menggambarkan data adalah diagram hubungan antar entitas atau yang lebih dikenal dengan diagram <em>entity relationship </em>(ER). Entitas adalah sesuatu yang dapat dikenali serta berdiri sendiri. Dalam suatu perguruan tinggi, entitas dapat berupa mahasiswa, dosen, fakultas, jurusan, dan sebagainya. Diagram ER menunjukkan entitas-entitas dalam sebuah sistem, relasi-relasi yang terjadi antara satu entitas dengan entitas lainnya, serta atribut-atribut untuk setiap entitas dari relasi tersebut. Atribut merupakan properti yang dimiliki oleh entitas. Misalnya, entitas mahasiswa akan memiliki atribut nama, NIM/NIM, alamat, asal SMU, nama orang tua, dan banyak lagi. Gambar 5. menunjukkan simbol-simbol yang digunakan pada diagram ER.<br />
<strong>Gambar 5. Simbol Diagram ER</strong><br />
<strong> </strong><br />
<strong>4.4. Normalisasi Data</strong><br />
Normalisasi data adalah proses analisis setiap relasi dengan menggunakan <em>functional dependency</em> dan <em>primary key</em> yang bertujuan untuk :<br />
<ul><li>Menghilangkan pengulangan–pengulangan data di dalam basis data (<em>reduce data redundancy</em>)</li>
<li>Mengatasi anomali-anomali dalam penambahan, penghapusan, dan perubahan data ( <em>overcome update anomalies</em>)</li>
</ul>Sebelum menentukan definisi dari setiap <em>normal form</em>, perlu diketahui beberapa konsep yang akan digunakan, seperti <em>functional dependency</em>, <em>full</em> <em>functional dependency, partial dependency, transitive dependency, </em>dan<em> prime attribute.</em><br />
<em>Functional dependency</em> antara dua set atribut A dan B, yang ditulis sebagai A®B, menunjukkan batasan-batasan dari kemungkinan <em>tuple</em> yang dapat membentuk relasi. A®B berarti B bergantung secara fungsional pada A, dengan kata lain nilai B tergantung dari nilai-nilai pada komponen A. B bergantung secara total ( <em>fully functionally dependent</em>) kepada A jika menghilangkan beberapa atribut dari A membuat B tidak lagi bergantung secara fungsional kepada A. Dengan kata lain, jika A mengandung atribut {x,y} dan B mempunyai atribut {m,n}, maka B bergantung secara total dan fungsional (<em>fully functionally dependent</em>) kepada A jika menghilangkan {x} dari A akan membuat B tidak lagi bergantung kepada A. B dikatakan bergantung secara partial (<em>partially dependent</em>) kepada A jika menghilangkan atribut {x} dari A tidak mengubah ketergantungan B terhadap A. Jika A, B, dan C adalah set dari beberapa atribut dari sebuah relasi sedemikian rupa sehingga A®B dan B®C, maka C dikatakan bergantung secara transitif (<em>transitively</em> <em>dependent</em>) kepada A melalui B. <em>Prime attribute</em> adalah sub set dari <em>candidate</em> <em>key</em>.<br />
Beberapa normalisasi yang sering dipakai untuk pembuatan basis data adalah <em>First Normal Form (1NF), Second Normal Form (2NF), </em>dan<em> Third Normal Form (3NF).</em><br />
Sebuah relasi dikatakan memenuhi kriteria 1NF jika perpotongan antara baris dan kolom dalam tabel atau relasi hanya berisi satu nilai. Jika R adalah set atribut dari sebuah relasi {A1,A2,…,An} dan A adalah sub set dari R maka :<br />
<ul><li> Sebuah relasi/tabel dikatakan memenuhi kriteria 2NF jika relasi tersebut memenuhi 1NF dan setiap atribut yang bukan <em>primary</em> <em>key</em> bergantung secara fungsional dan total kepada <em>primary key</em>. Sebuah relasi dikatakan memenuhi 2NF jika setiap atribut yang bukan <em>primary key</em> tidak bergantung secara sebagian (<em>partially</em> <em>dependent</em>) pada beberapa key dalam R.</li>
<li> Sebuah relasi dikatakan memenuhi kriteria 3NF jika untuk setiap fungsional dependensi X®A dalam R maka : 1. X adalah <em>superkey</em> atau 2. A adalah <em>prime attribute</em> dari R.</li>
</ul>Interpretasi dari definisi diatas adalah sebagai berikut :<br />
Sebuah relasi R memenuhi kriteria 3NF jika setiap atribut yang bukan <em>primary key</em> :<br />
1. bergantung secara fungsional dan total kepada setiap <em>key</em> dari R<br />
2. tidak bergantung secara transitif kepada setiap <em>key</em> dari R<br />
<strong>4.5. Contoh Kasus E-R Diagram </strong><br />
Pada contoh kasus Sistem informasi eCampus terdiri dari sistem informasi registrasi awal untuk mahasiswa baru, sistem informasi KRS, dan sistem informasi studi. Pada sistem informasi registrasi, mahasiswa baru melakukan login ke dalam sistem untuk memasukkan biodata. Selanjutnya biodata disimpan dalam database mahasiswa untuk digunakan sewaktu diperlukan.<br />
Pada sistem informasi KRS, mahasiswa melakukan login dan memilih option untuk pengisian KRS. Pembuatan diagram ER dengan tahapan sebagai berikut :<br />
(1) identifikasi entitas<br />
(2) pembuatan relationship antar entitas<br />
(3) pendefinisian key pada setiap entitas<br />
(4) pendefinisian dan pemetaan elemen data untuk setiap entitas<br />
(5) normalisasi model data.<br />
<strong><span style="text-decoration: underline;">Tahap identifikasi entitas</span></strong><br />
Didapatkan tiga buah entitas yaitu <strong>MAHASISWA, MATA_KULIAH, </strong>dan <strong>NILAI. MAHASISWA</strong> berisi biodata mahasiswa., Adapun <strong>MATA_KULIAH, </strong>karena untuk menampilkan mata kuliah perlu ada tabel berisi mata kuliah. <strong>NILAI</strong> beriri data nlai mahasiswa untuk setiap mata kuliah yang diambil. Dari proses mata kuliah untuk menampilkan <em>lecture note</em> juga diperlukan informasi mengenai jurusan sehingga pengelompokkannya berdasarkan jurusan. Maka perlu ada satu entitas bernama <strong>JURUSAN</strong>. Sebagai penulis/pembuat lecture note dan pengajar mata kuliah yang bersangkutan maka entitas <strong>DOSEN</strong> juga diperlukan. Entitas pada <strong>DOSEN</strong> juga melakukan update terhadap data nilai akademik mahasiswa (Nilai).<br />
<strong><span style="text-decoration: underline;">Tahap pembuatan relasi antar entitas </span></strong><br />
Dari tahap pertama didapat entitas-entitas berikut :<br />
1.MAHASISWA<br />
2.MATA_KULIAH<br />
3.NILAI<br />
4.JURUSAN<br />
5.DOSEN<br />
6.KRS<br />
7.KSM<br />
8.SKRIPSI<br />
9.USER<br />
Atribut dari masing-masing entitas adalah sebagai berikut :<br />
MAHASISWA (Nim, Nama, Alamat, Jur, Telepon, KodePos, Sex, Agama)<br />
MATA_KULIAH (NoMK, NamaMK, NIP, Silabus)<br />
NILAI (Nim, NoMK, Nilai, Tahun, Semester)<br />
JURUSAN (NoJur, Nama_Jur, Ketua_Jur)<br />
DOSEN (NIP, NamaDosen, Golongan)<br />
KRS (NIM, Tahun, Semester, KodeMK)<br />
KSM (NIM, Tahun, Semester, KodeMK)<br />
SKRIPSI (NIM, Judul_Skripsi, Nilai_Skripsi, NIP_PA1, NIP_PA2, NIP_PA3, Tahun)<br />
USER (User, Password)<br />
<strong>V. Structured Query Language (SQL)</strong><br />
SQL adalah salah satu bahasa yang digunakan untuk melakukan query pada database. Perintah-perintah yang ada pada SQL serupa dengan kata-kata bahasa Inggris sehari-hari sehingga mudah digunakan. Dengan SQL user dapat mengakses data dalam sistem manajemen basis data relasional, seperti Oracle, Sybase, Informix, Microsoft SQL Server, Microsoft Access dan sebagainya. User mengakses data tersebut dengan cara mendeskripsikan data yang ingin dilihat oleh user. SQL juga memungkinkan user untuk mendefinisikan data dalam database serta memanipulasi data tersebut. SQL yang akan dibahas disini adalah ANSI SQL atau Standard SQL , yaitu SQL yang dijadikan standard oleh American National Standard Institute (Lembaga Standarisasi Nasional Amerika) dan bukan SQL yang merupakan feature dari sistem basis data tertentu.<br />
Dalam Basisdata Relasional, data disimpan dalam tabel. Sebagai contoh kita memiliki tabel <strong>MAHASISWA</strong>, <strong>JURUSAN</strong> dan <strong>NILAI </strong>dengan relasi DAN deskripsi sebagai berikut :<br />
<table border="0" cellpadding="0" cellspacing="0"><tbody>
<tr> <td colspan="5" valign="top" width="508"> <h1>DATABASE MAHASISWA (MAHASISWA)</h1></td> </tr>
<tr> <td valign="top" width="30"><strong>NO</strong></td> <td valign="top" width="90"><strong>NAMA RECORD</strong></td> <td valign="top" width="75"><strong>JENIS DATA</strong></td> <td valign="top" width="90"><strong>UKURAN DATA</strong></td> <td valign="top" width="224"><strong>KETERANGAN</strong></td> </tr>
<tr> <td valign="top" width="30">1</td> <td valign="top" width="90">NIM</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">10</td> <td valign="top" width="224">Nomor Induk Mahasiswa</td> </tr>
<tr> <td valign="top" width="30">2</td> <td valign="top" width="90">NAMA</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">50</td> <td valign="top" width="224">Nama Lengkap</td> </tr>
<tr> <td valign="top" width="30">3</td> <td valign="top" width="90">ALAMAT</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">100</td> <td valign="top" width="224">Alamat Tinggal</td> </tr>
<tr> <td valign="top" width="30">4</td> <td valign="top" width="90">JUR</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">15</td> <td valign="top" width="224">Kode Jurusan Mahasiswa</td> </tr>
<tr> <td valign="top" width="30">5</td> <td valign="top" width="90">TELP</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">12</td> <td valign="top" width="224">No Telepon</td> </tr>
<tr> <td valign="top" width="30">6</td> <td valign="top" width="90">KODEPOS</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">6</td> <td valign="top" width="224">Kode Pos</td> </tr>
<tr> <td valign="top" width="30">7</td> <td valign="top" width="90">SEX</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">1</td> <td valign="top" width="224">Jenis Kelamin</td> </tr>
<tr> <td valign="top" width="30">8</td> <td valign="top" width="90">AGAMA</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">1</td> <td valign="top" width="224">Agama</td> </tr>
</tbody> </table><table border="0" cellpadding="0" cellspacing="0"><tbody>
<tr> <td colspan="5" valign="top" width="508"> <h1>DATABASE JURUSAN (JURUSAN)</h1></td> </tr>
<tr> <td valign="top" width="30"><strong>NO</strong></td> <td valign="top" width="90"><strong>NAMA RECORD</strong></td> <td valign="top" width="75"><strong>JENIS DATA</strong></td> <td valign="top" width="90"><strong>UKURAN DATA</strong></td> <td valign="top" width="224"><strong>KETERANGAN</strong></td> </tr>
<tr> <td valign="top" width="30">1</td> <td valign="top" width="90">NO_JUR</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">2</td> <td valign="top" width="224">Kode Jurusan</td> </tr>
<tr> <td valign="top" width="30">2</td> <td valign="top" width="90">NAMA_JUR</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">50</td> <td valign="top" width="224">Nama Jurusan</td> </tr>
<tr> <td valign="top" width="30">3</td> <td valign="top" width="90">KETUA_JUR</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">100</td> <td valign="top" width="224">Nama Ketua Jurusan</td> </tr>
</tbody> </table><table border="0" cellpadding="0" cellspacing="0"><tbody>
<tr> <td colspan="5" valign="top" width="508"> <h1>DATABASE NILAI (NILAI)</h1></td> </tr>
<tr> <td valign="top" width="30"><strong>NO</strong></td> <td valign="top" width="90"><strong>NAMA RECORD</strong></td> <td valign="top" width="75"><strong>JENIS DATA</strong></td> <td valign="top" width="90"><strong>UKURAN DATA</strong></td> <td valign="top" width="224"><strong>KETERANGAN</strong></td> </tr>
<tr> <td valign="top" width="30">1</td> <td valign="top" width="90">NIM</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">10</td> <td valign="top" width="224">Nomor Induk Mahasiswa</td> </tr>
<tr> <td valign="top" width="30">2</td> <td valign="top" width="90">NOMK</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">10</td> <td valign="top" width="224">Kode Mata Kuliah</td> </tr>
<tr> <td valign="top" width="30">3</td> <td valign="top" width="90">NILAI</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">2</td> <td valign="top" width="224">Huruf Mutu</td> </tr>
<tr> <td valign="top" width="30">4</td> <td valign="top" width="90">TAHUN</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">4</td> <td valign="top" width="224">Tahun mengambil Mata Kuliah</td> </tr>
<tr> <td valign="top" width="30">5</td> <td valign="top" width="90">SEMESTER</td> <td valign="top" width="75">Karakter</td> <td valign="top" width="90">2</td> <td valign="top" width="224">Semester mengambil Mata Kuliah</td> </tr>
</tbody> </table><strong>5.1. Statement SELECT </strong><br />
Statement SELECT digunakan untuk menampilkan data berdasarkan kriteria yang ditentukan. Statement ini dibentuk dari tiga klausa dengan format sebagai berikut<br />
SELECT <daftar atribut=""></daftar><br />
FROM < daftar tabel><br />
WHERE < kondisi ><br />
Dimana<br />
<ul><li>·<daftar atribut=""> : daftar nama atribut yang akan diambil datanya oleh query</daftar></li>
<li>·<daftar tabel=""> : daftar relasi yang diperlukan untuk melakukan query <ul><li>·<kondisi> : ekspresi pencarian kondisi yang digunakan untuk menyaring<br />
hasil query</kondisi></li>
</ul></daftar></li>
</ul>Query 1:<br />
Misal kita ingin melihat nama seluruh mahasiswa, maka query-nya adalah<br />
SELECT NAMA<br />
FROM Mahasiswa<br />
Query 2:<br />
Untuk melihat NIM dan nama seluruh mahasiswa, maka query-nya adalah<br />
SELECT NIM, NAMA<br />
FROM Mahasiswa<br />
<strong>5.2. Pemilihan Berkondisi </strong><br />
Klausa WHERE pada SQL digunakan membatasi bahwa hanya baris-baris tertentu dari tabel saja yang ditampilkan, berdasarkan kriteria yang dinyatakan dalam klausa WHERE. Ada enam Operator Relasi dalam SQL yaitu<br />
<table border="0" cellpadding="0" cellspacing="0"><tbody>
<tr> <td width="212">OPERATOR</td> <td width="261">MAKNA</td> </tr>
<tr> <td width="212">=</td> <td width="261">Sama dengan</td> </tr>
<tr> <td width="212"><> atau != (see manual)</td> <td width="261">Tidak sama dengan</td> </tr>
<tr> <td width="212"><</td> <td width="261">Lebih Kecil dari</td> </tr>
<tr> <td width="212">></td> <td width="261">Lebih Besar dari</td> </tr>
<tr> <td width="212"><=</td> <td width="261">Lebih Kecil atau Sama dengan</td> </tr>
<tr> <td width="212">>=</td> <td width="261">Lebih Besar atau Sama dengan</td> </tr>
</tbody> </table>Query 3:<br />
Untuk menampilkan NIM dan Nama seluruh mahasiswa laki-laki, maka query-nya adalah<br />
SELECT NIM, NAMA<br />
FROM Mahasiswa<br />
WHERE Sex = ‘L’<br />
5.3. Query Dengan Kondisi Kompleks<br />
Klausa WHERE tidak terbatas hanya dapat menampung satu jenis operator , beberapa operator dapat digunakan untuk membentuk query dengan kondisi kompleks. Operator AND menggabungkan dua atau lebih kondisi, dan menampilkan baris data hanya jika baris tersebut memenuhi SEMUA kondisi yang disyaratkan. Operator <em>OR</em> menggabungkan dua atau lebih kondisi, tetapi menampilkan baris yang memenuhi SALAH SATU kondisi yang disyaratkan<br />
Urutan eksekusi dari kiri ke kanan adalah<br />
<ul><li>·NOT</li>
<li>·AND <ul><li>OR</li>
</ul></li>
</ul>Query 4:<br />
Statement query untuk menampilkan NIM mahasiswa dengan jurusan MI dan jenis kelamin adalah “L” :<br />
SELECT NIM<br />
FROM Mahasiswa<br />
WHERE Jur = ‘MI’ And Sex=’L’<br />
Query 5:<br />
Statement query untuk menampilkan NIM mahasiswa yang berasal dari Jurusan MI atau TI saja<br />
SELECT NIM<br />
FROM Mahasiswa<br />
WHERE Jur = ‘MI’ OR Jur = ‘TI’<br />
Query 6:<br />
Statement query untuk menampilkan NIM mahasiswa yang kode jurusannya mengandung kode “MI” dan “TI” dengan menggunakan statemen <strong>IN</strong> sebagai berikut<br />
SELECT NIM<br />
FROM Mahasiswa<br />
WHERE Jur <strong>IN </strong> (‘MI’ , ‘TI’)<br />
Query 7:<br />
Sedangkan untuk menampilkan NIM mahasiswa yang pembimbing pertamanya NIP <strong>BUKAN</strong> 130206001 atau 130206002 adalah<br />
SELECT NIM<br />
FROM Mahasiswa<br />
WHERE NIPPA1 <strong>NOT IN </strong> (‘130206001’ , ‘130206002’)<br />
<strong>5.4. Statemen LIKE</strong><br />
Untuk mencari kode jurusan dan nama jurusan, dimana nama jurusan mengandung kata “UTER” gunakan statemen berikut<br />
Query 8:<br />
SELECT No_Jur, Nama<br />
FROM Jurusan<br />
WHERE NamaJur LIKE ‘%UTER%’<br />
Karakter persen(%) digunakan untuk menyatakan sebuah atau sekumpulan karakter yang mungkin (angka, huruf, atau tanda baca) . Untuk mencari kata yang diawali dengan kata DATA gunakan ‘DATA%’, sedangkan untuk mencari kata yang diakhiri dengan DATA gunakan ‘%DATA’.<br />
<strong>5.5. Statemen NULL</strong><br />
NULL menyatakan KOSONG atau tidak ada data dan bukan berarti Nol. Untuk mencari nilai yang berisi data (tidak kosong).<br />
Query 9:<br />
SELECT NIM<br />
FROM NILAI<br />
WHERE (Nilai <strong>IS NOT NULL</strong>)<br />
<strong>5.6. JOIN</strong><br />
Untuk menampilkan data dari dua atau lebih tabel yang berkaitan digunakan statemen JOIN. Misal kita ingin menampilkan NIM, NAMA dan NO_MK, Nilai, dimana atribut NAMA berasal dari tabel <strong>MAHASISWA </strong>sedangkan atribut <strong>NIM, NO_MK, </strong>dan<strong> NILAI</strong> berasal dari tabel <strong>NILAI</strong><strong>. </strong>Kunci (<em>key) </em>yang dipakai pada operasi JOIN diatas adalah atribut NIM pada <strong>NILAI </strong> dan atribut NIM pada <strong>MAHASISWA</strong>. Statemen yang digunakan adalah<br />
Query 10:<br />
SELECT NILAI.NIM, MAHASISWA.NAMA, NILAI.NO_MK, NILAI.NILAI<br />
FROM MAHASISWA, NILAI<br />
WHERE NILAI.NIM=MAHASISWA.NIM<br />
Dalam statemen diatas kedua buah tabel yang menjadi sumber data ditulis dalam klausa FROM. Tanda titik (.) diantara nama tabel dan nama kolom digunakan untuk membedakan jika pada beberapa tabel terdapat nama kolom yang sama.<em> </em><br />
Yang pertama dilakukan oleh statemen diatas adalah melakukan operasi FROM dari NILAI dan MAHASISWA. Operasi FROM dari dua tabel adalah operasi <em>cartesian product.</em><br />
SELECT MHS.NAMA,MK.NAMA,NILAI ,SKS<br />
FROM MHS,KHS,MK<br />
WHERE MHS.ID_MHS=KHS.ID_MHS AND KHS.ID_MK=MK.ID_MK AND NILAI = “A” ORDER BY MHS.NAMA ASC<br />
<h4>5.7. ALIAS</h4>Untuk memudahkan penulisan kita dapat membuat nama alias untuk tabel. Misal alias dari MAHASISWA adalah t1, statemennya adalah MAHASISWA <strong>AS</strong><strong> </strong>t1. Dengan demikian Query 11 dapat juga ditulis sebagai<br />
Query 11:<br />
SELECT <strong>t1.</strong>NIM, <strong>t1</strong>.NAMA, <strong>t2</strong>.NAMA_JUR<br />
FROM MAHASISWA <strong>AS</strong><strong> </strong>t1, JURUSAN <strong>AS</strong><strong> </strong>t2<br />
WHERE t1<strong>.NO_JUR</strong> = t2.NO_JUR<br />
Alias juga dapat digunakan pada klausa SELECT , misal<br />
Query 12:<br />
SELECT t1<strong>.</strong>NIM, t1.NAMA <strong>AS </strong> NAMA_MAHASISWA, t2.NAMA_JUR <strong>AS</strong> NAMA_JURUSAN<br />
FROM MAHASISWA AS<strong> </strong>t1, JURUSAN AS t2<br />
WHERE t1<strong>.NO_JUR</strong> = t2.NO_JUR<br />
<strong>5.8. Nested Query</strong><br />
Sebuah statemen query dapat pula mengandung query lainnya (query dalam query). Misal kita ingin menampilkan NIM dan NILAI yang kode MK didalam tabel Mata Kuliah tidak Null. Pertama kita cari dulu semua Kode_MK yang tidak Null. Ini dapat dilakukan dengan statemen<br />
SELECT NO_MK<br />
FROM Mata_Kuliah<br />
WHERE NO_MK IS NOT NULL<br />
Selanjutnya kita gunakan informasi NIM dan NILAI yang diperoleh mahasiswa, dimana NO_MK yang terdapat didalam tabel NILAI adalah TIDAK NULL<br />
SELECT NIM,Nilai<br />
FROM Nilai<br />
WHERE NO_MK IN ( <strong>daftar kode mk yang tidak null </strong>)<br />
Jika kedua statemen di atas digabungkan menjadi<br />
Query 13 :<br />
SELECT NIM,Nilai<br />
FROM Nilai<br />
WHERE NO_MK IN (SELECT NO_MK FROM Mata_Kuliah WHERE NO_MK IS NOT NULL)<br />
<strong>5.9. Fungsi Agregat</strong><br />
Fungsi Agregat adalah fungsi dalam SQL yang digunakan untuk mencari nilai dari sebuah kelompok data (agregat) dan bukan menampilkan baris-baris data. Fungsi agregat yang ada adalah<br />
<ul><li>·SUM (), menjumlahkan nilai dari kolom jika data data dalam kolom tersebut numerik</li>
<li>·AVG (), menghitung rataan dari kolom</li>
<li>·MAX(), mencari nilai terbesar dari kolom</li>
<li>·MIN(), mencari nilai terkecil dari kolom</li>
<li>·COUNT(*), menghitung jumlah baris yang memenuhi kondisi</li>
</ul>Untuk mengetahui jumlah mahasiswa bernama HERY,digunakan statemen berikut<br />
Query 14 :<br />
SELECT COUNT(*)<br />
FROM Mahasiswa<br />
WHERE ALAMAT = ‘HERY’<br />
<strong>5.10. Membuat Tabel Baru</strong><br />
Statemen untuk membuat tabel baru mengikuti pola berikut<br />
CREATE TABLE <nama_tabel></nama_tabel><br />
[( Nama_Kolom Tipe_Data),]<br />
Tipe data yang umum ada dalam SQL adalah<br />
<ul><li>·Char(x), tipe data karakter, x menunjukkan jumlah maksimal karakter yang diperbolehkan <ul><li>·Integer, tipe data bilangan, positif ataupun negatif</li>
<li>·Decimal(x,y), tipe data desimal, x menunjukkan panjang maksimal bilangan , dan y menunjukkan jumlah panjang maksimal bilangan dibelakang koma. Bilangan maksimum yang dapat ditampung Decimal (4,2) adalah 99.99 <ul><li>·Date, tipe data tanggal</li>
<li>·Logical, tipe data logika, hanya mengenal dua nilai : TRUE atau FALSE</li>
</ul></li>
</ul></li>
</ul>Untuk masing-masing software basisdata mungkin memiliki tipe data tersediri. Statemen untuk membuat tabel tbDosen adalah<br />
Query 15 :<br />
CREATE TABLE tblDosen<br />
(NIP Char(10),<br />
NAMA Char(50),<br />
S1 Char(50),<br />
S2 Char(50),<br />
S3 Char(50)<br />
);<br />
<strong>5.11. Operasi Tabel</strong><br />
Untuk menambah kolom baru pada tabel :<br />
<strong>ALTER </strong> TABLE <nama_table></nama_table><br />
<strong>ADD</strong> [( Nama_Kolom Tipe_Data),]<br />
Untuk menghapus kolom yang sudah ada<br />
<strong>ALTER </strong> TABLE <nama_table> <strong>DROP <</strong>Nama_Kolom></nama_table><br />
Untuk menambah <em>Primary Key </em>pada tabel<strong> </strong><br />
<strong>ALTER </strong> TABLE <nama_table></nama_table><br />
<strong>ADD PRIMARY KEY </strong> (Kolom_Primary_Key)<br />
Untuk mengganti nama tabel<br />
<strong>ALTER </strong> TABLE <nama_table> <strong> </strong></nama_table><br />
<strong>RENAME <</strong>NAMA_BARU><br />
<strong>5.12. Manipulasi Data</strong><br />
Untuk menambahkan data ke tabel MAHASISWA<br />
<strong>INSERT INTO </strong>Mahasiswa <strong>VALUES </strong>(‘17101209’,’Hery Aji’,’Jakarta’,’SI’,’P’,’Islam’);<br />
Statemen tersebut menambahkan data ke dalam tabel sebagai baris baru, kolom per kolom secara berurutan. Jika kita ingin menambahkan data kolom tertentu saja, maka statemennya adalah<br />
INSERT INTO<strong> </strong>Mahasiswa (<strong>NAMA, NIM) </strong>VALUES<br />
(’Hery Aji’ ,‘17101209’);<br />
Statemen DELETE digunakan untuk menghapus data, contoh<br />
<strong>DELETE</strong> FROM mahasiswa WHERE NIM = ‘17101209’<br />
UPDATE adalah statemen yang digunakan untuk memperbarui is tabel,<br />
<strong>UPDATE </strong> Nilai <strong>SET</strong> Nilai= ‘A’ WHERE NIM = ‘17101209’ and NOMK=’KK000001’<br />
Jika klausa WHERE tidak disertakan berarti perubahan dilakukan ke seluruh baris dalam tabel. Klausa SET dapat juga berisi operasi aritmatik seperti SET GAJI = GAJI * 1.15trisna dewa herawatihttp://www.blogger.com/profile/06559881740171074964noreply@blogger.com0tag:blogger.com,1999:blog-6228706114189512088.post-3434619132545567732010-08-15T01:51:00.000-07:002010-08-15T01:51:29.773-07:00Perancangan Sistem InformasiSISTEM INFORMASI HOTEL<br />
<br />
<br />
1. 1 Latar Belakang<br />
Dewasa ini bisnis perhotelan berkembang begitu pesat. Hal ini disebabkan karena begitu banyaknya bermunculan hotel-hotel. Mulai dari hotel kecil sampai hotel berbintang. Dengan keadaan yang seperti itu, maka persaingan di dunia Perhotelan semakin ketat. Dalam hal ini, suatu hotel harus mempunyai keistimewaan agar lebih unggul dibanding hotel yang lain. Disini Sistem Informasi berperan sangat penting. Sebab bila hotel tersebut mempunyai Sistem Informasi yang baik, maka pelayanan hotel tersebut juga akan berjalan dengan baik juga. <br />
Melihat perkembangan Teknologi Informasi yang begitu pesat, maka Sistem Informasi yang kini digunakan juga harus memanfaatkan Teknologi (Komputerisasi). Hal ini bertujuan agar Sistem Informasi dapat bekerja semakin efisien dan lebih diharapkan lagi agar menjadi langkah yang efektif agar kepuasan customer bisa tercapai. Lebih-lebih agar tujuan Hotel tersebut dapat terwujud.<br />
Aktifitas yang terjadi di dalam hotel bisa kita contohkan sebagai berikut: Tamu hotel memesan kamar (booking), petugas front office langsung membuka program dan mendata pemesanan. Sistem Informasi kemudian menginformasikan data-data kamar yang sudah dipesan, dan memberitahukan jika kamar tersebut telah dipesan oleh tamu lain. Pada hari tamu datang (check-in), petugas akan diingatkan bahwa tamu tersebut akan melakukan check-in. dan semua tagihan secara otomatis. Saat tamu keluar (check-out) dan melakukan pembayaran, kuitansi pembayaran akan dicetak oleh program. Pemesanan kamar atau kamar tamu yang sedang dipakai dapat dialihkan ke kamar lain sesuai keinginan tamu/hotel. Tagihan dan pembayaran kamar dapat di rinci per kamar maupun per tamu. Untuk menyiapkan strategi pemasaran hotel, Manajer Hotel memerlukan data-data tamu dan kamar secara cepat sehingga dapat mengambil keputusan yang tepat dalam waktu yang cepat. Dan Sistem Informasi ini juga ditujukan untuk hal menunjang manager agar dapat melakukan tugasnya lebih effektif.<br />
Sistem informasi hotel ini merupakan Sistem Informasi yang membantu petugas front office untuk menangani semua informasi berkaitan dengan kamar, tamu dan pengunjung hotel serta membuat laporan-laporan yang dibutuhkan pihak manajemen dalam mengembangkan promosi hotel.<br />
<br />
<br />
1.2 Rumusan Masalah<br />
Berdasarkan Latar Belakang di atas, maka dapat di rumuskan permasalahan sebagai berikut, yaitu:<br />
1. Apakah cara yang digunakan untuk memudahkan petugas front office hotel dalam menangani semua informasi kamar, tamu dan pengunjung hotel, serta membuat beragam laporan yang diperlukan sehingga pelayanan kepada tamu dan pengunjung menjadi lebih maksimal, cepat dan akurat?<br />
2. Apakah cara yang digunakan untuk memudahkan Manajer Hotel dalam mengawasi operasional hotel sehari-hari dan mengevaluasi kemajuan penerimaan/pendapatan hotel sehingga dapat diambil keputusan yang tepat dan cepat untuk terus meningkatkan pendapatan hotel? <br />
3. Apakah cara yang digunakan untuk dapat melayani tamu, pengunjung dan pengguna jasa hotel lainnya secara cepat dan memuaskan sehingga menimbulkan image yang baik mengenai hotel Anda dan mereka akan kembali lagi ataupun menceritakan kepada orang lain tentang kepuasan pelayanan yang diterimanya?<br />
<br />
1.3 Batasan Masalah<br />
Agar permasalahan yang dibahas lebih fokus dan berbobot, maka pembatasan masalah yaitu melingkupi:<br />
1. Sistem Informasi Pemesanan Kamar<br />
2. Sistem Informasi Check In<br />
3. Sistem Informasi Penggunaan Fasilitas<br />
4. Sistem Informasi Check Out<br />
<br />
<br />
<br />
<br />
1.4 Tujuan<br />
<br />
Berdasarkan rumusan masalah yang telah dipaparkan di atas, maka dapat di tentukan beberapa tujuan mengapa kita menggunakan Sistem Informasi tersebut. Dan Tujuannya adalah sebagai berikut, yaitu:<br />
1. Untuk memudahkan petugas front office hotel dalam menangani semua informasi kamar, tamu dan pengunjung hotel, serta membuat beragam laporan yang diperlukan sehingga pelayanan kepada tamu dan pengunjung menjadi lebih maksimal, cepat dan akurat?<br />
2. Untuk memudahkan Manajer Hotel dalam mengawasi operasional hotel sehari-hari dan mengevaluasi kemajuan penerimaan/pendapatan hotel sehingga dapat diambil keputusan yang tepat dan cepat untuk terus meningkatkan pendapatan hotel? <br />
3. Apakah cara yang digunakan untuk dapat melayani tamu, pengunjung dan pengguna jasa hotel lainnya secara cepat dan memuaskan sehingga menimbulkan image yang baik mengenai hotel Anda dan mereka akan kembali lagi ataupun menceritakan kepada orang lain tentang kepuasan pelayanan yang diterimanya?<br />
<br />
<br />
<br />
<br />
BAB II<br />
<br />
LANDASAN TEORI<br />
Hotel adalah tempat yang mempunyai fungsi utama yaitu sebagai tempat menginap dan atau beristirahat. Namun hotel juga mempunyai fungsi-fungsi lain, salah satunya adalah sebagai tempat seminar, atau acara-acara lain seperti pernikahan dan sebagainya. Oleh karena itu, agar hotel bisa lebih unggul, maka haruslah mempunyai pelayanan dan fasilitas yang baik. Hal ini juga terjadi akibat adanya persaingan dalam bidang perhotelan yang semakin ketat.Untuk itu, maka Hotel harus memiliki Sistem Informasi yang baik.<br />
Di dalam Sistem Informasi hotel terdapat beberapa sub sistem- sub sistem, antar lain:<br />
1. Pesan Kamar : Suatu kegiatan yang dilakukan oleh Customer kepada Front Office untuk memberi Informasi bahwa Customer tersebut akan memesan kamar.<br />
2. Check In : Aktifitas yang dilakukan untuk memberitahukan bahwa Customer telah siap menempati kamar yang telah dipesan sebelumnya.<br />
3. Penggunaan Fasilitas : Kegiatan yang dilakukan Customer dengan tujuan agar Customer bisa menggunakan Fasilitas –fasilitas yang ada di Hotel tersebut.<br />
4. Check Out : Kegiatan yang bertujuan untuk mengkonfirmasi bahwa Customer telah akan meninggalkan atau keluar dari Hotel<br />
<br />
<br />
<br />
<br />
BAB III<br />
ANALISA dan PERANCANGAN SISTEM<br />
<br />
1. DOCUMENT FLOW<br />
1.1 Pesan Kamar <br />
<br />
<a href="http://img341.imageshack.us/i/pesankamar.jpg/"><img alt="Image
Hosted by ImageShack.us" border="0" src="http://img341.imageshack.us/img341/1932/pesankamar.jpg" /></a><br />
<br />
<br />
<br />
<br />
1.2 Check In<br />
<br />
<a href="http://img37.imageshack.us/i/checkin.jpg/"><img alt="Image
Hosted by ImageShack.us" border="0" src="http://img37.imageshack.us/img37/7119/checkin.jpg" /></a><br />
<br />
<br />
<br />
<br />
1.3 Penggunaan Fasilitas<br />
<br />
<a href="http://img69.imageshack.us/i/fasilitas.jpg/"><img alt="Image
Hosted by ImageShack.us" border="0" src="http://img69.imageshack.us/img69/2200/fasilitas.jpg" /></a><br />
<br />
<br />
<br />
<br />
1.4 Check Out<br />
<a href="http://img691.imageshack.us/i/checkout.jpg/"><img alt="Image
Hosted by ImageShack.us" border="0" src="http://img691.imageshack.us/img691/3164/checkout.jpg" /></a><br />
<br />
<br />
2. INVENTARIS DATA <br />
2.1 Pesan Kamar<br />
No NAMA DATA / INFORMASI ARAH ALIRAN ENTITY<br />
1 Laporan Pesan Kamar Keluar Sistem Manager<br />
2 Bukti Pesan Kamar Keluar Sistem Customer<br />
<br />
2.2 Check In <br />
No NAMA DATA / INFORMASI ARAH ALIRAN ENTITY<br />
1 Laporan Penempatan Kamar Keluar Sistem Manager<br />
<br />
2.3 Penggunaan Fasilitas<br />
No NAMA DATA / INFORMASI ARAH ALIRAN ENTITY<br />
1 Laporan Penggunaan Fasilitas Keluar Sistem Manager , Customer<br />
<br />
2.4 Check Out<br />
No NAMA DATA / INFORMASI ARAH ALIRAN ENTITY<br />
1 Bukti Pembayaran Keluar Sistem Customer<br />
2 Laporan Keuangan Keluar Sistem Pimpinan<br />
<br />
<br />
<br />
3.1 DIAGRAM KONTEKS<br />
<br />
<a href="http://img687.imageshack.us/i/diagramkonteks.jpg/"><img alt="Image Hosted by ImageShack.us" border="0" src="http://img687.imageshack.us/img687/5186/diagramkonteks.jpg" /></a><br />
<br />
<br />
<br />
<br />
3.2 DATA FLOW DIAGRAM Level 1<br />
<br />
<a href="http://img31.imageshack.us/i/diagramflow.jpg/"><img alt="Image
Hosted by ImageShack.us" border="0" src="http://img31.imageshack.us/img31/804/diagramflow.jpg" /></a><br />
<br />
<br />
<br />
3.3 DATA FLOW DIAGRAM Level 2<br />
3.3.1 Pesan Kamar<br />
<br />
<a href="http://img527.imageshack.us/i/dflow2pesankamar.jpg/"><img alt="Image Hosted by ImageShack.us" border="0" src="http://img527.imageshack.us/img527/1143/dflow2pesankamar.jpg" /></a><br />
<br />
<br />
3.3.2 Check In<br />
Tidak ada DFD level 2 nya<br />
<br />
<br />
<br />
<br />
<br />
<br />
3.3.3 Pemakaian Fasilitas<br />
<br />
<a href="http://img24.imageshack.us/i/dflow2fasilitas.jpg/"><img alt="Image Hosted by ImageShack.us" border="0" src="http://img24.imageshack.us/img24/6528/dflow2fasilitas.jpg" /></a><br />
<br />
<br />
3.3.4 Check Out<br />
<br />
<a href="http://img412.imageshack.us/i/dflow2checkout.jpg/"><img alt="Image Hosted by ImageShack.us" border="0" src="http://img412.imageshack.us/img412/2638/dflow2checkout.jpg" /></a>trisna dewa herawatihttp://www.blogger.com/profile/06559881740171074964noreply@blogger.com3tag:blogger.com,1999:blog-6228706114189512088.post-36828402793149658332010-08-14T23:00:00.000-07:002010-08-14T23:00:17.133-07:00<h2 class="date-header"><span>14 Agustus 2010 </span></h2><h2 class="date-header"><span> </span></h2><div class="date-posts"> <div class="post-outer"> <div class="post hentry uncustomized-post-template"> <a href="" name="3186121982803136784"></a> <div class="post-header"> </div><div class="post-body entry-content"> SEJARAH KOMPUTER DAN PERKEMBANGANNYA<br />
DARI GENERASI KE GENERASI<br />
<br />
Seberapa lengkap komputer Anda? Adakah printer, speaker aktif, scaner atau modem yang terhubung dengan komputer tersebut?. Bisakah memasang sendiri perlatan itu?. Komputer tidak hanya sebagai alat ketik mengetik atau membuat tabel-tabel laporan, tetapi sudah menjadi peralatan yang serba bisa. Untuk mencetak foto, mendengarkan musik atau memutar film, dan bisa juga menjadi alat komunikasi dengan dunia luar.<br />
<br />
MACAM - MACAM PORT :<br />
<br />
1.Port serial<br />
2.Port paralel<br />
3.Port USB<br />
4.Port VGA<br />
5.Port soundcard<br />
<br />
Hardware komputer tersebut dapat terhubung karena adanya port-port, yaitu bagian perangkat keras komputer tempat menghubungkan peralatan-peralatan tersebut. Seiring dengan perkembangan komputer, port saat ini juga telah berkembang pesat yang sampai saat ini ditujukan untuk kepraktisan penggunaan atau ditujukan untuk kecepatan komunikasinya.<br />
<br />
Ada istilah untuk port plug and play (tancapkan dan jalankan), merupakan port yang tidak perlu diinstall untuk mengoperasikannya. Contohnya mouse, hanya di tancapkan dan dijalankan. Berikut ini adalah macam-macam port yang ada di komputer dan perkembangannya sampai saat ini:<br />
<br />
1. Paralell Port. Port ini merupakan yang populer, seperti namanya. Cara kerjanya secara paralel. Banyak digunakan untuk menghubungkan komputer dengan printer, modem dan scaner. Bila dilihat dari aplikasi komputer, dikenal dengan nama LPT1.<br />
<br />
2. Serial Port. Ada dua serial port yang biasanya terdapat di komputer. Yakni diberi nama dengan COM1 dan COM2. Biasanya digunakan untuk menghubungkan komputer dengan mouse.<br />
<br />
3. PS2. Merupakan perkembangan dari port serial. Bentuknya berupa bulatan dengan desain sedemikian rupa sehingga tidak mungkin terbalik atau salah. Komputer dengan processor pentium MMX ke atas biasanya terdapat 2 port PS2, yaitu untuk mouse dan keyboard.<br />
<br />
4. USB. Port ini selain praktis penggunaannya juga memiliki kecepatan tinggi. Banyak peralatan-peralatan yang terhitung baru dan canggih direkomendasikan dapat dihubungkan dengan komputer melalui port ini. Seperti kamera digital, handycam, media penyimpanan flash disk dan lain sebagainya. Printer-printer juga sudah banyak yang menyediakan port ini. Bahkan mouse dan keyboard juga tersedia dalam versi USB. Terakhir port ini memiliki dua versi, yaitu USB 1.1 dan USB 2.0.<br />
<br />
5. VGA<br />
<br />
6. SOUNDCARD ,dll<br />
<br />
<br />
Port itu dapat dilihat pada bagian belakang komputer. Tren saat ini komputer memiliki istilah on board, yaitu seluruh port-port nya menjadi satu di mother board (papan utama). Sehingga bila dilihat bagian komputer akan terlihat port-port tersebut berkumpul menjadi satu tempat. Perkembangan terbaru, komputer-komputer dengan porcessor pentium 4 dan yang sederajat, sudah meniadakan port-port yang dianggap kuno, yaitu port serial dan parallel.<br />
<br />
<br />
MACAM-MACAM MEMORY<br />
<br />
Kata "memory" digunakan untuk mendiskripsikan suatu sirkuit elektronik yang mampu untuk menampung data dan juga instruksi program. Memory dapat dibayangkan sebagai suatu ruang kerja bagi komputer dan memory juga menentukan terhadap ukuran dan jumlah program yang bisa dijalankan dalam waktu yang sama, sekaligus juga jumlah data yang bisa diproses.<br />
<br />
Fungsi memory adalah untuk menyimpan data dan program.<br />
<br />
Berdasarkan kecepatannya memory ada 4 macam yaitu:<br />
<br />
1. Register<br />
<br />
2. Cache Memory<br />
<br />
3. Main Memory<br />
<br />
4. Sekunder Memory<br />
<br />
Selain menyatakan hubungan kecepatan , hirarki tersebut juga menyatakan hubungan-hubungan lain , yaitu:<br />
<br />
• Hubungan harga : semakin kebawah semakin murah (harga dihitung berdasarkan rupiah per bit data tersimpan ).<br />
<br />
• Hubungan kapasitas : semakin keatas umumnya kapasitasnya semakin terbatas.<br />
<br />
• Hubungan frekuensi pengaksesan : semakin keatas semakin tinggi frekuensi pengaksesan.<br />
<br />
Sertiap kali pemroses melakukan eksekusi , pemroses harus membaca instruksi dari memory utama. Agar intruksi dapat dilakukan secara cepat maka harus diusahakan instruksi tersedia di memory pada hirarki berkecepatan akses lebih tinggi.Kecepatan ekseekusi ini akan meningkatkan kinerja system. Untuk itu terdapat konsep memory dua level yaitu ditampung dulu sementara di memory pada hirarki lebih tinggi.<br />
<br />
1. Register Memory<br />
<br />
Merupakan jenis memory dimana kecepatan acces yang paling cepat, memory ini terdapat pada Cpu/processor.<br />
<br />
Contoh :<br />
<br />
Register data, register alamat , stack pointer register, Memory Address Register, I/O Address Register, dll.<br />
<br />
2. Cache Memory<br />
<br />
Memory berkapasitas terbatas,berkecepatan tinggi yang lebih mahal dari pada memory utama.Cache memory ini ada diantara memory utama dan register pemroses, berfungsi agar pemroses tidak langsung mengacu pada memory utama agar kinerja dapat ditingkatkan.<br />
<br />
Cache memory ini ada 2 macam yaitu :<br />
<br />
1. Cache memory yang terdapat pada internal Processor, cache memory jenis ini kecepatan accesnya sangat tinggi ,dan harganya sangat mahal.Hal ini bias terlihat pada processor yang berharga mahal seperti P4,P3,AMD-ATHLON dllsemakin tinggi kapasitas L1,L2 Cache memory maka semakin mahal dan semakin cepat processor.<br />
<br />
2. Chace memory yang terdapat diluar processor , yaitu berada pada Mother board , memory jenis ini kecepatan aksesnya sangat tinggi meskipun tidak secepat cache memory jenis pertama (yang ada pada internal prosesor). Semakin besar kapasitasnya maka semakin mahal dan cepat.hal ini dapat kita lihat pada motherboard dengan beraneka ragam kapasitas chace memory yaitu 256 kb,512 kb,1 Mb, 2 Mb dll.<br />
<br />
3. Memori Utama<br />
<br />
Memori ini berfungsi untuk menyimpan data dan program.Jenis memori utama yaitu:<br />
<br />
A. Random Access Memory (RAM)<br />
<br />
Ketika orang berpikir mengenai memory komputer, maka seringkali random access memory (RAM) lah yang mereka maksudkan. RAM terdiri dari sekumpulan chip. Chip-chip ini mampu untuk menampung:<br />
<br />
• Data untuk diproses;<br />
<br />
• Instruksi atau program, untuk memproses data;<br />
<br />
• Data yang telah diproses dan menunggu untuk dikirim ke output device, secondary storage atau juga communication device;<br />
<br />
• Instruksi sistem operasi yang mengontrol fungsi-fungsi dasar dari sistem komputer<br />
<br />
Semua data dan instruksi tadi ditampung di dalam RAM secara temporer. Isi dari RAM bisa berubah-ubah sesuai dengan data yang diproses di dalamnya, atau juga program yang menggunakannya. RAM merupakan sumber daya komputer yang sifatnya reusable atau bisa digunakan kembali.<br />
<br />
Kebanyakan dari RAM disebut sebagai barang yang volatile. Artinya adalah jika daya listrik dicabut dari komputer dan komputer tersebu mati, maka semua konten yang ada di dalam RAM akan segera hilang secara permanen. Karena RAM bersifat temporer dan volatile, maka orang menciptakan suatu media penyimpanan lain yang sifatnya permanen. Ini biasanya disebut sebagai secondary storage. Secondary storage bersifat tahan lama dan juga tidak volatile, ini berarti semua data atau program yang tersimpan di dalamnya bisa tetap ada walaupun daya atau listrik dimatikan. Beberapa contoh dari secondary storage ini misalnya adalah magnetic tape, hardisk, magnetic disk dan juga optical disk.<br />
<br />
Ada beberapa jenis RAM yang ada dipasaran saat ini yaitu SRAM , EDORAM , SDRAM , DDRAM, RDRAM , VGRAM dll.<br />
<br />
Kapasitas penyimpanan dari RAM sangat beragam dalam berbagai komputer. Kapasitas merupakan faktor yang penting, karena dia menentukan seberapa banyak data yang bisa diproses dalam waktu yang sama dan seberapa besar dan kompleks progam yang bisa menempatinya. Sistem operasi di dalam komputer bertugas untuk mengatur penggunaan RAM sehingga program bisa berjalan dengan baik. Untuk mengerti kapasitas dari RAM, maka beberapa terminologi berikut ini sering digunakan.<br />
<br />
<br />
Bit, yaitu suatu sistem penomoran biner yang mewakili unit terkecil dari data dalam suatu sistem komputer. Suatu bit hanya terdiri dari dua buah angka yaitu 1 dan 0. Di dalam komputer, sebuah 0 berarti suatu sinyal elektronik atau magnetis adalah tiada atau absen, sementara 1 berarti sebaliknya.<br />
<br />
Byte, yaitu suatu grup dari delapan bit. Sebuah byte mewakili satu karakter, satu digit atau satu nilai. Kapasitas dari memory komputer, atau RAM, dinyatakan di dalam bytes atau sekumpulan dari bytes.<br />
<br />
Data, instruksi dan program yang disimpan di dalam RAM sebenarnya disimpan dalam bentuk kumpulan bits yang merepresentasikan data, instruksi dan program tadi. Bit-bit ini disimpan ke dalam suatu bagian elektronik yang mikroskopis yang disebut dengan kapasitor.<br />
<br />
<br />
B. Read Only Memory<br />
<br />
Read Only Memory (ROM) adalah suatu himpunan dari chip yang berisi bagian dari sistem operasi yang mana dibutuhkan pada saat komputer dinyalakan. ROM juga dikenal sebagai suatu firmware. ROM tidak bisa ditulisi atau diubah isinya oleh pengguna. ROM tergolong dalam media penyimpanan yang sifatnya non volatile. Chip ROM datang dari pabriknya dengan program atau instruksi yang sudah disimpan di dalamnya. Satu-satunya cara untuk mengganti kontennya adalah dengan mencopotnya dari komputer dan menggantinya dengan ROM yang lain. Chip ROM dapat berisi program yang sering digunakan, seperti rutin-rutin komputasi untuk menghitung akar suatu bilangan dan lain sebagainya.<br />
<br />
Penggunaan dari ROM ini contohnya adalah sebagai media penyimpanan dari BIOS (Basic Input-Output System) yang diuat oleh pabriknya. BIOS merupakan bagian yang sangat kritis dari suatu sistem operasi, yang mana fungsinya memberi tahu komputer bagaimana caranya mengakses disk drive. Ketika komputer dinyalakan, RAM masih kosong dan instruksi yang ada pada ROM BIOS lah yang digunakan oleh CPU untuk mencari disk drive yang berisi file-file utama dalam sistem operasi. Komputer lalu memindahkan file-file tersebut ke dalam RAM dan kemudian menjalankannya.<br />
<br />
Ada 4macam variasi dari ROM, yaitu:<br />
<br />
• PROM, atau programmable read only memory. Yaitu rom yang bisa kita program kembali dengan catatan hanya boleh satu kali perubahan setelah itu tidak dapat lagi deprogram.Chip PROM adalah suatu chip yang kosong yang mana program dapat dituliskan ke dalamnya dengan menggunakan suatu peralatan khusus. Chip PROM dapat diprogram sekali dan biasanya digunakan oleh pabrik sebagai control device di dalam produk-produknya.<br />
<br />
• RPROM,atau Re progamable ROM.Merupakan perkembangan dari versi PROM dimana kita dapat melakukan perubahan berulang kali sesuai dengan yang diinginkan.<br />
<br />
• EPROM, atau erasable programmable read only memory. EPROM mirip dengan PROM, tetapi program dapat dihapus dan program yang baru bisa dituliskan ke dalamnya dengan menggunakan suatu peralatan khusus yang menggunakan sinar ultraviolet. EPROM digunakan untuk controlling device, seperti robot dan sebagainya.<br />
<br />
• EEPROM, atau electronic erasable programmable read only memory. Chip EEPROM dapat diprogram ulang dengan menggunakan suatu electric impulses yang khusus. Mereka tidak perlu dicabut atau diubah.<br />
<br />
<br />
4. Memori Sekunder<br />
<br />
Memori sekunder merupakan memori tambahan yang berfungsi untuk menyimpan data atau program .contohnya : hardisk,floppy disk,disket, flashdish,dll.<br />
<br />
Pengertian Motherboard<br />
Dalam komponen PC, motherboard juga sering disebut sebagai mainboard. Juga ada beberapa istilah lain untuk menyebutnya, seperti mobo atau singkatan MB. Tugasnya pada PC adalah sebagai komponen circuit board utama yang menghubungkan banyak komponen lain. Mulai dari CPU/processor, RAM, video card, harddisk, dan seterusnya.<br />
<br />
Pada motherboard terdapat BIOS (Basic Input/Output System), yang akan di-loading kali pertama sistem menyala. BIOS mendefinisikan komponen yang terhubung dengan motherboard.<br />
<br />
Motherboard adalah komponen paling utama pada komputer. Kualitas motherboard sangat berpengaruh pada kemampuan dukungan terhadap jenis dan kapasitas komponen lainnya serta batas kemampuan upgrade.<br />
<br />
Spesifikasi yang harus diperhatikan pada motherboard adalah:<br />
<br />
Jenis Slot/ Socket Prosessor,<br />
Jenis konektor prosessor (slot/socket) menentukan jenis prosessor yang dapat digunakan dan batasan upgrade dari prosessor. Contoh Socket 478 dapat dipakai untuk semua prosessor kelas Pentium 4 dan Celeron 4 dengan FSB 400, 533 dan 800 Mhz.<br />
<br />
Chipset motherboard<br />
Pilih motherboard dengan chipset terbaru yang mendukung memori SDRAM DIMM atau RDRAM RIMM, AGP slot 4X minimal dan harddisk ATA 100 minimal.<br />
<br />
<br />
Jenis Dan Kapasitas Slot Memory<br />
Slot jenis DDR DIMM atau RIMM adalah pilihan yang terbaik karena mendukung kapasitas memori lebih besar. Untuk kecepatan, memori terbaik adalah DDR SDRAM atau RDRAM, tetapi RDRAM lebih mahal.<br />
<br />
Slot Ekspansi<br />
Perhatikan jenis dan jumlah slot ekspansi yang tersedia, seperti PCI bus minimal tipe 2.1, AGP bus 4 X support (minimum) dan ISA bus. Sesuaikan slot ekspansi dengan card adapter yang akan dipasang. Sebaiknya masih tersisa slot kosong untuk memasang card adapter yang mungkin diperlukan.<br />
<br />
Port I/O<br />
Periksa jenis dan jumlah port I/O yang tersedia seperti USB, firewire, serial dan parallel port. Sesuaikan dengan kebutuhan piranti eksternal.<br />
<br />
Feature<br />
Motherboard berkualitas baik akan dilengkapi dengan fitur Power Management ACPI untuk efisiensi penggunaan daya listrik dan PnP System (Plug and Play) yakni instalasi otomatis piranti eksternal.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Apa saja yang membuat perbedaan antara motherboard yang satu dengan yang lain. Sebelum membuat pilihan untuk sebuah motherboard, ada beberapa hal yang perlu diketahui.<br />
Berikut adalah beberapa poin penting yang perlu diperhatikan dari sebuah motherboard:<br />
<br />
CPU Socket<br />
Pertama adalah menentukan CPU yang akan digunakan. Ini akan sangat mempengaruhi pilihan motherboard yang akan digunakan. Baik AMD maupun Intel menggunakan susunan pin yang berbeda bada processornya. Pada motherboard, istilah ini biasanya dikenal dengan sebutan AMD platform ataupun Intel platform. Kedua platform<br />
<br />
tersebut utamanya akan membedakan socket processor yang digunakan. Untuk sekarang, AMD menggunakan socket 754, 939 dan AM2 untuk processor desktop-nya. Sedangkan, Intel menggunakan LGA775.<br />
<br />
Chipset<br />
Chipset juga merupakan bagian penting yang perlu diperhatikan dari sebuah motherboard. Dari chipset akan sangat menentukan dukungan fi tur dan fasilitas yang dapat dimungkinkan oleh motherboard. Sebab pada chipset akan menentukan dukungan seperti penggunaan tipe processor, modul RAM yang digunakan, ketersediaan dukungan integrated graphic controller, bus link untuk graphic card, dan seterusnya.<br />
<br />
Pada sebagian motherboard juga menggunakan skenario klasik, dengan menggunakan dua buah chipset, northbridge dan southbrige. Jika northbridge lebih menentukan dukungan untuk CPU, RAM dan bus. Termasuk dukungan untuk digunakannya dual VGA, baik dengan CrossFire maupun SLI. Begitu pentingnya peran chipset, sehingga kami anggap pilihan chipset adalah pilihan terpenting kedua setelah memilih platform processor yang akan digunakan. Karena chipset adalah bagian yang terintegrasi dengan motherboard, maka tidak mungkin melakukan upgrade chipset tanpa mengganti motherboard secara keseluruhan.<br />
<br />
Southbridge melayani kebutuhan I/O seperti untuk storage, USB, dan seterusnya. Beberapa dilengkapi dengan controller tambahan untuk dukungan pengguanaan RAID, firewire, dan lain-lain. Produsen chipset memiliki pendekatan yang berbeda untuk hal ini.<br />
<br />
Form Factor<br />
Ukuran sebuah motherboard juga berbedabeda. Untungnya, untuk hal ini produsen motherboard mengikuti aturan form factor. Sehingga meskipun ukurannya mungkin saja berbeda, namun ada standar yang harus diikuti. Seperti letak mounting hole, lokasi ketersediaan slot dan konektor. Form factor yang paling banyak digunakan pada desktop PC adalah ATX. Namun masih ada beberapa ukuran form factor lain yang juga tersedia.<br />
<br />
<br />
PERKEMBANGAN PROCESSOR<br />
<br />
.PC didesain berdasar generasi-generasi CPU yang berbeda. Intel bukan satu-satunya perusahaan yang membuat CPU, meskipun yang menjadi pelopor diantara yang lain. Pada tiap generasi yang mendominasi adalah chip-chip Intel, tetapi pada generasi kelima terdapat beberapa pilihan selain chip Intel.<br />
<br />
GENERASI 1<br />
<br />
Processor 8088 dan 8086<br />
Processor 8086 (1978) merupakan CPU 16 bit pertama Intel yang menggunakan bus sistem 16 bit. Tetapi perangkat keras 16 bit seperti motherboard saat itu terlalu mahal, dimana komputer mikro 8 bit merupakan standart. Pada 1979 Intel merancang ulang CPU sehingga sesuai dengan perangkat keras 8 bit yang ada. PC pertama (1981) mempunyai CPU 8088 ini. 8088 merupakan CPU 16 bit, tetapi hanya secara internal. Lebar bus data eksternal hanya 8 bit yang memberi kompatibelan dengan perangkat keras yang ada. Sesungguhnya 8088 merupakan CPU 16/8 bit. Secara logika prosesor ini dapat diberi nama 8086SX. 8086 merupakan CPU pertama yang benar-benar 16 bit di keluarga ini.<br />
<br />
GENERASI 2<br />
<br />
Processor 80286<br />
286 (1982) juga merupakan prosessor 16 bit. Prosessor ini mempunyai kemajuan yang relatif besar dibanding chip-chip generasi pertama. Frekuensi clock ditingkatkan, tetapi perbaikan yang utama ialah optimasi penanganan perintah. 286 menghasilkan kerja lebih banyak tiap tik clock daripada 8088/8086. Pada kecepatan awal (6 MHz) berunjuk kerja empat kali lebih baik dari 8086 pada 4.77 MHz. Belakangan diperkenalkan dengan kecepatan clock 8,10,dan 12 MHz yang digunakan pada IBM PC-AT (1984). Pembaharuan yang lain ialah kemampuan untuk bekerja pada protected mode/mode perlindungan – mode kerja baru dengan “24 bit virtual address mode†/mode pengalamatan virtual 24 bit, yang menegaskan arah perpindahan dari DOS ke Windows dan multitasking. Tetapi anda tidak dapat berganti dari protected kembali ke real mode / mode riil tanpa mere-boot PC, dan sistem operasi yang menggunakan hal ini hanyalah OS/2 saat itu.<br />
<br />
GENERASI 3<br />
<br />
Processor 80386 DX<br />
386 diluncurkan 17 Oktober 1985. 80386 merupakan CPU 32 bit pertama. Dari titik pandang PC DOS tradisional, bukan sebuah revolusi. 286 yang bagus bekerja secepat 386SX pertama-walaupun menerapkan mode 32 bit. Prosessor ini dapat mengalamati memori hingga 4 GB dan mempunyai cara pengalamatan yang lebih baik daripada 286. 386 bekerja pada kecepatan clock 16,20, dan 33 MHz. Belakangan Cyrix dan AMD membuat clones/tiruan-tiruan yang bekerja pada 40 MHz. 386 mengenalkan mode kerja baru disamping mode real dan protected pada 286. Mode baru itu disebut virtual 8086 yang terbuka untuk multitasking karena CPU dapat membuat beberapa 8086 virtual di tiap lokasi memorinya sendiri-sendiri. 80386 merupakan CPU pertama berunjuk kerja baik dengan Windows versi- versi awal..<br />
<br />
Processor 80386SX<br />
Chip ini merupakan chip yang tidak lengkap yang sangat terkenal dari 386DX. Prosessor ini hanya mempunyai bus data eksternal 16 bit berbeda dengan DX yang 32 bit. Juga, SX hanya mempunyai jalur alamat 24. Oleh karena itu, prosessor ini hanya dapat mengalamati maksimum RAM 16 MB. Prosessor ini bukan 386 yang sesungguhnya, tetapi motherboard yang lebih murah membuatnya sangat terkenal.<br />
<br />
GENERASI 4<br />
<br />
Processor 80486 DX<br />
80486 DX dikeluarkan 10 April 1989 dan bekerja dua kali lebih cepat dari pendahulunya. Hal ini dapat terjadi karena penanganan perintah-perintah x86 yang lebih cepat, lebih lebih pada mode RISC. Pada saat yang sama kecepatan bus dinaikkan, tetapi 386DX dan 486DX merupakan chip 32 bit. Sesuatu yang baru dalam 486 ialah menjadikan satu math coprocessor/prosesor pembantu matematis. Sebelumnya, math co-processor yang harus dipasang merupakan chip 387 yang terpisah, 486 juga mempunyai cache L1 8 KB.<br />
<br />
Processor 80486 SX<br />
Prosessor ini merupakan chip baru yang tidak lengkap. Math co-processor dihilangkan dibandingkan 486DX.<br />
<br />
Processor Cyrix 486SLC<br />
Cyrix dan Texas Instruments telah membuat serngkaian chip 486SLC. Chip-chip tersebut menggunakan kumpulan perintah yang sama seperti 486DX, dan bekerja secara internal 32 bit seperti DX. Tetapi secara eksternal bekerja hanya pada 16 bit (seperti 386SX). Oleh karena itu, chip-chip tersebut hanya menangani RAM 16 MB. Lagipula, hanya mempunyai cache internal 1 KB dan tidak ada mathematical co-processor. Sesungguhnya chip-chip tersebut hanya merupakan perbaikan 286/386SX. Chip-chip tersebut bukan merupakan chip-chip clone. Chip-chip tersebut mempunyai perbedaan yang mendasar dalam arsitekturnya jika dibandingkan dengan chip Intel.<br />
<br />
Processor IBM 486SLC2<br />
IBM mempunyai chip 486 buatan sendiri. Serangkaian chip tersebut diberi nama SLC2 dan SLC3. Yang terakhir dikenal sebagai Blue Lightning. Chip-chip ini dapat dibandingkan dengan 486SX Intel, karena tidak mempunyai mathematical coprocessor yang menjadi satu. Tetapi mempunyai cache internal 16 KB (bandingkan<br />
<br />
dengan Intel yang mempunyai 8 KB). Yang mengurangi unjuk kerjanya ialah antarmuka bus dari chip 386. SLC2 bekerja pada 25/50 MHz secara eksternal dan internal, sedangkan chip SLC3 bekerja pada 25/75 dan 33/100 MHz. IBM membuat chip-chip ini untuk PC mereka sendiri dengan fasilitas mereka sendiri, melesensi logiknya dari Intel.<br />
<br />
Perkembangan 486 Selanjutnya<br />
DX4; Prosessor-prosessor DX4 Intel mewakili sebuah peningkatan 80486. Kecepatannya tiga kali lipat dari 25 ke 75 MHz dan dari 33 ke 100 MHz. Chip DX4 lainnya dipercepat hingga dari 25 ke 83 MHz. DX4 mempunyai cache internal 16 KB dan bekerja pada 3.3 volt. DX dan DX2 hanya mempunyai cache 8 KB dan memerlukan 5 volt dengan masalah panas bawaan.<br />
<br />
<br />
GENERASI 5<br />
<br />
Pentium Classic (P54C)<br />
Chip ini dikembangkan oleh Intel dan dikeluarkan pada 22 Maret 1993. Prosessor Pentium merupakan super scalar, yang berarti prosessor ini dapat menjalankan lebih dari satu perintah tiap tik clock. Prosessor ini menangani dua perintah tiap tik, sebanding dengan dua buah 486 dalam satu chip. Terdapat perubahan yang besar dalam bus sistem : lebarnya lipat dua menjadi 64 bit dan kecepatannya meningkat menjadi 60 atau 66 MHz. Sejak itu, Intel memproduksi dua macam Pentium yang bekerja pada sistem bus 60 MHz (P90, P120, P150, dan P180) dan sisanya, bekerja pada 66 MHz(P100, P133,P166, dan P200).<br />
<br />
Cyrix 6x86<br />
Chip dari perusahaan Cyrix yang diperkenalkan 5 Februari 1996 ini merupakan tiruan Pentium yang murah. Chip ini kompatibel dengan Pentium, karena cocok dengan Socket 7. Cyrix memasarkan CPU-CPUnya dengan membandingkan pada frekuensi clock Intel. Cyrix 6x86 dikenal dengan unjuk kerja yang buruk pada floating pointnya. Cyrix mempunyai masalah saat menjalankan NT 4.0.<br />
<br />
AMD (Advanced Micro Devices)<br />
Pentium-pentium AMD seperti chip-chip yang ditawarka oleh Intel bersaing dengan ketat. AMD menggunakan teknologi- teknologi mereka sendiri. Oleh karena itu, prosesornya bukan merupakan clone-clone. AMD mempunyai seri sebagai berikut :<br />
<br />
• • K5, dapat disamakan dengan Pentium-pentium Classic (dengan cache L1 16 KB dan tanpa MMX).<br />
<br />
• • K6, K6-2, dan K6-3 bersaing dengan Pentium MMX dan Pentium II.<br />
<br />
• • K7 Athlon, Agustus 1999, tidak kompatibel dengan Socket 7.<br />
<br />
• AMD K5<br />
K5 merupakan tiruan Pentium. K5 lama sebagai contoh dijual sebagai PR133 (Perform Rating). Maksudnya, bahwa chip tersebut akan berunjuk kerja seperti sebuah Pentium P133. Tetapi, hanya berjalan 100 MHz secara internal. Chip tersebut masih harus dipasang pada motherboard seperti sebuah P133. K5 AMD juga ada yang PR166. Chip ini dimaksudkan untuk bersaing dengan P166 Intel. Bekerja hanya pada 116.6 MHz (1.75 x 66 MHz) secara internal. Hal ini dikarenakan cache yang dioptimasi dan perkembangan-perkembangan baru lainnya. Hanya ada fitur yang tidak sesuai dengan P166 yaitu dalam kerja floating-point. PR133 dan PR166 berharga jauh lebih murah dari jenis Pentium yang sebanding, dan prosessor ini sangat terkenal pada mesin-mesin dengan harga yang murah.<br />
<br />
Pentium MMX (P55C)<br />
Pentium-pentium P55C diperkenalkan 8 Januari 1997. MMX merupakan kkumpulan perintah baru ( 57 integer baru, 4 jenis data baru dan 8 register 64 bit),yang menambah kemampuan CPU tersebut. Perintah-perintah MMX dirancang untuk program-program multimedia. Pemrogram dapat menggunakan perintahperintah ini dalam program-programnya. Hal ini akan memberikan perbaikan dalam menjalankan program’<br />
<br />
IDT Winchip<br />
IDT merupakan perusahaan yang lebih kecil yang menghasilkan CPU seperti Pentium MMX dengan harga murah. WinChip C6 pertama IDT diperkenalkan pada Mei 1997.<br />
<br />
AMD K6<br />
K6 AMD diluncurkan 2 April 1997. Chip ini berunjuk kerja sedikit lebih baik dari Pentium MMX. Oleh karena itu termasuk dalam keluarga P6.Dilengkapi dengan 32+32 KB cache L1 dan MMX. Berisi 8.8 juta transistor.<br />
K6 seperti halnya K5 kompatibel dengan Pentium. Maka, dapat diletakkan di Socket 7, pada motherboard Pentium umumnya, dan ini segera membuat K6 menjadi sangat terkenal.<br />
<br />
Cyrix 6x86MX (MII)<br />
Cyrix juga mempunyai chip dengan unjuk kerja tinggi, berada diantara generasi ke- 5 dan ke-6. Jenis pertama didudukkan melawan chip Pentium MMX dari Intel. Jenis berikutnya dapat dibandingkan dengan K6. Prosessor kelompok P6 yang powerful dari Cyrix diumumkan sebagai “M2†. Diperkenalkan pada 30 Mei 1997 namanya menjadi 6x86MX. Kemudian diberi nama MII. Chip 6x86MX ini kompatibel dengan Pnetium MMX dan dipasangkan pada motherboard Socket 7 biasa, 6x86MX mempunyai 64 KB cache L1 internal. Cyrix juga memanfaatkan teknologi yang tidak ditemukan di dalam Pentium MMX. 6X86MX secara khusus dibandingkan dengan CPU generasi ke-6 lainnya (Pentium II dan Pro dan K6) karena tidak bekerja berdasar kernel RISC. 6X86MX menjalankan perintah CISC asli seperti Pentium MMX. 6X86MX mempunyai – seperti semua prosessor dary Cyrix – masalah yang berhubungan dengan unit FPU. Tetapi, jika hanya digunakan untuk aplikasi standart, hal ini bukan masalah. Masalah akan muncul jika memainkan game 3D. 6x86MX chip yang cukup powerful. Tetapi chip-chip ini tidak punya FPU dan MMX yang berunjuk kerja baik. Chip-chip ini tidak memasukkan teknologi 3DNow.<br />
<br />
Kecepatan Internal dan Eksternal 6x86MX :<br />
• PR166 150 MHz 60 MHz<br />
• PR200 166 MHz 66 MHz<br />
• PR233 188 MHz 75 MHz<br />
• PR266 225 MHz 75 MHz<br />
• PR300 233 MHz 66 MHz<br />
• PR333 255 MHz 83 MHz<br />
• PR433 285 MHz 95 MHz<br />
• PR466 333 MHz 95 MHz<br />
<br />
<br />
Dua jenis 6X86MX dan MII, pada 14 April 1998 versi Cyrix MII diluncurkan. Chip ini sebenarnya chip yang sama dengan 6x86MX hanya bekerja pada frekuensi clock yang lebih tinggi. Selanjutnya tegangannya dikurangi hingga 2.2 volt.<br />
<br />
AMD K6-2<br />
Versi “model 8†berikutnya K6 mempunyai nama sandi “Chomper†. Prosessor ini pada 28 Mei 1998 dipasarkan sebagai K6-2, dan seperti versi model 7 K6 yang asli, dibuat dengan teknologi 0.25 mikron. Chip-chip ini bekerja hanya dengan 2.2 voltage. Chip ini berhasil menjadi saingan Pentium II Intel. K6-2 dibuat untuk bus front side (bus sistem) pada kecepatan 100 MHz dan motherboard Super 7. AMD membuat perusahaan lain seperti Via dan Alladin, membuat chip set baru untuk motherboard Socket 7 tradisional, setelah Intel tahu 1997 menghentikan platform tersebut. K6-2 juga diperbaiki dengan unjuk kerja MMX yang dua kali lebih baik dibandingkan dengan K6 yang awal. K6-2 mempunyai plug-in 3D baru (disebut 3DNow!) untuk unjuk kerja game yang lebih baik. Terdiri dari 21 perintah baru yang dapat digunakan oleh pengembang perangkat lunak untuk memberikan unjuk kerja 3D yang lebih baik. Dukungan termasuk dalam DirectX 6.0 untuk Windows. DirectX merupakan multimedia API, untuk Windows. DirectX merupakan beberapa program yang dapat meningkatkan unjuk kerja multimedia di dalam semua program Windows.<br />
<br />
Multimedia 3DNow! tidak kompatibel dengan MMX, tetapi K6-2 mempunyai MMX sebaik 3DNow!. Cyrix dan IDT juga meluncurkan CPU dengan 3DNow!. K6-2 memberi unjuk kerja sangat, sangat bagus. Anda dapat membandingkan prosessor ini dengan Pentium II. K6-2 350 MHz berunjuk kerja sangat mirip dengan Pentium II-350, tetapi dijual dengan lebih murah. Dan dapat menghemat lebih banyak sebab motherboard yang lebih murah.<br />
<br />
• K6-2 Dengan Bus dan Clock-nya<br />
• K6-2 Bus Clock<br />
• 266 MHz 66 MHz 4.0 x 66 MHz<br />
• 266 MHz 88 MHz 3.0 x 88 MHz<br />
• 300 MHz 100 MHz 3.0 x 100 MHz<br />
• 333 MHz 95 MHz 3.5 x 95 MHz<br />
• 350 MHz 100 MHz 3.5 x 100 MHz<br />
• 380 MHz 95 MHz 4.0 x 95 MHz<br />
• 400 MHz 100 MHz 4.0 x 100 MHz<br />
<br />
<br />
GENERASI 6<br />
<br />
Pentium Pro<br />
Pengembangan Pentium Pro dimulai 1991, di Oregon. Diperkenalkan pada 1 November, 1995. Pentium Pro merupakan prosessor RISC murni, dioptimasi untuk pemrosesan 32 bit pada Windows NT atau OS/2. Fitur yang baru ialah bahwa cache L2 yang menjadi satu Chip raksasa, dengan chip empat persegi panjang dan Socket-8nya. Unit CPU dan cache L2 merupakan unit yang terpisah di dalam chip ini.<br />
<br />
Pentium II<br />
Pentium Pro “Klamath†merupakan nama sandi prosessor puncak Intel. Prosessor ini mengakhiri seri Pentium Pro yang sebagian terdapat pengurangan dan sebagaian terdapat perbaikan.<br />
<br />
Diperkenalkan 7 Mei 1997, Pentium II mempunyai fitur- fitur :<br />
<br />
• CPU diletakkan bersama dengan 512 KB L2 di dalam sebuah modul SECC (Single Edge Contact Cartridge)<br />
<br />
• Terhubung dengan motherboard menggunakan penghubung/konektor slot one dan bus P6 GTL+.<br />
<br />
• Perintah-perintah MMX.<br />
<br />
• Perbaikan menjalankan program 16 bit (menyenangkan bagi penggunaWindows 3.11)<br />
<br />
• Penggandaan dan perbaikan cache L1 (16 KB + 16 KB).<br />
<br />
• Kecepatan internal meningkat dari 233 MHz ke 300 MHz (versi berikutnya<br />
<br />
• lebih tinggi).<br />
<br />
• Cache L2 bekerja pada setengah kecepatan CPU.<br />
<br />
Dengan rancangan yang baru, cache L2 mempunyai bus sendiri. Cache L2 bekerja pada setengah kecepatan CPU, seperti 133 MHz atau 150 MHz. Jelas merupakan sebuah kemunduran dari Pentium Pro, yang dapat bekerja pada 200 MHz antara CPU dan cache L2. Hal ini dijawab dengan cache L1. Dibawah ini terlihat perbandingan tersebut : Pentium II telah tersedia dalam 233, 266, 300, 333,350, 400, 450, dan 500 MHz (kecepatan yang lebih tinggi segera muncul). Dengan chip set 8244BX dan i810<br />
<br />
Pentium II mempunyai unjuk kerja yang baik sekali. Pentium II berbentuk kotak plastik persegi empat besar, yang berisi CPU dan cache. Juga terdapat kontroler kecil (S824459AB) dan kipas pendingin dengan ukuran yang besar.<br />
<br />
<br />
Perbedaan CPU dengan Cache<br />
<br />
Awal 1998 Intel mempunyai masa yang sulit dengan Pentium Pro II yang agak mahal. Banyak pengguna membeli AMD K6-233M, yang menawarkan unjuk kerja sangat baik pada harga yang layak. Maka Intel membuat merek CPU baru yang disebut Celeron. Prosesor ini sama dengan Pnetium II kecuali cache L2 yang telah dilepas. Prosessor ini dapat disebut Pentium II-SX. Pada 1998 Intel mengganti Pentium MMX-nya dengan Celeron pertama. Kemudian rancangannya diperbaiki. Cartridge Celeron sesuai dengan Slot 1 dan bekerja pda sistem bus 66 MHz. Clock internal bekerja pada 266 atau 300 MHz.<br />
<br />
Pentium-II Celeron A : Mendocino<br />
Bagian yang menarik dari cartridge baru dengan 128 KB cache L2 di dalam CPU. Hal ini memberikan unjuk kerja yang sangat baik, karena cache L2 bekerja pada kecepatan CPU penuh. Celeron 300A merupakan sebuah chip dalam kartu<br />
<br />
:<br />
<br />
Pentium-II Celeron PPGA : Socket 370<br />
Socket 370 baru untuk Celeron. Prosessor 400 dan 366 MHz (1999) tersedia dalam plastic pin grid array (PPGA). Socket PGA370 terlihat seperti Socket 7 tradisional.yang mempunyai 370 pin.<br />
<br />
<br />
Pentium-II Xeon<br />
Pada 26 Juali 1998 Intel mengenalkan cartridge Pentium II baru yang diberi nama Xeon. Ditujukan untuk server dan pemakai high-end. Xeon merupakan Pentium II degnan cartridge baru yang sesuai konektor baru yang disebut Slot two. Modul ini dua kali lebih tinggi dari Pentium II, tetapi ada perubahan dan perbaikan penting lain :<br />
<br />
• Chip RAM cache L2 jenis baru: CSRAM (Custom SRAM), yang bekerja pada kecepatan CPU penuh.<br />
<br />
• Ukuran cache L2 yang berbeda : 512, 1024, atau 2048 KB RAM L2.<br />
<br />
• Memori RAM hingga 8 GB dapat di-cache.<br />
<br />
• Hingga empat atau delapan Xeon dalam satu server.<br />
<br />
• Mendukung server yang dicluster.<br />
<br />
• Chip set baru 82440GX dan 82450NX.<br />
<br />
Chip Xeon bekerja pada kecepatan clock CPU penuh. Dapat diperkirakan, bahwa akan mempunyai unjuk kerja yang sama seperti cache L1. Tetapi antarmuka dari L1 ke L2 bernilai beberapa tik clock pada awal tiap perpindahan, sehingga ada beberapa kelambatan. Tetapi jika data sudah dipindahkan, bekerja pada kecepatan clock penuh.<br />
<br />
AMD K6-3<br />
AMD K6-3 merupakan model 9 dengan nama sandi Sharptooth , yang mungkin memiliki cache tiga tingkat :<br />
<br />
• Sedikit perbaikan dibandingkan unit K6-2<br />
• Cache L2 sebesar 258 KB satu chip<br />
• Rancangan cache tiga tingkat<br />
• Bus front side 133 MHz baru.<br />
• Kecepatan clock 400 MHz dengan 450 MHz.<br />
<br />
Kedua cache 64 KB L1 dan 256 KB L2 disatukan dengan chipnya. Cache pada die L2 ini bekerja pada kecepatan prosesor penuh seperti yang dilakukan pada Pentium Pro, dan seperti yang dilakukan pada Celeron A dan pada prosessor Xeon dari Intel. Hal ini secara pasti akan banyak meningkatkan kecepatan K6 ! Karena K6-3 digunakan pada motherboard Super 7 dan ruang untuk cache tingkat berikutnya cache L3. Perancangan cache tiga tingkat dibuat untuk menggunakan motherboard yang sudah ada hingga 2 MB cache yang on-board. Ini seharusnya merupakan cache L2 (pada motherboard) yang digunakan sebagai cache tingkat tiga. Hal ini terjadi secara otomatis, dan semakin besar cache namapak akan banyak meningkatkan unjuk kerjanya !<br />
<br />
<br />
GENERASI 7<br />
<br />
AMD K-7 Athlan<br />
Processor AMD utama yang sangat menggemparkan Athlon (K7) diperkenalkan Agustus 1999. Tanggapan Intel (nama sandi Foster) tidak dapat diharapkan hingga akhir tahun 2000. Dalam bulan-bulan pertama, pasar menanggapi Athlan sangat positif. Nampaknya (seperti yang diharapkan) untuk mengungguli Pentium III pada frekuensi clock yang sama.<br />
<br />
Seperti modul pada Pentium II , yang rancangannya sepenuhnya milik<br />
<br />
• AMD. Socket tersebut disebut Slot A.<br />
<br />
• Kecepatan clock 600 MHz merupakan versi pertama.<br />
<br />
• Cache L2 mencapai 8 MB (minimum 512 KB, tanpa tambahan TAG-RAM).<br />
<br />
• Cache L1 128 KB.<br />
<br />
• Berisi 22 juta transistor (Pentium III mempunyai 9.3 juta).<br />
<br />
Bus Jenis Baru<br />
<br />
• Jenis bus sistem yang benar-benar baru, yang pada versi pertama akan bekerja pada 200 MHz. Peningkatan hingga 400 MHz diharapkan kemudian. Kecepatan RAM 200 MHz merupakan dua kali lebih cepat daripada semua CPU Intel yang ada. Kecepatan yang tinggi ini akan memerlukan RAM cepat yang baru untuk memperoleh keuntungan penuh dari akibat ini.<br />
<br />
• Bus backside yang bebas, yang menghubungkan cache L2. Disini kecepatan clock dapat menjadi ¼, 1/3, 2/3 atau sama dengan frekuensi CPU internal. Hal itu merupakan sistem yang sama seperti yang digunakan pada sistem P6 dimana kecepatan L2 bisa setengah (Celeron, Pentium II dan III) atau kecepatan CPU penuh (seperti Xeon).<br />
<br />
• Pengkodean yang berat dan DPU<br />
<br />
• Tiga pengkode perintah menerjemahkan perintah program RISCx86 ke perintah RISC yang efektif, ROP, dimana hingga 9 perintah dapat dijalankan secara sererntak. Uji coba pertama menunjukkan pengkodean 2.8 perintah CISC tiap putaran clock. Hal ini kira-kira 30% lebih baik dari Pentium II dan III.<br />
<br />
• Dapat menangani dan menyusun kembali hingga 72 perintah (diluar ROP) secara serentak (Pentium III dapat melakukan 40, K6-2 hanya 24).<br />
<br />
• Unjuk kerja FPU yang hebat dengan tiga perintah serentak dan satu GFLOP pada 500 floating point. Dua GFLOP dengan perintah MMX dan 3DNow! Hal itu sedikitnya sama dengan unjuk kerja Pentium III dengan memanfaatkan secara penuh Katmai. Mesin 3DNow! bahkan sudah diperbaiki dibandingkan pada K6-3.<br />
<br />
<br />
AMD Athlon / 500 MHz 2767<br />
<br />
• AMD tidak punya lisensi untuk menggunakan rancang bangun Slot 1, sehingga rangkaian logika kontroler datang dari Digital Equipment Corp. Disebut EV6 dan dirancang untuk CPU Alpha 21264. Perusahaan AMD merencanakan untuk mengembangkan chip set mereka sendiri, tetapi rancang bangunnya akan menjadi bebas royalti untuk digunakan. Hal ini menjadikan prosessor pertama AMD yang menggunakan motherboard dan chip set yang dirancang khusus oleh AMD sendiri.<br />
<br />
• Penggunaan bus EV6 memberi banyak lebar band daripada Intel GTL+. Hal ini berarti bahwa Athlon mempunyai kemampuan untuk bekerja dengan jenis RAM baru seperti RDRAM. Juga penggunaan 128 KB cache L1 yang cukup berat. Cache L1 penting jika kecepatan clock meningkat dan 128 KB dua kali dari ukuran milik Pentium II.<br />
<br />
• Athlon akan hadir dalam beberapa versi. Versi “paling lambat†mempunyai cache L2 yang bekerja sepertiga kecepatan CPU, dimana yang paling bagus akan bekerja pada kecepatan CPU penuh (seperti yang dilakukan oleh Xeon). Athlon akan memberi persainga n Intel dalam segala lapisan termasuk server, yang dapat dibandingkan dengan prosessor Xeon.<br />
<br />
<br />
<br />
PERKEMBANGAN PROCESSOR BERBASIS INTEL<br />
<br />
Ada banyak macam processor yang tersedia saat ini. Beberapa didesain untuk kebutuhan pada komputer portable, yang lainnya khusus didesain untuk penggunaan multi media. Pembahasan berikut ini menerangkan secara sekilas tentang tipe prosesor berbasis Intel secara umum beserta fitur- fiturnya.<br />
<br />
MMX Technology<br />
Teknologi MMX dari Intel didesain untuk meningkatkan performa multimedia dan aplikasi komunikasi. Sebelum adanya MMX, beberapa processor secara terpisah digunakan untuk mengimplementasikan komunikasi dan suara dalam system komputer. Dengan desain MMX, teknologi ini dapat ditambahkan ke dalam desain dari processor. Hal ini berarti himpunan instruksi yang dimiliki oleh processor dioptimalkan untuk menangani bidang multimedia dan program komunikasi. MMX menambahkan 57 instruksi baru ke dalam himpunan instruksi dasar dari processor. Instruksi- instruksi ini dioptimalkan untuk dapat melakukan eksekusi dengan cepat. Tipe data baru dan 64 bit registers juga ditambahkan untuk mendukung teknologi MMX.<br />
<br />
Pentium II<br />
Processor utama ini memiliki fitur :<br />
• Kecepatan yang berkisar antara 233MHz sampai<br />
• 450MHz (di tahun 1999)<br />
• Cocok untuk workstations maupun servers<br />
• Menggunakan single edge contact cartridge, 242<br />
• pins<br />
• Termasuk 512KB level two cache<br />
• 32KB dari level one cache dibagi menjadi 16KB<br />
• data dan 16KB instruksi cache<br />
<br />
Pentium Pro<br />
Rangkaian Prosessor ini sesuai untuk high-end servers yang membutuhkan sampai 4 processor. Fitur yang dimilikinya :<br />
<br />
• sesuai untuk high end workstations dan servers<br />
• kecepatannya 150, 166, 180 dan 200MHz<br />
• dapat diskalakan sampai 4 processors dalam sistem multiprocessor<br />
• dioptimalkan sampai dapat menjalankan aplikasi 32 bit.<br />
• 8K/8K data terpisah dan instruksi level one cache<br />
<br />
<br />
Cerelon Processor<br />
Processor Cerelon didesain untuk pemakaian pasar konsumen di rumahan. Processor ini memiliki fitur :<br />
<br />
• kecepatan berkisar dari 266 sampai 500MHz (di tahun 1999)<br />
<br />
• Mirip dengan Pentium II processor<br />
<br />
• Versi 300 dan 333MHz termasuk 128K dari level two cache<br />
<br />
• level one cache 32K (terdiri dari 16K instruksi dan 16K data)<br />
<br />
• meliputi teknologi MMX<br />
<br />
<br />
<br />
Pentium III Processor<br />
Berdasarkan pada mikro arsitektur P6, merupakan media Intel MMX yang ditingkatkan dengan penyediaan Streaming SIMD Extensions. Diaman terdapat 70 instruksi baru yang memungkinkan penggambaran image tingkat lanjut, grafik 3D, audio dan video, dan pengenalan percakapan Fitur barunya adalah processor serial number, yaitu suatu nomer elektronik yang ditambahkan ke setiap Processor Pentium III, yang dapat digunakan oleh departement IT untuk manajemen informasi/asset<br />
<br />
Processor ini memiliki fitur :.<br />
<br />
• kecepatan berkisar 450MHz, 500MHz, 550MHz dan 600MHz (di tahun1999)<br />
<br />
• 70 Instruksi baru<br />
<br />
• Intel® Processor Serial Number<br />
<br />
• P6 Microarchitecture<br />
<br />
• 100MHz system bus<br />
<br />
• 512K Level Two Cache<br />
<br />
• Intel® 440BX chipset<br />
<br />
<br />
Xeon Pentium III Processor<br />
Merupakan processor yang dapat diskalakan (multiprocessor) sebanyak 2, 4, 8 atau lebih dan didesain secara khusus untuk mid-range dan server/workstations yang lebih tinggi tingkatannya. Processor ini memiliki fitur :<br />
<br />
• Sesuai untuk high end workstations atau high end servers<br />
<br />
• Kecepatan berkisar dari 500 sampai 550MHz (di tahun 1999)<br />
<br />
• Mendukung penskalaan multiprocessor<br />
<br />
• Memiliki processor serial number<br />
<br />
• 32KB (16KB data /16KB instruction) nonblocking<br />
<br />
• L1 cache<br />
<br />
• 512Kbytes L2 cache<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
GENERASI TERBARU<br />
<br />
CORE i7<br />
Intel akan mengeluarkan processor generasi terbarunya di awal bulan November 2008. Processor ini merupakan generasi penerus dari processor sebelumnya dengan tetap menggunakan nama Core , walaupun secara microarsitektur sudah berbeda dengan Core 2 dan Core. Sebelumnya kebanyakan orang menduga bahwa Intel akan memberikan nama processor terbarunya ini dengan nama Core 3, tetapi kenyataannya pada beberapa bulan yang lalu Intel secara resmi menamakannya Core i7 .<br />
<br />
Processor ini juga bisa disebut atau mempunyai code name Nehalem . Kita sebagai konsumen di Indonesia akan lebih sulit menyebut nama baru processor ini tentunya, tidak seperti legenda Pentium, hampir semua orang jika ingin membeli komputer pasti akan bertanya, “Pentium apa bukan?” Proses pengenalan nama Core kemudian Core 2 diawal peluncuran processor tersebut saja sudah cukup susah, sekarang berganti dengan Core i7 tentu saja akan lebih susah lagi, tapi justru inilah yang menjadi rahasia dari Intel dalam melakukan branding produknya.<br />
<br />
Apa saja yang istimewa dari Processor Core i7 ini? Apa saja teknologi yang diusungnya? Secara garis besar dapat disebutkan spesifikasi processor Core i7 yang berbeda dengan processor -processor Intel sebelumnya, diantaranya :<br />
Memiliki performa lebih tinggi dan lebih efisien dalam penggunaan energi dibandingkan dengan prosessor generasi sebelumnya.<br />
1. FSB ( Front Side Bus) digantikan dengan QuickPath Interface. Sementara ini hanya chipset yang mendukung QuickPath Interface saja yang bisa menggunakan processor ini, misal chipset Intel X58.<br />
<br />
2. Memory Controller ada dalam processor, tidak seperti yang sebelumnya terpisah dalam chip tersendiri. Dengan teknologi ini memori akan langsung terhubung dengan processor. Rupanya Intel cukup terkesan dengan pesaingnya –AMD yang sudah sejak lama menggunakan teknologi ini.<br />
<br />
3. Support Three Channel Memory , tiap – tiap kanal berisi 2 slot memori, sehingga total slot yang ada dalam mainboard yang mendukung processor ini ada 6 slot. Tentu saja kapasitas memori yang bisa disupport oleh processor ini akan semakin besar.<br />
<br />
4. Processor Core i7 sementara ini hanya mendukung memori jenis DDR 3.<br />
<br />
<br />
5. Core i7 menggunakan single-die device : core (inti processor) , memory controller (kontrol memori), dan cache berada dalam satu die.<br />
<br />
6. Menggunakan tipe socket baru yaitu Socket B ( Socket LGA 1366)<br />
<br />
Selain hal-hal baru diatas, ternyata justru didalam processor Core i7 ini menggunakan kembali teknologi lama Intel Pentium yang sudah tidak diaplikasikan didalam generasi Intel Core, yaitu Hyper-Threading . Dengan adanya teknologi Hyper-Threading ini dalam sistem operasi ( Windows,Linux, dll) seolah – olah inti processor akan menjadi 2 kali lipatnya, misalnya : dalam sistem operasi processor Core i7 4 core akan terdeteksi menjadi 8 core. <br />
Jenis-jenis processor Core i7 yang sudah dirilis adalah jenis Extreem Edition dan yang biasa, beberapa diantaranya adalah :<br />
- Core i7 965 Extrem Edition , dengan Clock 3,2 Ghz, 8 MB L3 Cache , 45 nm, Socket LGA 1366<br />
- Core i7 940, dengan Clock 2,93 Ghz, 8 MB L3 cache, 45 nm, Socket LGA 1366<br />
- Core i7 920, dengan Clock 2,66 Ghz ,8 MB L3 Cache, 45 nm, Socket LGA 1366<br />
Semua processor diatas mempunyai 4 core ( 4 inti processor) atau lebih sering disebut dengan Quad Processor. Untuk versi yang lebih rendah misalnya Dual Core sementara ini Intel belum memberikan data secara resmi. </div><div class="post-footer"> <div class="post-footer-line post-footer-line-1"> <span class="post-author vcard"> Diposkan oleh <span class="fn">zaysuke</span> </span> <span class="post-timestamp"> di <a class="timestamp-link" href="http://zaysuke.blogspot.com/2009/12/sejarah-komputer-dan-perkembangannya.html" rel="bookmark" title="permanent link"><abbr class="published" title="2009-12-06T07:16:00-08:00">07.16</abbr></a> </span> <span class="reaction-buttons"> </span> <span class="star-ratings"> </span> <span class="post-comment-link"> <a class="comment-link" href="http://zaysuke.blogspot.com/2009/12/sejarah-komputer-dan-perkembangannya.html#comments" onclick="">0 komentar</a> </span> <span class="post-backlinks post-comment-link"> </span> <span class="post-icons"> <span class="item-action"> <a href="http://www.blogger.com/email-post.g?blogID=2172851912974847418&postID=3186121982803136784" title="Posting Email"> <img alt="" class="icon-action" height="13" src="http://img1.blogblog.com/img/icon18_email.gif" width="18" /> </a> </span> <span class="item-control blog-admin pid-1052699193"> <a href="http://www.blogger.com/post-edit.g?blogID=2172851912974847418&postID=3186121982803136784" title="Edit Entri"> <img alt="" class="icon-action" height="18" src="http://img2.blogblog.com/img/icon18_edit_allbkg.gif" width="18" /> </a> </span> </span> <div class="post-share-buttons"> </div></div><div class="post-footer-line post-footer-line-2"> <span class="post-labels"> </span> </div><div class="post-footer-line post-footer-line-3"> <span class="post-location"> </span> </div></div></div></div><div class="post-outer"> <div class="post hentry uncustomized-post-template"> <a href="" name="1042974570423113397"></a> <h3 class="post-title entry-title"> <a href="http://zaysuke.blogspot.com/2009/12/pertanyaan-dan-jawaban-masalah-komputer.html">pertanyaan dan jawaban masalah komputer</a> </h3><div class="post-header"> </div><div class="post-body entry-content"> Pertanyaan dan jawaban masalah komputer<br />
<br />
1. apa yang dimaksud dengan LAN, MAN dan WAN ?<br />
<br />
LAN:<br />
Local Area Network, merupakan jaringan milik pribadi di dalam sebuah gedung atau kampus yang berukuran sampai beberapa kilometer. LAN seringkali digunakan untuk menghubungkan komputer-komputer pribadi dan workstation dalam kantor suatu perusahaan atau pabrikpabrik untuk memakai bersama sumberdaya (resouce, misalnya printer) dan saling bertukar informasi.<br />
Pada sebuah LAN, setiap node atau komputer mempunyai daya komputasi sendiri, berbeda dengan konsep dump terminal. Setiap komputer juga dapat mengakses sumber daya yang ada di LAN sesuai dengan hak akses yang telah diatur. Sumber daya tersebut dapat berupa data atau perangkat seperti printer. Pada LAN, seorang pengguna juga dapat berkomunikasi dengan pengguna yang lain dengan menggunakan aplikasi yang sesuai.<br />
Berbeda dengan Jaringan Area Luas atau Wide Area Network (WAN), maka LAN mempunyai karakteristik sebagai berikut :<br />
1. Mempunyai pesat data yang lebih tinggi<br />
2. Meliputi wilayah geografi yang lebih sempit<br />
3. Tidak membutuhkan jalur telekomunikasi yang disewa dari operator telekomunikasi<br />
Biasanya salah satu komputer di antara jaringan komputer itu akan digunakan menjadi server yang mengatur semua sistem di dalam jaringan tersebut.<br />
MAN :<br />
Metropolitan Area Network (MAN), pada dasarnya merupakan versi LAN yang berukuran lebih besar dan biasanya menggunakan teknologi yang sama dengan LAN. MAN dapat mencakup kantor-kantor perusahaan yang letaknya berdekatan atau juga sebuah kota dan dapat dimanfaatkan<br />
untuk keperluan pribadi (swasta) atau umum. MAN mampu menunjang data dan suara, bahkan dapat berhubungan dengan jaringan televisi kabel.<br />
WAN :<br />
Wide Area Network (WAN), jangkauannya mencakup daerah geografis yang luas, seringkali mencakup sebuah negara bahkan benua. WAN terdiri dari kumpulan mesin-mesin yang bertujuan untuk menjalankan program-program (aplikasi) pemakai.WAN digunakan untuk menghubungkan jaringan lokal yang satu dengan jaringan lokal yang lain, sehingga pengguna atau komputer di lokasi yang satu dapat berkomunikasi dengan pengguna dan <br />
komputer di lokasi yang lain.<br />
<br />
2.apa yang dimaksud dengan IP Address dan fungsinya pada jaringan<br />
computer ?<br />
<br />
Alamat IP (Internet Protocol Address atau sering disingkat IP) adalah deretan angka biner antar 32-bit sampai 128-bit yang dipakai sebagai alamat identifikasi untuk tiap komputer host dalam jaringan Internet. Panjang dari angka ini adalah 32-bit (untuk IPv4 atau IP versi 4), dan 128-bit (untuk IPv6 atau IP versi 6) yang menunjukkan alamat dari komputer tersebut pada jaringan Internet berbasis TCP/IP.<br />
<br />
<br />
3.bagaimana cara langkah langkah menginstall windows 2000 server cloning.<br />
<br />
Langkah-langkahnya<br />
1. Copy semua file I386 dari CD Instalasi Windows 2000 ke hard disk D, yang mana drive ini nantinya akan digunakan sebagi tempat instalasi Windows 2000.<br />
2. Reboot komputer dan segera tekan F8. Akan muncul beberapa item pilihan untuk troubelshoting Windows.<br />
3. Pilih item No.5 yakni Command Prompt Only, tekan Enter.<br />
4. Pada layar komputer akan muncul tampilan C:\> (C Prompt).<br />
5. Aktifkan smartdrive, fungsi dari fasilitas ini adalah agar proses peng-copy-an file instalasi windows pada setup nanti dapat berlangsung dengan cepat. Untuk mengaktifkan fasilitas ini adalah sebagai berikut :<br />
Pada C Prompt ketik cd win98 lalu ketik smartdrv.exe /L lalu tekan Enter<br />
C:\>cd win98<br />
C:\>win98>smartdrv.exe /L<br />
6. Setelah smartdrive diaktifkan, lalu masuk ke drive D dengan menuliskan perintah C:\>D: lalu tekan Enter. Maka drive D akan aktif.<br />
7. Untuk memulai instalasi, pada D Prompt ketik<br />
D:\>cd I386<br />
D:\>I386>winnt<br />
8. Maka akan keluar tampilan setup Windows 2000. Tekan Continue untuk melanjut.<br />
9. Keluar jendela<br />
Please wait while setup copies files to your hard disk.<br />
Setup is copying files…..<br />
Tunggu hingga 100%.<br />
10. Setup akan merestart computer dan melanjutkan instalasi Windows 2000.<br />
11. Muncul jendela Welcome to setup, dan terdapat 3 (tiga) item pilihan yakni:<br />
• To setup Windows 2000 now, press Enter<br />
• To repair a Windows 2000 installation, press R<br />
• To quit setup without installing windows 2000, press F3<br />
Karena kita kan melakukan instalasi Windows 2000 maka tekan Enter<br />
12. Akan keluar jendela Licensing Agreementing, karena kita setuju dengan perjanjian ini tekan F8 untuk melanjutkan proses intalasi.<br />
13. Selanjutnya akan terdapat pilihan drve mana yang akan digunakan untuk instalsi Windows 2000. Karena drive C telah diisi Windows 98 maka file instalasi akan kita letakkan di drive D, tekan Enter.<br />
14. Setup akan mengecek drive D dan C, tunggu hingga selesai.<br />
15. Setup akan meng-copy file instalasi, tunggu hingga 100% selesai.<br />
16. Setup akan melakukan konfigurasi terhadap Windows kemudian komputer akan direboot.<br />
17. Setup kembali mengkonfigurasi dan menginstal semua device yang ada dalam komputer.<br />
18. Muncul jendela Regional Settings klik Customize kemudian pilih Indonesia klik Apply dan OK. Tekan Next untuk melanjut.<br />
19. Pada jendela personalize your software masukkan Name dan Organization kemudian klik Next.<br />
20. Keluar jendela yang meminta untuk memasukkan product key, masukkan 25 karakter angaka dengan benar. Tekan Next unutk melanjut.<br />
21. Pada jendela Date and Time settings pilih Bangkok, Hanoi, Jakarta untuk menyesuaikan waktu sesuai dengan wilayah Indonesia.<br />
22. Windows 2000 akan menginstal jaringan komputer.<br />
23. Kemudian setup akan melengkapi instalasi Windows :<br />
1. Install start menu items<br />
2. Register component<br />
3. Save settings<br />
4. Remove any temporary file used<br />
24. Keluar jendela Completing the Windows 2000 setup wizard, tekan Finish. Maka Windows 2000 telah sukses diinstal. Komputer akan kembali direboot dan pada tampilan pertama akan muncul pilhan system operasi, yakni Windows 2000 dan Windows 98.<br />
<br />
<br />
4. Kenapa komputer saya tidak bereaksi ketika saya menyalakan tombol power ?<br />
<br />
• Periksa semua jaringan listrik, dari outlet AC sampai ke PSU (power supply unit) PC Anda. Apakah sudah terpasang dengan sempurna. Mulai dari memastikan switch PSU dalam posisi ON, ataupun sekiranya Anda menggunakan UPS (uniterruptable power supply) dan/atau stabilizer AVR (automated voltage regulator). Pastikan semua dalam posisi ON dan dalam keadaan berfungsi dengan baik.<br />
• Jika hal tersebut bukan penyebabnya, maka kemungkinan berikutnya baru pada PC Anda. Pastikan semua kabel (terutama kabel power) dan komponen terpasang dengan baik. Caranya dengan mebuka casing, kemudian menekan-nekan kembali komponen dan konektor kabel yang ada. Adakalanya hal ini disebabkan karena konektor yang tidak terhubung dengan sempurna. Perhatikan juga ATX 12V, yang dapat ditemukan pada kebanyakan motherboard empat tahun belakangan ini. Motherboard tidak akan beraksi, tanpa catuan daya dari konektor ini.<br />
• Ini akan cukup merepotkan. Lakukan pengecekan perangkat utama satu persatu. Yang dimaksud adalah CPU dan motherboard. Pastikan keduanya masih berfungsi dengan baik. Sebab katakanlah jika CPU rusak, sistem tidak akan menyala sama sekali. Demikian juga jika motherboard rusak. Terutama untuk urusan catu dayanya (MOSFET, jalur daya pada PCB dan seterusnya). Ini juga akan menyebabkan PC tidak akan bereaksi sama sekali<br />
5. Harddisk tidak terdeteksi oleh sistem (windows) ?<br />
<br />
• Pastikan harddisk sudah mendapatkan catudaya dari PSU. Kesalahan sepele seperti ini bisa saja terjadi. Mengingat letak harddisk yang biasanya di bagian depan casing. Terkadang Anda menghubungkannya dengan cabang power dari fan, yang tidak mendapatkan pasokan daya dari PSU. Hal ini bisa juga diakibatkan minimnya jumlah konektor daya dari PSU <br />
• Pastikan setting master dan slave harddisk tepat seperti yang diinginkan (pin master/slave). Atau jika Anda ingin memanfaatkan konfigurasi pada cable select, pastikan menggunakan konfigurasi tersebut pada kedua harddisk, lama dan baru Anda. Biasanya pemasangan pin ini yang banyak menimbulkan permasalahan, sepele namun berakibat sistem tidak bekerja<br />
<br />
<br />
6. Muncul pesan error pada instalasi driver VGA ?<br />
<br />
Ada kemungkina aplikasi (driver) ini dibuat dengan memanfaatkan Microsoft .NET Framework SDK, seperti penggunaan ATi Radeon denga ATi Catalist nya. Intall dulu aplikasi .NET Framework yang disediakan gratis oleh Microsoft. </div><div class="post-footer"> <div class="post-footer-line post-footer-line-1"> <span class="post-author vcard"> <span class="fn"></span></span><span class="post-timestamp"><a class="timestamp-link" href="http://zaysuke.blogspot.com/2009/12/pertanyaan-dan-jawaban-masalah-komputer.html" rel="bookmark" title="permanent link"><abbr class="published" title="2009-12-06T04:43:00-08:00"></abbr></a></span><span class="post-comment-link"><br />
</span><span class="post-backlinks post-comment-link"></span><span class="post-icons"><span class="item-action"><a href="http://www.blogger.com/email-post.g?blogID=2172851912974847418&postID=1042974570423113397" title="Posting Email"></a></span><span class="item-control blog-admin pid-1052699193"><a href="http://www.blogger.com/post-edit.g?blogID=2172851912974847418&postID=1042974570423113397" title="Edit Entri"></a></span></span><div class="post-share-buttons"> </div></div><div class="post-footer-line post-footer-line-2"> <span class="post-labels"> </span> </div><div class="post-footer-line post-footer-line-3"> <span class="post-location"> </span> </div></div></div></div><div class="post-outer"> <div class="post hentry uncustomized-post-template"> <a href="" name="603676451076308398"></a> <h3 class="post-title entry-title"> <a href="http://zaysuke.blogspot.com/2009/12/komputer-masa-depan.html">komputer masa depan</a> </h3><div class="post-header"> </div><div class="post-body entry-content"> Teknologi Kuantum dan Komputer Masa Depan<br />
<br />
KECEPATAN komputer mengolah informasi sangat ditentukan oleh prosesornya. Dalam teknologi digital silikon (konvensional), untuk meningkatkan kecepatan prosesor kerapatan transistor dalam cip prosesor harus ditingkatkan. Upaya untuk meningkatkan kerapatan transistor ini tidak mungkin dilakukan terus menerus tanpa batas karena suatu saat pasti akan mencapai maksimum, yaitu ketika ukuran transistor sudah tidak dapat diperkecil lagi. Pada keadaan ini perlu ditemukan teknologi baru, misalnya teknologi kuantum, untuk meningkatkan kecepatan prosesor.Istilah kuantum (quantum) belakangan ini mulai populer dan sering digunakan dalam berbagai konsep yang memperkenalkan suatu paradigma baru, misalnya quantum learning, quantum teaching, quantum business, dan sebagainya. Kiranya tidak berlebihan jika dikatakan bahwa istilah kuantum pertama kali diperkenalkan oleh Max Planck, seorang fisikawan Jerman, dalam teori kuantum cahaya untuk menjelaskan radiasi benda hitam. Secara tak langsung teori inilah yang melahirkan fisika kuantum yang mempunyai efek dominan pada sistem dalam skala atomik.<br />
<br />
Sejalan dengan perkembangan ilmu fisika dan informasi, belakangan ini telah mulai dikembangkan komputasi kuantum yang menggunakan prinsip-prinsip fisika kuantum. Komputasi kuantum ini nantinya diharapkan dapat melahirkan teknologi kuantum yang memungkinkan terobosan teknologi untuk mewujudkan komputer masa depan (komputer kuantum) yang bekerja dengan cara yang sama sekali berbeda dengan komputer konvensional yang dikenal saat ini.<br />
<br />
Apa yang membedakan komputer kuantum dari komputer konvensional (digital)? Kita dapat mulai dengan mengamati secuil satuan informasi yang disebut satu bit, yaitu satu sistem fisis yang dapat dinyatakan dalam satu di antara dua keadaan (dua nilai logik) yang berbeda: ya atau tidak, benar atau salah, 0 atau 1. Satu bit informasi dapat diberikan oleh dua keadaan polarisasi cahaya atau dua keadaan elektronik suatu atom. Namun, jika satu atom dipilih untuk merepresentasikan satu bit informasi maka menurut mekanika kuantum di samping kedua keadaan elektronik yang berbeda, atom tersebut dapat pula berada dalam keadaan superposisi (paduan) dua keadaan tersebut. Atom tersebut dapat berada pada keadaan 0 dan 1 secara serentak. Secara umum, satu sistem kuantum dengan dua keadaan atau quantum bit (qubit) dapat dibuat berada dalam suatu keadaan superposisi dari kedua keadaan logiknya.<br />
<br />
Perhatikan perbandingan berikut. Register konvensional tiga bit dalam satu saat hanya dapat menyimpan satu dari 8 kemungkinan keadaan yang berbeda seperti: 000, 001, 010, 011, 100, 101, 110, dan 111. Sebaliknya, suatu register kuantum tiga qubit dalam satu saat dapat menyimpan 8 kemungkinan keadaan yang berbeda tersebut secara serentak sebagai suatu superposisi kuantum. Jika jumlah qubit terus ditambahkan pada register maka kapasitas penyimpanan keadaan (informasi) dalam register akan meningkat secara eksponensial, yaitu secara serentak 3 qubit dapat menyimpan 8 keadaan berbeda, 4 qubit dapat menyimpan 16 keadaan berbeda, dan seterusnya sehingga secara umum N qubit dapat menyimpan sejumlah 2N keadaan berbeda.<br />
<br />
Sekali suatu register disiapkan dalam suatu superposisi dari keadaan-keadaan yang berbeda, operasi-operasi pada semua keadaan itu dapat dilakukan secara bersamaan. Sebagai contoh, jika qubit-qubit tersimpan dalam atom-atom, pulsa laser yang diatur secara tepat dapat mempengaruhi keadaan-keadaan elektronik atom dan mengubah superposisi awal menjadi superposisi lain yang berbeda. Selama perubahan tersebut setiap keadaan dalam superposisi awal terpengaruh sehingga dapat dihasilkan suatu komputasi masif secara paralel dalam satu keping hardware kuantum.<br />
<br />
Suatu komputer kuantum dalam satu langkah komputasi dapat melakukan operasi matematis pada 2N input berlainan yang tersimpan dalam superposisi koheren N qubit. Untuk melakukan hal yang sama, suatu komputer konvensional harus mengulang operasi sejumlah 2N kali atau harus digunakan 2N prosesor konvensional yang bekerja bersamaan. Komputer kuantum menawarkan peningkatan yang sangat luar biasa dalam penggunaan dua sumber daya komputasi utama, yaitu waktu dan memori.<br />
<br />
Tahap awal menuju gerbang logika kuantum dan jaringan kuantum sederhana adalah usaha mengontrol fenomena kuantum dalam suatu eksperimen. George Johnson dari New York Times melaporkan bahwa di Los Alamos, USA, Dr Raymond Laflamme dan Dr Emanuel Knill sedang melakukan eksperimen yang mengaplikasikan komputasi kuantum dengan menggunakan NMR (nuclear magnetic resonance) yang sebelumnya sering digunakan untuk memetakan struktur molekul berdasarkan respons atom-atom penyusunnya terhadap gelombang elektromagnetik. Teknologi serupa ini, magnetic resonance imaging (MRI) sudah cukup lama dan cukup banyak digunakan di rumah sakit, yaitu untuk melakukan scanning pada jaringan tubuh manusia.<br />
<br />
Dalam eksperimen yang telah dilakukan, lima qubit disimpan dalam spin-spin inti lima atom yang menyusun suatu molekul yang disebut asam kroton (crotonic acid) yang disintesis secara khusus oleh ahli kimia Los Alamos, Dr Rudy Martinez. Spin merupakan besaran intrinsik dalam fisika kuantum, secara analog digambarkan sebagai efek yang timbul dari gerak putar seperti gasing yang dapat berinteraksi dengan medan magnet. Jika gerak putar searah jarum jam dinyatakan sebagai keadaan spin down atau 0, maka gerak putar dalam arah berlawanan jarum jam dinyatakan sebagai keadaan spin up atau 1.<br />
Mula-mula suatu sampel asam kroton yang berisi sekitar 1021 (satu milyar trilyun) molekul diletakkan di dalam inti spektrometer NMR. Sejumlah nitrogen dan helium cair digunakan untuk mendinginkan kumparan superkonduktor NMR untuk menghasilkan medan magnet yang sangat kuat.<br />
<br />
Pada awal eksperimen, spin inti-inti atom dalam molekul asam kroton berorientasi ke segala arah secara acak. Melalui keyboard komputer yang terhubung ke NMR, peneliti meratakan arah spin dengan medan elektromagnetik, hanya saja hasilnya tidak sepenuhnya rapi.<br />
<br />
Medan magnet yang kuat dalam NMR hanya dapat menyebabkan sebagian kecil, sekitar 1013 (sepuluh trilyun) molekul, mempunyai orientasi spin inti yang dapat dinyatakan sebagai 11111. Molekul-molekul homogin inilah yang digunakan dalam komputasi kuantum. Hal ini dapat dilakukan sebab setiap spin dari kelima inti dalam molekul tersebut beresonansi pada frekuensi yang berbeda.<br />
<br />
Dengan menggunakan pulsa gelombang radio peneliti dapat memilih spin inti tertentu, misalnya inti kedua, dan menggoncangkannya serupa bel sehingga semua spin inti kedua dari sekitar 10 trilyun molekul tersebut berdenting secara sinkron. Jika pulsa gelombang radio diatur dalam selang waktu yang tepat, spin inti-inti kedua dapat diputar ke arah berlawanan, disimbolkan sebagai keadaan 0. Pulsa lain dengan karakteristik sama akan mengembalikan orientasi spin inti-inti kedua ke arah semula atau keadaan 1. Sebaliknya, pulsa dengan selang waktu setengah kali akan menyebabkan spin inti-inti tersebut berada dalam superposisi kuantum: secara bersamaan pada keadaan 1 dan 0.<br />
<br />
Yang digambarkan di atas tak lain daripada suatu saklar kuantum. Suatu molekul dapat digunakan untuk melakukan perhitungan sebab spin inti-inti atomnya, seperti saklar-saklar kecil di dalam cip komputer, dapat berinteraksi satu terhadap yang lain: suatu pulsa gelombang radio akan menyebabkan spin inti tertentu berubah dari keadaan 1 ke 0 atau sebaliknya. Di dalam komputer digital susunan demikian ini dikenal sebagai gerbang logika, komponen dasar untuk suatu komputasi. Serangkaian gerbang logika memungkinkan suatu komputasi dapat dilakukan.<br />
<br />
Berbekal keberhasilan dan pengetahuan yang diperoleh dari penelitian sebelumnya, kelompok peneliti di Los Alamos melakukan penelitian komputasi kuantum dengan menggunakan 10 qubit. Dalam penelitian ini mereka melakukan koreksi kesalahan kuantum, salah satu komponen yang sangat penting bagi perkembangan teknologi kuantum.<br />
Dapatkah komputer kuantum direalisasikan dalam waktu dekat merupakan suatu pertanyaan yang sulit dijawab. Lahirnya teknologi baru selalu membawa perubahan yang perlu dicermati dan diantisipasi. Yang pasti, teknologi kuantum untuk mewujudkan komputer kuantum akan membawa paradigma baru dalam dunia komputer, baik dari segi hardware maupun software (algoritma )</div><div class="post-footer"> <div class="post-footer-line post-footer-line-1"> <span class="post-author vcard"> <span class="fn"></span></span><span class="post-timestamp"><a class="timestamp-link" href="http://zaysuke.blogspot.com/2009/12/komputer-masa-depan.html" rel="bookmark" title="permanent link"><abbr class="published" title="2009-12-06T04:18:00-08:00"></abbr></a></span><span class="post-comment-link"></span><span class="post-icons"><span class="item-control blog-admin pid-1052699193"><a href="http://www.blogger.com/post-edit.g?blogID=2172851912974847418&postID=603676451076308398" title="Edit Entri"><br />
</a> </span> </span> <div class="post-share-buttons"> </div></div><div class="post-footer-line post-footer-line-2"> <span class="post-labels"> </span> </div><div class="post-footer-line post-footer-line-3"> <span class="post-location"> </span> </div></div></div></div><div class="post-outer"> <div class="post hentry uncustomized-post-template"> <a href="" name="7441574416608098166"></a> <div class="post-header"> </div><div class="post-body entry-content"> Arsitektur dan organisasi komputer<br />
<br />
•Memahami tentang organisasi dan komponen sistem komputer.<br />
•Memahami tentang arsitektur dan cara kerja komputer.<br />
•Memahami sejarah komputer<br />
<br />
Apa yang di maksud computer?<br />
<br />
Komputer=computare (menghitung)=Alat hitung<br />
–Mesin yang dapat memecahkan berbagai masalah bagi manusia dengan memberikaninstruksi-instruksi(digital) kepada mesin itu.<br />
–mesin penghitung elektronik yang cepat dan dapat menerima informasi input digital, kemudian memprosesnya sesuai dengan program yang tersimpan di memorinya,dan menghasilkan output berupa informasi.<br />
–suatu alat elektronik yang mampu melakukan beberapa tugas sebagai berikut:<br />
•menerima input<br />
•memproses input tadi sesuai dengan programnya<br />
•menyimpan perintah-perintah dan hasil dari pengolahan<br />
•menyediakan output dalam bentuk informasi<br />
–suatu pemroses data yang dapat melakukan perhitungan besar secara cepat, termasuk perhitungan aritmetika dan operasi logika, tanpa campur tangan dari manusia.<br />
<br />
<br />
Perangkat komputer<br />
Unit Masukan<br />
Unit Keluaran<br />
Unit Pemrosesdata<br />
Unit Penyimpandata <br />
<br />
<br />
Fungsi komputer ?<br />
<br />
•Menulis (word processor)<br />
•Menghitung neraca (spreadsheet)<br />
•Membuat program (VB, Delphi, Java, dll)<br />
•Bertukar data (jaringan/LAN)<br />
•Bertukar data global(internet)<br />
•Membuat animasi<br />
•Membuat game<br />
•Membuat lagu<br />
•Dst..<br />
<br />
ARSITEKTUR & ORGANISASI KOMPUTER<br />
<br />
*Arsitektur ?<br />
*Organisasi ?<br />
<br />
Arsitektur komputer berkaitan dengan atribute-atribute yang nampak bagi programmer<br />
Set Instruksi, jumlah bit yang digunakan untuk penyajian data, mekanisme I/O, teknik pengalamantan (addressing techniques).<br />
Contoh: apakah tersedia instruksi untuk perkalian?<br />
<br />
Organisasi komputer berkaitan dengan unit-unit operasional dan interkoneksinya yang merealisasikan spesifikasi arsitektural<br />
<br />
Control signals, interfaces, memory technology.<br />
Contoh: Apakah instruksi perkalian diimplementasikan secara hardware, ataukah dikerjakan dengan penambahan secara berulang?<br />
<br />
Arsitektur sama, organisasi dapat berbeda<br />
Arsitektur bertahan lama, organisasi menyesuaikan perkembangan teknologi<br />
Semua Intel famili x86 memiliki arsitektur dasar yang sama<br />
Famili IBM System/370 memiliki arsitektur dasar yang sama<br />
Memberikan compatibilitas instruksi level mesin<br />
At least backwards<br />
Organisasi antar versi memiliki perbedaan<br />
<br />
STRUKTUR DAN FUNGSI<br />
<br />
Strukture adalah bagaimana masing-masing komponen saling berhubungan satu sama lain<br />
Fungsi merupakan operasi dari masing-masing komponen sebagai bagian dari struktur<br />
<br />
FUNGSI<br />
Semua komputer memiliki 4 fungsi:<br />
Pengolahan data - Data processing<br />
Penyimpanan data - Data storage<br />
Pemindahan data - Data movement<br />
Kendali - Control<br />
<br />
Strukture adalah bagaimana masing-masing komponen saling berhubungan satu sama lain<br />
Fungsi merupakan operasi dari masing-masing komponen sebagai bagian dari struktur </div></div></div></div><div class="date-outer"> <h2 class="date-header"><span> </span></h2><div class="date-posts"> <div class="post-outer"> <div class="post hentry uncustomized-post-template"> <a href="" name="1712332881965351716"></a> <h3 class="post-title entry-title"> <br />
</h3><div class="post-header"> </div></div></div></div></div>trisna dewa herawatihttp://www.blogger.com/profile/06559881740171074964noreply@blogger.com0tag:blogger.com,1999:blog-6228706114189512088.post-49483057540480651702010-08-14T22:06:00.000-07:002010-08-14T22:06:10.282-07:00, PENGANTAR KECERDASAN BUATAN (ARTIFICIAL INTELLIGENCE)<span class="Apple-style-span" style="color: #504945; font-family: Georgia,'century gothic',Arial,verdana,sans-serif; font-size: 14px;"><div style="text-align: justify;"><b>.1 DEFINISI KECERDASAN BUATAN</b><br />
<br />
<b>Artificial Intelligence</b> merupakan salah satu bagian ilmu komputer yang membuat agar mesin/komputer dapat melakukan pekerjaan seperti laykanya dan sebaik yang dilakukan oleh manusia. Teknologi Komputer diharapkan dapat diberdayakan untuk mengerjakan segala sesuatu seperti yang dapat dikerjakan olehmanusia. Manusia memiliki pengetahuan dan pengalaman dalam menyelesaikan masalah yang dihadapinya. Semakin banyak pengalaman dan pengetahuan manusia semakin cepat pula masalah itu dapat diselesaikan. Demikian juga tekonologi komputer akan dapat menyelesaikan masalah jika memiliki pengetahuan dan pengalaman seperti yang dimiliki oleh manusia. Artificial Intelligence merupakan salah satu solusi untuk menyelesaikan permasalahan teknologi informasi yang sekarang ini berkembang.</div><a href="" name="more" style="color: #cc3300; text-decoration: none;"></a><b>Definisi Kecerdasan Buatan Menurut Para Ahli</b><br />
<br />
<b>• H. A. Simon [1987] :</b><br />
“ Kecerdasan buatan (artificial intelligence) merupakan kawasan penelitian, aplikasi dan instruksi yang terkait dengan pemrograman komputer untuk melakukan sesuatu hal yang -dalam pandangan manusia adalah- cerdas”<br />
<br />
<b>• Rich and Knight [1991] :</b><br />
“Kecerdasan Buatan (AI) merupakan sebuah studi tentang bagaimana membuat komputer melakukan hal-hal yang pada saat ini dapat dilakukan lebih baik oleh manusia.”<br />
<br />
<b>• Encyclopedia Britannica:</b><br />
“Kecerdasan Buatan (AI) merupakan cabang dari ilmu komputer yang dalam merepresentasi pengetahuan lebih banyak menggunakan bentuk simbol-simbol daripada bilangan, dan memproses informasi berdasarkan metode heuristic atau dengan berdasarkan sejumlah aturan”<br />
<br />
<b>Tujuan dari kecerdasan buatan menurut Winston dan Prendergast [1984] :</b><br />
<br />
1. Membuat mesin menjadi lebih pintar (tujuan utama)<br />
2. Memahami apa itu kecerdasan (tujuan ilmiah)<br />
3. Membuat mesin lebih bermanfaat (tujuan entrepreneurial)<br />
<br />
<b>Dua bagian yang penting pada A.I untuk dapat belajar sperti layaknya manusia, yaitu :</b><br />
<br />
<b>• Knowledge base (Basis pengetahuan) </b><br />
Basis pengetahuan yang berisi data; fakta-fakta, teori atau aturan-aturan yang diberikan dalam bentuk data (perangkat lunak) knowledge ini yang akan tersimpan terus, semakin banyak knowledge yang dimiliki semakin pintar komputer berpikir.<br />
<b>• Inference engine (Mesin inferensi) </b><br />
Mesin inferensi adaah yang merangkai basis data untuk menjadi suatu esimpulan, mesin inferensi ini yang akan mengambil basis pengetahuan yang digunakan untuk menyelesaikan masalah yang diberikan kepada komputer, data yang diambil dari basis pengetahuan ambil berdasarkan masalah yang dihadapi dan berbeda untuk setiap masalah yang dihadapinya, jika tidak menemukan data yang diinginkan komputer akan menyimpan masalah kedalam data.<br />
<br />
<b>AI dapat dipandang dalam berbagai perspektif.</b><br />
<br />
<b>• Dari perspektif Kecerdasan (Intelligence)</b><br />
AI adalah bagaimana membuat mesin yang “cerdas” dan dapat melakukan hal-hal yang sebelumnya dapat dilakukan oleh manusia<br />
<br />
<b>• Dari perspektif bisnis</b><br />
AI adalah sekelompok alat bantu (tools) yang berdaya guna, dan metodologi yang menggunakan tool-tool tersebut guna menyelesaikan masalah-masalah bisnis.<br />
<br />
<b>• Dari perspektif pemrograman (Programming)</b><br />
AI termasuk didalamnya adalah studi tentang pemrograman simbolik, pemecahan masalah, proses pencarian (search)<br />
<br />
o Umumnya program AI lebih fokus pada simbol-simbol daripada pemrosesan numerik (huruf, kata, angka untuk merepresentasikan obyek, proses dan hubungannya).<br />
o Pemecahan masalah -> pencapaian tujuan<br />
o Search -> jarang mengarah langsung ke solusi. Proses search menggunakan beberapa teknik.<br />
o Bahasa pemrograman AI :<br />
<br />
§ LISP, dikembangkan awal tahun 1950-an, bahasa pemrograman pertama yang diasosiasikan dengan AI.<br />
§ PROLOG, dikembangkan pada tahun 1970-an.<br />
§ Bahasa pemrograman berorientasi obyek (Object Oriented Programming (Objective C, C++, Smalltalk, Java)<br />
<br />
<b>• Dari perspektif penelitian (research)</b><br />
<br />
o Riset tentang AI dimulai pada awal tahun 1960-an, percobaan pertama adalah membuat program permainan (game) catur, membuktikan teori, dan general problem solving (untuk tugas-tugas sederhana)<br />
o “Artificial intelligence” adalah nama pada akar dari studi area.<br />
<div style="text-align: justify;"><br />
</div><div class="separator" style="clear: both; text-align: justify;"><a href="http://3.bp.blogspot.com/_h89H_lYfnbA/S5aKqQxtcSI/AAAAAAAAAUI/S-5rbpwoj48/s1600-h/5.jpg" imageanchor="1" style="background-color: transparent; color: #ac0604; margin-left: 1em; margin-right: 1em; text-decoration: none;"><img border="0" height="320" src="http://3.bp.blogspot.com/_h89H_lYfnbA/S5aKqQxtcSI/AAAAAAAAAUI/S-5rbpwoj48/s320/5.jpg" style="background-color: white; border: 1px solid rgb(204, 204, 204); margin: 2px 5px 5px 0px; padding: 5px;" width="297" /></a></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>1.2 DOMAIN PENELITIAN DALAM KECERDASAN BUATAN</b><br />
<br />
• Formal tasks (matematika, games)<br />
• Mundane task (perception, robotics, natural language, common sense, reasoning)<br />
• Expert tasks (financial analysis, medical diagnostics, engineering, scientific analysis, dll)<br />
<br />
<b>PERMAINAN (Game)</b><br />
<br />
• Kebanyakan permainan dilakukan dengan menggunakan sekumpulan aturan.<br />
• Dalam permainan digunakan apa yang disebut dengan pencarian ruang.<br />
• Teknik untuk menentukan alternatif dalam menyimak problema ruang merupakan sesuatu yang rumit.<br />
• Teknik tersebut disebut dengan HEURISTIC.<br />
• Permainan merupakan bidang yang menarik dalam studi heuristic<br />
<br />
<b>NATURAL LANGUAGE</b><br />
<br />
Suatu teknologi yang memberikan kemampuan kepada komputer untuk memahami bahasa manusia sehingga pengguna komputer dapat berkomunikasi dengan komputer dengan menggunakan bahasa sehari -hari.<br />
<br />
<b>ROBOTIK DAN SISTEM SENSOR</b><br />
<br />
Sistem sensor, seperti sistem vision, sistem tactile, dan sistem pemrosesan sinyal jika dikombinasikan dengan AI, dapat dikategorikan kedalam suatu sistem yang luas yang disebut sistem robotik.<br />
<br />
<b>EXPERT SYSTEM</b><br />
<br />
Sistem pakar (Expert System) adalah program penasehat berbasis komputer yang mencoba meniru proses berpikir dan pengetahuan dari seorang pakar dalam menyelesaikan masalah-masalah spesifik.<br />
<br />
<b>1.3 KONSEP DAN DEFINISI DALAM KECERDASAN BUATAN</b><br />
<br />
<b>TURING TEST – Metode Pengujian Kecerdasan</b><br />
<br />
• Turing Test merupakan sebuah metode pengujian kecerdasan yang dibuat oleh Alan Turing.<br />
• Proses uji ini melibatkan seorang penanya (manusia) dan dua obyek yang ditanyai. yang satu adalah seorang manusia dan satunya adalah sebuah mesin yang akan diuji.<br />
• Penanya tidak bisa melihat langsung kepada obyek yg ditanyai<br />
• Penanya diminta untuk membedakan mana jawaban komputer dan mana jawaban manusia berdasarkan jawaban kedua obyek tersebut.<br />
• Jika penanya tidak dapat membedakan mana jawaban mesin dan mana jawaban manusia maka Turing berpendapat bahwa mesin yang diuji tersebut dapat diasumsikan CERDAS.<br />
<br />
<b>PEMROSESAN SIMBOLIK</b><br />
<br />
• Komputer semula didisain untuk memproses bilangan/angka-angka (pemrosesan numerik).<br />
• Sementara manusia dalam berpikir dan menyelesaikan masalah lebih bersifat simbolik, tidak didasarkan kepada sejumlah rumus atau melakukan komputasi matematis.<br />
• Sifat penting dari AI adalah bahwa AI merupakan bagian dari ilmu komputer yang melukan proses secara simbolik dan non-algoritmik dalam penyelesaian masalah<br />
<br />
<b>HEURISTIC</b><br />
<br />
• Istilah Heuristic diambil dari bahasa Yunani yang berarti menemukan<br />
• Heuristic merupakan suatu strategi untuk melakukan proses pencarian (search) ruang problema secara selektif, yang memandu proses pencarian yang kita lakukan disepanjang jalur yang memiliki kemung kinan sukses paling besar.<br />
<br />
<b>PENARIKAN KESIMPULAN (INFERENCING)</b><br />
<br />
• AI mecoba membuat mesin memiliki kemampuan berpikir atau mempertimbangkan (reasoning)<br />
• Kemampuan berpikir (reasoning) termasuk didalamnya proses penarikan kesimpulan (inferencing) berdasarkan fakta-fakta dan aturan dengan menggunakan metode heuristik atau metode pencarian lainnya.<br />
<br />
<b>PENCOCOKAN POLA (PATTERN MATCHING)</b><br />
<br />
• AI bekerja dengan metode pencocokan pola (pattern matching) yang berusaha untuk menjelaskan obyek, kejadian (events) atau proses, dalam hubungan logik atau komputasional.<br />
<br />
<b>1.4 Perbandingan Kecerdasan Buatan dengan Kecerdasan Alamiah</b><br />
<br />
<b>Keuntungan Kecerdasan Buatan dibanding kecerdasan alamiah:</b><br />
<br />
• lebih permanen<br />
• memberikan kemudahan dalam duplikasi dan penyebaran<br />
• relatif lebih murah dari kecerdasan alamiah<br />
• Konsisten dan teliti<br />
• Dapat didokumentasi<br />
• Dapat mengerjakan beberapa task dengan lebih cepat dan lebih baik dibanding manusia<br />
<br />
<b>Keuntungan Kecerdasan Alamiah dibanding kecerdasan buatan</b><br />
<br />
• Bersifat lebih kreatif<br />
• Dapat melakukan proses pembelajaran secara langsung, sementara AI harus mendapatkan masukan berupa simbol dan representasi-representasi<br />
• Fokus yang luas sebagai referensi untuk pengambilan keputusan sebaliknya AI menggunakan fokus yang sempit<br />
<br />
Komputer dapat digunakan untuk mengumpulkan informasi tentang obyek, kegiatan (events), proses dan dapat memproses sejumlah besar informasi dengan lebih efisien dari yang dapat dikerjakan manusia, tetapi disisi lain manusia –dengan menggunakan insting- dapat melakukan hal yang sulit untuk diprogram pada komputer, yaitu: manusia dapat mengenali (recognize) hubungan antara hal-hal tersebut, menilai kualitas dan menemukan pola yang menjelaskan hubungan tersebut.<br />
<br />
<b>1.5 Perbedaan Komputasi AI dengan Proses Komputasi Konvensional</b></div><div style="text-align: justify;"><br />
</div><div class="separator" style="clear: both; text-align: justify;"><a href="http://2.bp.blogspot.com/_h89H_lYfnbA/S5aLJv-DqZI/AAAAAAAAAUQ/y1cFJascA_s/s1600-h/6.jpg" imageanchor="1" style="background-color: transparent; color: #ac0604; margin-left: 1em; margin-right: 1em; text-decoration: none;"><img border="0" height="640" src="http://2.bp.blogspot.com/_h89H_lYfnbA/S5aLJv-DqZI/AAAAAAAAAUQ/y1cFJascA_s/s640/6.jpg" style="background-color: white; border: 1px solid rgb(204, 204, 204); margin: 2px 5px 5px 0px; padding: 5px;" width="632" /></a></div><div><br />
</div></span> <br />
<div class="post-footer"> <div class="post-footer-line post-footer-line-1"> <span class="post-author vcard"> Diposkan oleh <span class="fn">Kukuh Maruto Putra</span> </span> <span class="post-timestamp"> di <a class="timestamp-link" href="http://singiters.blogspot.com/2010/04/pengantar-kecerdasan-buatan.html" rel="bookmark" title="permanent link"><abbr class="published" title="2010-04-21T03:25:00-07:00">03.25</abbr></a> </span> <span class="reaction-buttons"> </span> <span class="star-ratings"> </span> <span class="post-comment-link"> </span> <span class="post-backlinks post-comment-link"> </span> <span class="post-icons"> <span class="item-control blog-admin pid-940638726"> <a href="http://www.blogger.com/post-edit.g?blogID=4914541876380432573&postID=6107502061098676452" title="Edit Entri"> <img alt="" class="icon-action" height="18" src="http://img2.blogblog.com/img/icon18_edit_allbkg.gif" width="18" /> </a> </span> </span> <div class="post-share-buttons"> </div></div><div class="post-footer-line post-footer-line-2"> <span class="post-labels"> </span> </div><div class="post-footer-line post-footer-line-3"> <span class="post-location"> </span> </div></div><div class="comments" id="comments"> <a href="" name="comments"></a> <h4> 0 komentar: </h4><div class="pid-940638726" id="Blog1_comments-block-wrapper"> </div><div class="comment-footer"> </div><div class="comment-form"> <a href="" name="comment-form"></a> <h4 id="comment-post-message">Poskan Komentar</h4><br />
<iframe allowtransparency="true" class="blogger-iframe-colorize
blogger-comment-from-post" frameborder="0" height="410" id="comment-editor" name="comment-editor" src="comment-iframe.g?blogID=4914541876380432573&postID=6107502061098676452&blogspotRpcToken=9618023#%7B%22color%22%3A%22rgb%2871%2C%2068%2C%2062%29%22%2C%22backgroundColor%22%3A%22rgb%28255%2C%20255%2C%20255%29%22%2C%22unvisitedLinkColor%22%3A%22rgb%28108%2C%20121%2C%200%29%22%2C%22fontFamily%22%3A%22Georgia%2C%5C%22Times%20New%20Roman%5C%22%2CTimes%2Cserif%22%7D" width="100%"></iframe></div></div>trisna dewa herawatihttp://www.blogger.com/profile/06559881740171074964noreply@blogger.com0tag:blogger.com,1999:blog-6228706114189512088.post-82992681457576917322010-08-14T02:35:00.001-07:002010-08-14T02:35:52.331-07:00Interaksi Manusia dan KomputerPengertian InteraksiPengertian Interaksi<br />
Komunikasi 2 arah antara manusia (user) dan sistem komputer.<br />
Interaksi menjadi maksimal apabila kedua belah pihak mampu memberikan stimulan dan respon (aksi & reaksi) yang saling mendukung, jika salah satu tidak bisa, maka interaksi akan mengalami hambatan atau bahkan menuju pembiasan tujuan.<br />
Definisi interaksi manusia dan komputer<br />
Interaksi manusia dan komputer adalah sebuah hubungan antara manusia dan komputer yang mempunyai karakteristik tertentu untuk mencapai suatu tujuan tertentu dengan menjalankan sebuah sistem yang bertopengkan sebuah antarmuka (interface). atau Interaksi Manusia Komputer merupakan sekumpulan proses, dialog dan kegiatan dimana melaluinya pengguna memanfaatkan dan berinteraksi dengan komputer. Interaksi Manusia dan Komputer suatu disiplin ilmu yang menekankan pada aspek desain, evaluasi, dan implementasi dari sistem komputer interaktif untuk kegunaan manusia dengan mempertimbangkan fenomena-fenomena di sekitar manusia itu sendiri. Juga merupakan suatu studi ilmiah tentang masyarakat di dalam lingkungan kerjanya.<br />
Prinsip kerja komputer = input proses output<br />
Kepada komputer diberikan data yang umumnya berupa deretan angka dan huruf. Kemudian diolah didalam komputer yang menjadi keluaran sesuai dengan kebutuhan dan keinginan manusia.<br />
Tanpa disadari kita (manusia/user) telah berinteraksi atau berdialog dengan sebuah benda (layar monitor), yaitu dalam bentuk menekan tombol berupa tombol angka dan huruf yang ada pada keyboard atau melakukan satu sentuhan kecil pada mouse.<br />
Yang kemudian hasil inputan ini akan berubah bentuk menjadi informasi atau data yang seperti diharapkan manusia dengan tertampilnya informasi baru tersebut pada layar monitor atau bahkan mesin pencetak (printer).<br />
1.1 Sejarah Interaksi Manusia dan Komputer<br />
Interaksi manusia dan komputer merupakan suatu disiplin ilmu yang mengkaji tentang komunikasi atau interaksi diantara pengguna dengan sistem.<br />
Awal munculnya istilah interaksi manusia dan komputer<br />
a. Tahun 1950-an<br />
Pertama kali diperkenalkan secara komersil.<br />
b. Tahun 1970-an<br />
Komputer pribadi(PC), maka berkembanglah penggunaan teknologi ini secara cepat dan mengagumkan ke berbagai penjuru (pendidikan, perdagangan, perusahaan dll) dan muncul isu teknik antarmuka pengguna (userinterface)<br />
c. Pada tahun 1980an<br />
Pertengahan baru di perkenalkan istilah IMK<br />
Model IMK :<br />
1. Pengguna<br />
2. Interaksi<br />
3. Sistem<br />
Tiga komponen ini saling berkaitan. Pengguna adalah bagian dari sistem yang memungkinkan berinteraksi dengan komputer, oleh sebab itu mengapa 3 komponen ini saling berkaitan.<br />
1.2 Tujuan Utama Interaksi Manusia dan Komputer<br />
Interaksi manusia dan komputer pada dasarnya adalah untuk memudahkan manusia dalam mengoperasikan komputer dan mendapatkan berbagai umpan balik yang ia perlukan selama ia bekerja pada sebuah sistem komputer. Artinya sistem tersebut dapat berfungsi dengan baik bisa untuk mengembangkan dan meningkatkan keamanan (safety), utilitas (utility), ketergunaan (usability), efektifitas (efectiveness) dan efisiensi (eficiency)<br />
Dengan kata lain, bertujuan untuk membangun produk reliable;<br />
- mudah dipelajari<br />
- berkesan jika digunakan<br />
- menghasilkan sistem yang bermanfaat (usable)<br />
- aman (safe),dan<br />
- memberi kepuasan serta pengalaman yang menyenangkan<br />
Para perancang antarmuka manusia dan komputer berharap agar sistem komputer yang dirancang dapat mempunyai sifat yang akrab dan ramah dengan users. Namun untuk merancang sistem yang mudah digunakan users, para perancang harus memahami aspek-aspek psikologi yang dimiliki oleh users, karena setiap users mempunyai ciri-ciri khusus dan kebiasaan yang berbeda dalam menggunakan sebuah sistem komputer<br />
1.3 Ruang Lingkup Interaksi Manusia Komputer<br />
MANUSIA<br />
Manusia memiliki keterbatasan dalam memproses informasi dan hal ini mempunyai implikasi pada desain.<br />
1. Informasi diterima dan direspon melalui sejumlah saluran input dan output<br />
- Saluran Visual (visual channel)<br />
- Saluran Pendengaran (auditory channel)<br />
- Saluran Peraba (haptic channel)<br />
- Pergerakan (movement)<br />
2. Informasi disimpan pada memory<br />
- Memory Sensor<br />
- Memory Jangka Pendek<br />
- Memory Jangka Panjang<br />
3. Informasi diproses dan diaplikasikan<br />
- Penalaran<br />
- Pemecahan masalah<br />
- Skill acquisition<br />
- Kesalahan<br />
KOMPUTER<br />
Sistem komputer terdiri dari berbagai macam elemen, yang masing-masing memiliki pengaruh terhadap user. Peralatan input untuk penggunaan secara interaktif memungkinkan user untuk memasukkan teks, menggambar, dan memilih obyek pada layar.<br />
- Text entry : keyboard, speech, handwriting.<br />
- Pointing : secara umum adalah mouse.<br />
Peralatan output untuk penggunaan secara interaktif secara umum adalah beberapa jenis layar serta output dengan suara.<br />
Output dan input dalam bentuk kertas : paperless office dan less-paperless office.<br />
Memory<br />
- Memory jangka pendek : RAM<br />
- Memory jangka panjang : magnetic dan optical disk<br />
- Keterbatasan kapasitas penyimpanan dokumen dan video<br />
- Metode akses yang membatasi dan membantu user<br />
Proses<br />
- Effek dari sistem yang berjalan cepat dan lambat<br />
- Keterbatasan kecepatan pemrosesan<br />
- Jaringan dan pengaruhnya terhadap kinerja sistem<br />
INTERAKSI<br />
Model interaksi membantu kita untuk memahami apa yang terjadi pada interaksi antar user dan sistem. Model mengakomodasi apa yang diinginkan user dan yang dilakukan sistem.<br />
Ergonomi mencakup karakter fisik interaksi dan bagaimana hal tersebut mempengaruhi efektifitas.<br />
Dialog antar user dan sistem dipengaruhi oleh gaya interaksi.<br />
Interaksi terjadi pada konteks sosial dan organisasi mempengaruhi user dan sistem.<br />
- Manusia dan komputer berinteraksi lewat masukan & keluaran melalui antarmuka<br />
•- Fokus : perancangan dan evaluasi antarmuka pemakai (user interface).<br />
•- Antarmuka pemakai : adalah bagian sistem komputer yang memungkinkan manusia<br />
berinteraksi dengan komputer.<br />
2.1 Antarmuka Manusia dan Komputer<br />
• 1. Antarmuka komputer hrs user friendly (ramah dengan pengguna) yaitu :<br />
- antarmuka yg bagus<br />
- mudah dioperasikan<br />
- mudah dipelajari<br />
- pengguna merasa senang menggunakan software tsb.<br />
• 2. Antarmuka yang berkualitas tinggi yg dikagumi oleh orang-orang, beredar luas dan sering ditiru<br />
• 3. Suatu antarmuka/interface yang dibuat seharusnya tidak hanya dapat dilihat, disentuh atau<br />
didengar, tetapi juga mencakup konsep,kebutuhan user untuk mengetahui sistem komputer, dan harus dibuat terintegrasi ke seluruh sistem.<br />
2.2 Bidang studi / ilmu yang berperan dalam interaksi manusia dan komputer yaitu<br />
1. Teknik elektronika & ilmu komputer<br />
memberikan kerangka kerja untuk dapat merancang sistem HCI<br />
2. Psikologi<br />
memahami sifat & kebiasaan, persepsi & pengolahan kognitif, ketrampilan motorik pengguna<br />
3. Perancangan grafis dan tipografi<br />
sebuah gambar dapat bermakna sama dengan seribu kata. Gambar dapat digunakan sebagai sarana dialog cukup efektif antara manusia & komputer<br />
4. Ergonomik<br />
berhubungan dengan aspek fisik untuk mendapatkan lingkungan kerja yang nyaman, misal : bentuk meja & kursi kerja, layar tampilan, bentuk keyboard, posisi duduk, pengaturan lampu, kebersihan tempat kerja<br />
5. Antropologi<br />
ilmu pengetahuan tentang manusia, memberi suatu pandangan tentang cara kerja berkelompok yang masing – masing anggotanya dapat memberikan konstribusi sesuai dengan bidangnya<br />
6. Linguistik<br />
merupakan cabang ilmu yang mempelajari tentang bahasa. Untuk melakukan dialog diperlukan sarana komunikasi yang memadai berupa suatu bahasa khusus, misal bahasa grafis, bahasa alami, bahasa menu, bahasa perintah<br />
7. Sosiologi<br />
studi tentang pengaruh sistem manusia-komputer dalam struktur sosial, misal adanya PHK karena adanya otomasi kantor.<br />
•<br />
2.3 Keuntungan Manusia dapat berinteraksi dengan Komputer adalah :<br />
1. Menghemat waktu untuk mengerjakan pekerjaan perhitungan yang rumit seperti membuat laporan keuangan.<br />
2. Menghemat tenaga, karena manusia mengendalikan komputer untuk melakukan tugas yang berulang seperti menginput transaksi pemebelian, penjualan dll. Tanpa menulis hal yang selalu berulang dari setiap transaksi.<br />
2.4 Implementasi Interaksi Manusia dan Komputer :<br />
1. Untuk kehidupan sehari-hari :kendali lalu lintas udara, reaktor nuklir dan pembangkit listrik.<br />
2. Pemakaian industri dan komersial : perbankan, asuransi, pemesanan barang, pemesanan hotel.<br />
3. Aplikasi hotel, rumah dan hiburan : video game, email, dan paket pendidikan.<br />
4. Eksplorasi, kreatif, dan kerjasama : web, pengambilan keputusan bisnis, dan ensiklopedi<br />
Implementasi IMK dalam kehidupan sehari-hari :<br />
Berikut ini adalah beberapa contoh implementasi IMK dalam kehidupan sehari-hari:<br />
- Penggunaan Komputer<br />
Tanpa disadari kita (manusia/user) telah berinteraksi/berdialog dengan sebuah benda (layar monitor), yaitu dalam bentuk menekan tombol berupa tombol angka dan huruf yang ada pada keyboard atau melakukan satu sentuhan kecil pada mouse, kemudian hasil inputan ini akan berubah bentuk menjadi informasi atau data yang seperti diharapkan manusia dengan tertampilnya informasi baru tersebut pada layar monitor atau bahkan mesin pencetak (printer).<br />
-Penggunaan Automatic Teller Machine (ATM)<br />
Pada ATM yang biasa kita gunakan juga merupakan sebuah Interaksi Manusia dan juga Komputer. Pada sebuah ATM kita dapat melihat sebuah sistem antarmuka (Interface), kita dapat melihat menu-menu yang tesedia pada layar ATM. Melakukan transfer, cek saldo, dsb.<br />
-Penggunaan Laser Pada Operasi Medis<br />
Pada bidang kedokteran IMK juga banyak berperan, seperti Sistem pakar, Operasi medis menggunakan bantuan laser,dsb. Mesin yang telah di desain (coding) sedemikian rupa akan di jalankan untuk melakukan operasi. Spesialis (dokter) melakukan penentuan koordinat pada bagian tubuh yang akan di lakukan operasi. Maka, input atau yang di lakukan Dokter ini akan di terima oleh Mesin, dan akan langsung segera di lakukan pembedahan<br />
2.4 Unsur Interaksi Manusia dan Komputer<br />
Unsur unsur Interaksi Manusia Komputer terdiri :<br />
– Manusia ? bagaimana manusia menerima dan memproses perintah kedalam komputer<br />
– Komputer ? teknologi komputer yang digunakan untuk menerima, memproses, dan menghasilkan Output yang telah diprosesnya<br />
– Interaksi di antara kedua elemen di atas<br />
Pengaruh akibat Interaksi Manusia dan Komputer dalam masa sekarang ini dapat dipandang dari 2 Sudut, yaitu Sudut Kemanusiaan dan Sudut Sosialtrisna dewa herawatihttp://www.blogger.com/profile/06559881740171074964noreply@blogger.com0