Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] Ai Ti ti n |1
BAB I PENDAHULUAN 1.1 Latar Belakang Kemajuan ilmu dan teknologi saat ini begitu pesat perkembangannya. Dengan perkembangan zaman, banyak orang yang membutuhkan kecepatan akses data sehingga orang berlomba-lomba menciptakan berbagai macam aplikasi dengan berbagai variasi dan inovasi, baik dari segi informatif, edukasi maupun hiburan, salah satunya adalah bahasa pemrograman java. Java merupakan sebuah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin atas bawah yang minimal. Java dapat membuat seluruh bentuk aplikasi, desktop, web dan lainnya, sebagaimana dibuat dengan menggunakan bahasa pemrograman konvensional yang lain. Java adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat dijalankan pada berbagai platform sistem operasi. Perkembangan Java tidak hanya terfokus pada satu sistem operasi, tetapi dikembangkan untuk berbagai sistem operasi dan bersifat open source. Aplikasi-aplikasi berbasis Java umumnya dikompilasi ke dalam p-code (bytecode) dan dapat dijalankan pada berbagai [[Mesin virtual Java|Mesin Virtual Java (JVM)]]. Java merupakan bahasa pemrograman yang bersifat umum/nonspesifik (general purpose), dan secara khusus didesain untuk memanfaatkan dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi Java mampu berjalan di beberapa platform sistem operasi yang berbeda. Permasalahan kali ini adalah membuat program yang didalamnya terdapat pemanggilan sebuah class dimana class yang dibuat dapat dipergunakan pada percobaan-percobaan yang telah dibuat dari komponen-komponen java yang telah tersedia dan bagaimana cara memberikan fungsi terhadap masing-masing komponen tersebut. Pembuatan aplikasi berisikan GUI Component seperti Label, TextField, Button, dan Panel; Logic Programming seperti if-else; dan event yang terdiri dari actionPerformed, keyTyped. Kali ini aplikasi yang di buat adalah Aplikasi Penentu Nilai Mahasiswa dimana pada main program terdapat 12 Label, 4 tombol button, 4 panel dan 4 textfield. 1.2 Maksud dan Tujuan Maksud dan tujuan dari pembuatan Aplikasi Penentu Nilai Mahasiswa pada pemrograman java adalah: a) Memudahkan pengguna dalam menggunakan program aplikasi. b) Mengimplementasikan materi java yang telah dipelajari . c) Memberikan pemahaman lebih tentang penggunaan java khususnya dalam pemanggilan class .
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] Ai Ti ti n |2
1.3 Batasan Masalah Aplikasi ini membatasi masalah – masalah sebagai berikut: a) Aplikasi yang dibuat terdiri dari 3 class, 2 java class dan 1 jFrame Form. b) Perhitungan angka dengan menggunakan operasi tambah, kurang , kali, bagi. c) Aplikasi yang menggunakan beberapa komponen dasar seperti label, textfield , button , panel dan komponen sederhana lainnya . 1.4 Sistematika Penulisan Laporan Laporan tugas ini dibuat dengan sistem penulisan sebagai berikut: BAB I PENDAHULUAN BAB II LANDASAN TEORI BAB III KEBUTUHAN BAB IV HASIL PERCOBAAN
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] Ai Ti ti n |3
BAB II LANDASAN TEORI Dalam pengerjaan Aplikasi ini, digunakan beberapa program. Dalam tahap pembuatan aplikasi digunakan program java sebagai pembuatan aplikasi dari segi tampilan dan menggunakan netbeans sebagai software pengolah bahasa pemrograman java. 2.1 JAVA
Gambar 2.1 Logo Java Java adalah bahasa pemrograman yang dapat dijalankan di komputer atau di telepon genggam. Java juga merupakan bahasa pemrograman tingkat tinggi yang berorientasi objek (OOP) yaitu cara ampuh dalam pengorganisasian dan pengembangan perangkat lunak. Pada OOP, program komputer sebagai kelompok objek yang saling berinteraksi. Deskripsi singkat OOP adalah mengorganisasikan program sebagai kumpulan komponen yang disebut dengan objek. Program java tersusun dari bagian-bagian yang disebut kelas. Kelas itu sendiri terdiri atas metode-metode yang melakukan pekerjaan dan mengembalikan informasi setelah melakukan tugasnya. Para pemrogram Java banyak mengambil keuntungan dari kumpulan kelas di pustaka kelas Java, yang disebut dengan Java Application Programming Interface (API). Kelas-kelas ini diorganisasikan menjadi sekelompok yang disebut paket (package). Jadi ada dua hal yang harus dipelajari dalam Java, yaitu mempelajari bahasa Java dan bagaimana mempergunakan kelas pada Java API. Kelas merupakan satu-satunya cara menyatakan bagian eksekusi program, tidak ada cara lain. Sedangkan pengertian API itu sendiri ialah seperangkat fungsi standar yang disediakan oleh OS atau Bahasa. Dalam Java, API dimasukkan ke dalam package-package yang sesuai dengan fungsinya. Beberapa fungsi java yaitu java merupakan bahasa yang sederhana. Java dirancang agar mudah dipelajari dan digunakan secara efektif. Java tidak menyediakan fitur-fitur rumit bahasa pemrograman tingkat tinggi, serta banyak pekerjaan pemrograman yang mulanya harus dilakukan manual, sekarang digantikan dikerjakan Java secara otomatis seperti dealokasi memori.
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] Ai Ti ti n |4 Grafical User Interface (GUI) adalah salah satu kemampuan Java dalam mendukung dan manajemen antarmuka berbasis grafis. Tampilan grafis yang akan ditampilkan terhubung dengan program serta tempat penyimpanan data. Elemen dasar di Java untuk penciptan tampilan berbasis grafis adalah dua paket yaitu AWT dan Swing. Abstract Windowing Toolkit (AWT), atau disebut juga “Another Windowing Toolkit”, adalah pustaka windowing bertujuan umum dan multiplatform serta menyediakan sejumlah kelas untuk membuat GUI di Java. Dengan AWT, dapat membuat window, menggambar, manipulasi gambar, dan komponen seperti Button, Scrollbar, Checkbox, TextField, dan menu pull-down. 2.2 Swing Pengertian Swing Swing merupakan koleksi komponen GUI yang berjalan secara seragam di setiap plattform murni yang mendukung JVM (Java Virtual Machine). Keseluruhan komponen Swing ditulis menggunakan java sehingga mampu menyediakan fungsionalitas maksimal di platform yang ekuivalen. Hal ini juga membuktikan bahwa portabilitas aplikasi swing sangat tinggi. Swing toolkit menyediakan banyak sekali komponen untuk membangun aplikasi GUI desktop. Swing toolkit juga menyediakan class-class untuk menangani interaksi antara aplikasi dan user menggunakan standard input seperti keyboard dan mouse. Komponen-komponen yang disediakan swing mencakup semua GUI toolkit yang lazim digunakan dalam apilasi desktop, seperti : JTabel, JList, JTree, JButton, JLabel dan masih banyak komponen-komponen lainnya yang sudah teruji dan siap pakai. Komponen-komponen Swing dapat di klasifikasikan dalam tiga bagian, yaitu top level container, intermediate container dan komponen atomic (tunggal) Container tingkat atas (top level) berfungsi untuk menyediakan ruang bagi komponen-komponen lainya. Container jenis ini terdiri daro JFrame, JWindow, JDialog, dan JApplet. Container menengah adalah komponen (non top level) yang keberadaannya untuk menampung komponen lainnya, misal panel, tabbed dan tool bar Komponen atomic berfungsi untuk menampilkan dan/atau menerima informasi. Komponen tunggal memiliki peran penting dalam menghasilkan antarmuka user. Contoh komponen atomic adalah text field, button dan label 2.3 AWT Penggunaan komponen AWT ditandai dengan adanya instruksi : import java.awt.*; Swing merupakan perbaikan kelemahan di AWT. Banyak kelas swing menyediakan komponen alternatif terhadap AWT. Contohnya kelas JButton swing menyediakan fungsionalitas lebih banyak dibanding kelas Button. Selain itu komponen swing
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] Ai Ti ti n |5 umumnya diawali dengan huruf “J”, misalnya JButton, JTextField, JFrame, JLabel, JTextArea, JPanel, dan sebagainya. Teknologi swing menggunakan dan memperluas gagasan-gagasan AWT. Sementara, penggunaan komponen Swing ditandai dengan adanya instruksi : import javax.swing.*; Beberapa perbedaan AWT dan Swing, AWT merupakan komponen heavyweight (kelas berat) sedangkan Swing lightweight (kelas ringan). Swing memiliki lebih banyak komponen. Fasilitas Swing Look and Feel : Metal, Windows, Motif. Komponen Swing berdasar model-view, yaitu suatu cara pengembangan komponen dengan pemisahan penyimpanan dan penanganan data dari representasi visual data. 2.4 Pembahasan Class, Object, Method dan Atribut Dalam program java memiliki bagian-bagian struktur. Adapun bagiannya yaitu class, method dan deklarasi variable sesuai dengan contoh program dibawah, yaitu: Class : suatu frame yang merupakan definisi yang memuat data dan metod pengolah data. Class pada java terbentuk atas atribute (variabel/ciri-ciri) dan behaviour (fungsi). Class mengizinkan Anda dalam mendeklarasikan tipe data baru. Ia dijalankan sebagai blueprint, dimana model dari object yang Anda buat berdasarkan pada tipe data baru ini. Method : Sebuah method menjelaskan behaviour dari sebuah object. Method juga dikenal sebagai fungsi atau prosedur. Variabel : Item yang digunakan data untuk menyimpan pernyataan dari objek. Selain itu terdapat pula bagian struktur lainnya yang ada diluar program dibawah, yaitu: Object : Sebuah entiti yang memiliki keadaan, behaviour dan identitas yang yang tugasnya dirumuskan dalam suatu lingkup masalah dengan baik. Inilah instance sebenarnya dari sebuah class. Ini juga dikenal sebagai instance. Instance dibuat sewaktu Anda meng-instantiate class menggunakan kata kunci new. Atribut : Atribut menunjuk pada elemen data dari sebuah object. Atribut menyimpan informasi tentang object. Dikenal juga sebagai member data, variabel instance, properti atau sebuah field data. Construktor : jenis metod yang akan otomatis dipanggil jika suatu objek dibuat, construktor didefinisikan secara public dan namanya sama dengan nama classnya. Construktor merupakan sebuah tipe khusus dari method yang digunakan untuk membuat dan menginisialisasi sebuah object baru. Ingat bahwa konstruktor bukan member (yaitu atribut, method atau inner class dari sebuah object).
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] Ai Ti ti n |6 Dibawah ini adalah contoh dari class dan objek
Dibawah ini adalah contoh dari penggunaan construktor
2.5 INTERFACE PADA PEMROGRAMAN JAVA Interface adalah jenis khusus dari blok yang hanya berisi method signature (atau constant). Interface mendefinisikan sebuah(signature) dari sebuah kumpulan method tanpa tubuh. Interface mendefinisikan sebuah cara standar dan umum dalam menetapkan sifat-sifat dari class-class. Mereka menyediakan class-class, tanpa memperhatikan lokasinya dalam hirarki class, untuk mengimplementasikan sifat-sifat yang umum. Dengan catatan bahwa interface-interface juga menunjukkan polimorfisme, dikarenakan program dapat memanggil method interface dan versi yang tepat dari method yang akan dieksekusi tergantung dari tipe object yang melewati pemanggil method interface. Untuk memahami lebih mudah, interface sekumpulan dari method-method yang dibuat tapi belum ada operasi di dalam tubuh method tersebut, interface ini bisa diturunkan atau diwariskan kepada class yang ingin memakai method yang ada dalam masing-masing interface tersebut dengan keyword extends [interface yang didefinisikan]. Dan juga sebuah class mengimplementasi 1 interface yang sudah dibuat dengan keyword implements.
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] Ai Ti ti n |7 Ciri-ciri dari interface adalah sebagai berikut.. Method interface tidak punya tubuh, sebuah interface hanya dapat mendefinisikan konstanta dan interface tidak langsung mewariskan hubungan dengan class istimewa lainnya, mereka didefinisikan secara independent. Tidak bisa membuat instance atau objek baru dari sebuah interface. Ciri umum lain adalah baik interface maupun class dapat mendefinisikan method. Bagaimanapun, sebuah interface tidak punya sebuah kode implementasi sedangkan class memiliki salah satunya.
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] Ai Ti ti n |8
BAB III KEBUTUHAN Dalam pembuatan Aplikasi ini, penulis mengunakan beberapa tools dan hardware sebagai pendukung dalam pembuatannya aplikasi ini. 3.1 Hardware HARDISK RAM PROCESSOR VGA
232,88 GB 2.00 GB Intel® Atom ™ CPU Z520 @1.33GHz 763 MB 3.1 Spesifikasi Hardware
3.2 Tools Dalam pembuatan aplikasi ini menggunakan Netbeans.
3.2 NetBeans IDE 7.1.1 NetBeans mengacu pada dua hal, yakni platform untuk pengembangan aplikasi desktop java, dan sebuah Integrated Development Environment (IDE) yang dibangun menggunakan platform NetBeans. Platform NetBeans memungkinkan aplikasi dibangun dari sekumpulan komponen perangkat lunak moduler yang disebut „modul‟. Sebuah modul adalah suatu arsip Java (Java archive) yang memuat kelas-kelas Java untuk berinetraksi dengan NetBeans Open API dan file manifestasi yang mengidentifikasinya sebagai modul.
Platform NetBeans Platform NetBeans adalah framework yang dapat digunakan kembali (reusable) untuk menyederhanakan pengembangan aplikasi desktop. Ketika aplikasi berbasis platform NetBeans dijalankan, kelas Main dari platform dieksekusi. Modul-modul yang tersedia ditempatkan di sebuah registry di dalam memori, dan tugas startup
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] Ai Ti ti n |9 Platform NetBeans menawarkan layanan-layanan yang umum bagi aplikasi desktop, mengijinkan pengembang untuk fokus ke logika yang spesifik terhadap aplikasi. Fitur-fitur yang disediakan oleh platform NetBeans: Manajemen antarmuka (misal: menu & toolbar) Manajemen pengaturan pengguna Manajemen penyimpanan (menyimpan dan membuka berbagai macam data) Manajemen jendela Wizard framework (mendukung dialog langkah demi langkah 2.3 Fungsional Beberapa fungsi JMenu yang digunakan didalam netbeans untuk pembuatan Aplikasi Penentu Nilai Mahasiswa : Class JFrame() Merupakan class yang membentuk sebuah frame (form). Properties defaultCloseOperation: memfungsikan tombol2 yang bisa digunakan untuk keluar dari frame in (menutup frame ini). title: men-set caption (title bar) dengan sebuah string. alwaysOnTop: menjadikan frame ini selalu aktif dimuka jendela lain. background: mengubah warna belakang frame. bounds: mengatur posisi kiri atas (x,y) serta lebar dan tinggi dari frame ini. cursor: mengubah bentuk kursor (mouse) pada saat berada di frame ini. name: mengubah nama frame. resizeble: menjadikan frame dapat berubah ukuran lebar maupun tinggi.
Gambar 3.3 JFrame
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 10 Class JLabel Class ini dipergunakan untuk menambahkan suatu String pada JFrame, dipergunakan untuk keterangan atau label sebuah komponen. Beberapa properties pada class ini sama dengan class JFrame, tetapi ada beberapa yang berbeda. Properties background: mengubah warna belakang. displayedMnemonic: men-set sebuah karakter menjadi hot-key (alt-karakter) pada saat menggunakan keyboard. font: menggunakan font tertentu. icon: mengubah bentuk kursor (mouse) pada saat berada pada class ini. labelFor: pada saat menggunakan hot key, memindahkan kursor ke sebuah komponen tertentu. tooltiptext: menampilkan string bantuan (hint) pada saat pointer berada pada komonen ini. verticalAlignment: posisi string secara vertikal terhadap tinggi (height) class ini. border: menggunakan border (kotak luar) tertentu. Gambar 3.4 jLabel Class JTextField Class ini digunakan untuk memasukan sebuah data (entri data) dimana datanya akan (selalu) ber-tipe string. Properties: Background : mengubah warna belakang. Editable : string didalamnya dapat diubah / tidak dapat diubah. Font : menggunakan font tertentu. Foreground : warna belakang class ini. VerticalAlignment : posisi string secara vertikal terhadap tinggi (height) class ini. Text : isi / nilai dari class ini. Tooltiptext : menampilkan string bantuan (hint) pada saat pointer berada pada komonen ini. Border : menggunakan border (kotak luar) tertentu.
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 11
Gambar 3.5 jTexField Class JButton Class ini akan membentuk sebuah komponen button (command button), yang digunakan untuk memproses. Properties background: mengubah warna belakang. font: menggunakan font tertentu. foreground: warna belakang class ini. Icon: Bentuk pointer pada saat berada di komponen ini. Mnemonic: men-set sebuah karakter menjadi hot-key (alt-karakter) pada saat menggunakan keyboard. Text: Value dari pada tombol. tooltiptext: menampilkan string bantuan (hint) pada saat pointer berada pada komonen ini. border:
menggunakan border (kotak luar) tertentu.
Gambar 3.6 jButton
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 12
Class JPanel Adalah komponen container, artinya komponen ini dapat mengakomodasikan komponen-komponen AWT lainnya Setiap Jpanel dapat mempunyai Layout sendiri dan dapat mengendalikan Event maupun Action untuk JPanel tersebut. Sehingga bila aplikasi terdiri atas banyak komponen, maka jalan terbaik untuk menampilkan komponenkomponen tersebut adalah dengan membaginya dalam beberapa Panel
Gambar 3.7 jPanel
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 13
BAB IV HASIL PERCOBAAN Bab ini akan menjelaskan tampilan – tampilan form pada aplikasi yang telah diselesaikan. Berikut permasalahannya : Mahasiswa Sting nama; int uts; int tugas; int uas; + Set/Get + const : Mhs() Mhs(_,_,_,_) Hasil getRata() get Grade() getHasil() Const : Hasil() Hasil(_,_,_,_) Nilai Rata-Rata: UTS+TM+UAS/3 Grade: 1.90-: A 2.80-89: B 3.70-79: C Hasil: 1.A-C: Lulus 2.D: Tidak Lulus
Fitur tambahan : 1. Error dialog muncul ketika input nilai bukan numerik, nilai tidak diantara 0-100, atau isian kosong 2. Konfirmasi ketika keluar aplikasi
Dan frameform yang akan dibuat adalah frame Aplikasi Penentu Nilai Mahasiswa.
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 14
Sebelum membuat framenya, kita harus membuat kelas terlebih dahulu, dan dalam percobaan ini dibuat class Mahasiswa () dan class Hasil () yang merupakan turunan dari class Mahasiswa. Class Mahasiswa
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 15
Class Hasil
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 16
Selanjutnya membuat desain untuk framenya, fungsi yang dibutuhkan adalah 12 class jLabel, 4 tombol jbutton, 4 jpanel dan 4 jTextfield.
Lalu mulailah dengan mendesain Framenya sesuai property berikut : Class jFrame jLabel1 jLabel2 jLabel3 jLabel4 jLabel5 jLabel6 jLabel7 jLabel8 jLabel9 jLabel10
Properties Title Text Text Text Text Text Text Text Text Text Text
Values Aplikasi Penentu Nilai Mahasiswa Nama Lengkap UTS TM UAS Nama Nilai Rata-Rata Grade Hasil -
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 17 jLabel11 jLabel12 jTextField1 jTextField2 jTextField3 jTextField4 jButton1 jButton2 jButton3 jButton4 jPanel1 jPanel2 jPanel3 jPanel4 Desain Framenya
Text Text Editable Editable Editable Editable Text Text Text Text Background TitledBorder TitledBorder Background
check check check check Hitung Bersihkan Simpan Keluar Yellow Nilai Hasil Pink
Untuk menjelaskan beberapa bagian dari tiap form beserta kode programnya, kita harus memanggil kelas Hasil() yang sudah menjadi turunan dari class Mahasiswa () terlebih dahulu dengan menulis kode program:
Untuk meng-klik tombol Hasil, maka akan mengeksekusi nama, rata-rata yang dihitung dari pembagian antara jumlah nilai uts, tm dan uas, lalu grade dan hasil yang dilihat dari nilai rata-rata. Berarti kita harus menuliskan kode program pada
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 18 tombol Hasil. Klik 2 kali pada tombol Hasil, maka akan berpindah ke layar editor, tulis kode programnya:
Kode program Bersihkan: jika meng-klik tombol rese, maka kita harus menuliskan kode program pada tombol ini. Klik 2 kali pada tombol Reset, maka akan berpindah ke layar editor, tulis kode programnya:
Kode Program Simpan: jika meng-klik tombol simpan, berarti kita harus menuliskan kode program pada tombol ini. Klik 2 kali pada tombol simpan, maka akan berpindah ke layar editor, tulis kode programnya:
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 19
Kode Program keluar : jika meng-klik tombol keluar, maka akan menutup aplikasi ini. Klik 2 kali pada tombol keluar, maka akan berpindah ke layar editor, tulis kode programnya:
Pada saat mengisi pada kolom UTS, TM ataupun UAS masih belum diatur variabelnya, maka kita akan mengunci type text agar difokuskan kepada integer, langkahnya :
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 20
maka akan berpindah ke layar editor, tulis kode programnya:
Maka hasilnya setelah di cek akan muncul peringatan seperti ini :
Konfirmasi ketika keluar aplikasi :
Laporan Hasil Percobaan [Aplikasi Penentu Nilai Mahasiswa] A i T i t i n | 21
Hasil Running setelah menggunakan Rumus :
Ketika menghitung akan muncul error dialog jika isian Nama kosong :