BAB I PENDAHULUAN
1.1 Latar BelakangKemajuan 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/non-spesifik (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 .
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 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.
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
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).
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
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.
BAB III KEBUTUHAN
Dalam pembuatan Aplikasi ini, penulis mengunakan beberapa tools dan hardware sebagai pendukung dalam pembuatannya aplikasi ini.
3.1 Hardware
HARDISK 232,88 GB
RAM 2.00 GB
PROCESSOR Intel® Atom ™ CPU Z520 @1.33GHz
VGA 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
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
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.
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:
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 komponen- komponen tersebut adalah dengan membaginya dalam beberapa Panel
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: Fitur tambahan :
UTS+TM+UAS/3 1. Error dialog muncul ketika input nilai
Grade: bukan numerik, nilai tidak diantara
1.90-: A 0-100, atau isian kosong
2.80-89: B 2. Konfirmasi ketika keluar aplikasi
3.70-79: C
Hasil:
1.A-C: Lulus 2.D: Tidak Lulus
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.
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 Properties Values
jFrame Title Aplikasi Penentu Nilai Mahasiswa
jLabel1 Text Nama Lengkap
jLabel2 Text UTS
jLabel3 Text TM
jLabel4 Text UAS
jLabel5 Text Nama
jLabel6 Text Nilai Rata-Rata
jLabel7 Text Grade
jLabel8 Text Hasil
jLabel9 Text -
jLabel11 Text -
jLabel12 Text -
jTextField1 Editable check
jTextField2 Editable check
jTextField3 Editable check
jTextField4 Editable check
jButton1 Text Hitung
jButton2 Text Bersihkan
jButton3 Text Simpan
jButton4 Text Keluar
jPanel1 Background Yellow
jPanel2 TitledBorder Nilai
jPanel3 TitledBorder Hasil
jPanel4 Background Pink
Desain Framenya
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
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:
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 :
maka akan berpindah ke layar editor, tulis kode programnya:
Maka hasilnya setelah di cek akan muncul peringatan seperti ini :
Hasil Running setelah menggunakan Rumus :