Pemrograman Java III Model Program Perhitungan Gaji Pegawai Berbasis Java Tugas ini disusun untuk memenuhi salah satu syarat penilaian Mata Kuliah Pemrograman Java III Semester Ganjil Tahun Ajaran 2011-2012 Disusun Oleh : MEGA APRILIANTI NPM. 1142225 Jurusan Teknik Informatika Sekolah Tinggi Manajemen Informatika dan Komputer STMIK AMIKBANDUNG
BAB I PENDAHULUAN Seiring dengan perkembangan teknologi,saat ini banyak jenis model aplikasi yang telah diciptakan dan berkembang dengan sangat variatif. Banyak sekali bahasa pemprograman yang bisa kita pakai untuk membuat berbagai macam aplikasi tersebut, salah satunya adalah bahasa pemprograman java. Java adalah salah satu fitur dalam pemrograman java dimana output atau hasil yang diperoleh adalah program dengan tampilan grafis. Java banyak disupport oleh IDE (Integrated Development Environment) ternama yang kehadirannya dapat membantu pekerjaan programmer dengan mudah karena dengan IDE telah disediakan template-template mudah yang tinggal di drop n drag tanpa perlu mengimport fungsi itu dengan script yang biasanya agak merepotkan bagi kalangan programmer pemula. Dengan adanya IDE seperti eclipse, Netbeans, dan lain-lain programmer hanya perlu menuliskan kode perintah untuk mengendalikan bagianbagian GUI yang ingin dipakai sesuai dengan kebutuhan programmer. Dimana bahasa ini juga dirancang untuk pemrograman di Internet agar aman dan portabel. Pada tugas kali ini penulis mencoba membangun model aplikasi untuk program perhitungan gaji pegawai di sebuah perusahaan. Dimana model aplikasi program perhitungan ini dibangun dengan dua buah class, yaitu class employee dan class process. Terdiri dari atribut number of employee, employee, group dan status. Dan dilengkapi method penentuan gaji menurut salarynya, pemberian subsidy kepada employee dan hitung total salary employee. Dan untuk pembangunan kali ini dilakukan berbagai macam pengembangan, seperti penggunaan JRadioButton, dan JButtonGroup. Selain itu juga dugunakan pengembangan dalam memberikan hasil output berupa message pada JButton tertentu Gambar 1.1 Model Aplikasi
BAB II LANDASAN TEORI Untuk membangun aplikasi pada program ini penulis menggunakan berbagai konsep ilmu dan aplikasi yang bersifat interface yang member kemudahan bagi para programming dalam membangun sebuah aplikasi. Berikut masing-masing pembahasannya : 2.1 Konsep OOP Merupakan sebuah konsep pemrograman yang diciptakan guna mengembangkan sebuah aplikasi. Dimana dalam konsep ini dalam pembangunan aplikasinya lebih berorientasikan kepada objek-objek tertentu,yang kemudian bergabung untuk membentuk sebuah entity. Sama halnya dengan bahasa pemrograman pada umumnya konsep yang berorientasikan objek digunakan dalam Java juga sama dengan bahasa pemograman lainnya. Hanya saja pasti terdapat berbagai perbedaan dalam proses penerapan konsepnya, karena setiap konsep memiliki penjelasan masing-masing terhadap ilmunya. Dimana objek yang terdapat dalam sebuah aplikasi memiliki kondisi dan sifat tertentu. Sebuah objek memiliki variable sebagai tempat untuk menentukan kondisinya. Dan menerapkan sifatnya dengan cara tertentu. Jadi, objek merupakan bagian dari aplikasi yang ikut menentukan sebuah aplikasi dapat terbangun dengan masing-masing variabelnya dan memiliki berbagai cara untuk menghubungkan variable yang ada di dalamnya. Dalam konsep OOP sebuah objek merupakan bentuk nyata yang dibentuk dari sebuah class. Yang menyimpan sendiri variabel didalamnya dan memiliki nilai dan cara tertentu untuk membentuk sebuah aplikasi. 2.2 Class Class merupakan tempat untuk membuat sebuah objek yang memiliki bentuk fisik dan variable tertentu dalam sebuah program. Sebuah class harus menggambarkan cara yang dimiliki sebuah objek lalu membuat implementasinya. Didalam class kita dapat membentuk berbagai objek yang diperlukan demi pembentukan dan pengembangan sebuah program. 2.3 Netbeans NetBeans merupakan Integrated Development Environment (IDE) berbasiskan Java dari Sun Mycrosystem yang berjalan di atas Swing. Dimana Swing merupakan sebuah teknologi Java untuk pengembangan aplikasi Desktop yang dapat berjalan di berbagai macam platforms. Dimana platform tersebut memungkinkan aplikasi dibangun dari sekumpulan modul yang merupakan arsip dari Java yang menyimpan class Java agar dapat berhubungan langsung dengan sebuah open application programming interface.
Dimana Application Programming Interface (API) merupakan kumpulan dari pustaka class atau komponen atau library, yang sudah disediakan oleh Sistem Operasi, yang berupa kumpulan perintah yang membentuk sebuah komonen, dimana dalam pengerjaannya NetBeans yang menggunakan application programming interface banyak memberi kemudahan untuk para programmer dalam membangun aplikasi. Dengan aplikasi ini kita bisa mendesign berbagai model program sesuai dengan yang kita inginkan karena didalamnya juga terdapat FrameFrom. FrameFrom sendiri membuat penyusunan model program secara praktis, lengkap dengan berbagai macam properties. Terlebih lagi design yang telah terancang telah otomatis berisi syntak programnya. Sehingga pembangunan model program yang direncanakan dapat disusun dengan mudah. Selain FrameFrom, di dalam NetBeans juga terdapat Event yang mewakili sebuah peristiwa sebuah objek ketika tombol ditekan. Untuk tugas kali ini penulis menggunakan program tersebut untuk membuat model aplikasi program perhitungan transaksi penjualan. diantaranya : Adapun dalam membuat model perhitungan menggunakan beberapa properties, a. JFrame() JFrame digunakan untuk membentuk sebuah frame (form). Di dalam JFrame terdapat bermacam-macam properties, seperti : 1) defaultcloseoperation : untuk memfungsikan tombol-tombol yang bisa digunakan untuk dapat keluar dari sebuah frame. 2) title : untuk menset caption (title bar) dengan sebuah string. 3) alwaysontop : untuk menjadikan sebuah frame selalu aktif di muka jendela lain. 4) background : untuk mengubah warna belakang frame 5) bounds : untuk mengatur posisi kiri atas (x, y) serta lebar dan juga tinggi dari frame. 6) cursor : untuk mengubah bentuk cursor (mouse) pada saat berada di sebuah frame. 7) name : untuk mengubah nama frame. 8) ressizeble : untuk menjadikan frame dapat gambar 2.1 Properties JFrame berubah ukuran lebar maupun tingginya. b. JLabel () Jlabel digunakan untuk menambahkan suatu string pada JFrame, dan dipergunakan untuk member keterangan atau label sebuah komponen. Beberapa properties pada class ini sama dengan class JFrame, tetapi ada beberapa yang berbeda, diantaranya :
1) background : untuk menubah warna belakang label. 2) displayedmnemonic : untuk men-set sebuah character menjadi hot-key (alt-carachter) pada saat menggunakan keyboard. 3) font : untuk menggunakan beberapa jenis font tertentu. 4) Icon : untuk mengubah bentuk cursor (mouse) pada saat berada pada class ini. 5) laberfor : untuk digunakan pada saat hot-key, memindahkan cursor ke sebuah komponen tertentu. 6) tooltiptext : untuk menampilkan strin bantuan (hint) pada saat pointer berada pada komponen ini. Gambar2.2 Properties JLabel 7) verticaalignment : untuk posisi string secara vertical terhadap tinggi (height) class ini. 8) border : untuk menggunakan border (kotak luar) tertentu. c. JTextfield() JTextfield digunakan untuk memasukkan sebuah data (entry data ) dimana datanya akan (selalu) bertype String. 1) Background : untuk mengubah warna belakang. 2) editable : untuk mengubah atau tidak bentuk string di dalamnya. 3) font : untuk menggunakna font tertentu. 4) foreground : untuk warna belakang class ini. 5) verticalalignment:untuk posisi secara vertical terhadap tinggi (height) class ini. 6) text : merupakan isi atau nilai text ini. 7) tooltiptext : untuk menampilkan string bantuan (hint) pada saat pointer berada pada komponen ini. 8) border : untuk menggunakan border (kotak luar tertentu). Gambar 2.3 Properties JTextfield
d. JButton() JButton digunakan untuk membentuk sebuah komponen button (command button), yang digunakan untuk memproses sebuah program, diantaranya : 1) Background : untuk mengubah warna belakang button. 2) Font : untuk memilih berbagai jenis font tertentu. 3) Foreground : untuk mengatur warna belakang class ini. 4) Icon : untuk mengubah bentuk pointer pada saat berada di komponen ini. 5) Mnemonic : untuk men-set sebuah character menjadi hot-key (alt-character) pada saat menggunakan keyboard. 6) Text : untuk membuat value pada tombol. 7) Tooltiptext : untuk menampilkan string bantuan (hint) pada saat pointer berada pada komonen ini. 8) Border : untuk menggunakan border (kotak luar) tertentu. Gambar 2.4 Properties JButton e. JRadioButton() JRadioButton digunakan apabila dalam menu yang boleh dipilih hanya satu, dalam hal ini seperti pemilihan status employee married atau single, dan JRadioButton sendiri terdiri dari beberapa properties, diantaranya : 1) Background : digunakan untuk mengubah warna belakang Radio button 2) ButtonGrroup : digunakan untuk menentukan Kelompok button mana yg akan digunakan 3) Font : digunakan untuk memilih jenis font 4) Foreground : digunakan untuk mengatur warna Belakang class 5) Mnemonic : digunakan untuk men-set sebuah Character menjadi hot-key (alt-character) pada saat menggunakan keyboard 6) Text : digunakan untuk membuat value pada tombol 7) TooltipText : digunakan untuk menampilkan string bantuan (hint) pada saat pointer berada pada komonen ini Gambar 2.6 Properties JRadioButton f. JButtonGroup JButtonGroup sama kegunaannya dengan jradiobutton hanya saja jbutton group untuk penentuan group button mana yang akan digunakan agar radiobutton hanya dapat memilih salah satu item. g. Event Event dipergunakan untuk mengatur label, text field, button, dan windowsnya sendiri agar design frame yang sebelumnya telah dibuat bisa dijalankan.
Untuk membuat aplikasi pemrograman ini penulis menggunakan beberapa event, diantaranya : 1) Event Action Performed : untuk mengatur hanya pada label, text field, dan button tertentu (private). 2) Event Windows Activated [fromwindowactivated] : untuk mengatur pada sebuah program secara keseluruhan (public). 3) Event Key Type : untuk mengatur pada variabel yang diturunkan agar dapat dibatasi sesuai yang kita tentukan (protect). d. Message Merupakan sebuah tampilan dari hasil running aplikasi dalam bentuk pesan. e. FrameFrom Merupakan sebuah frame yang digunakan untuk membuat design model aplikasi. Dimana di dalamnya terdapat palette yg berisi beberapa swing yg bisa kita gunakan untuk membangun design aplikasi, juga dilengkapi dengan properties untuk mengatur tampilan dari palette yg kita gunakan.
BAB III ANALISIS Dalam pembuatan model aplikasi perhitungan ini, penulis menggunakan beberapa tools dan hardware sebagai pendukung, diantaranya adalah : 3.1 Hardware Hardisk Installed Memory (RAM) 1.6 GB 1.00 GB Processor Intel Core 2CPU T7500@2.20 Tabel 3.1 Spesifikasi Hardware GHz 2.20 GHz VGA 252 MB 3.2 Tools Untuk pembuatan model aplikasi ini penulis menggunakan aplikasi NetBeans IDE 6.8. Gambar 3.2 Aplikasi Netbeans IDE 6.8 NetBeans sendiri menyediakan pembangun Graphic User Interface (GUI), suatu text atau kode editor, suatu complier atau interpreterdan suatu debugger. Dimana dengan aplikasi netbeans kita akan sangat mudah dalam membangun aplikasi yaitu dengan membuat Model View Control(MVC), yaitu dengan mendesign tampilan aplikasi secara praktis dengan Framefrom dan mengatur keluaran dari masing-masing tombolnya dengan Event.
BAB IV IMPLEMENTASI Dalam pembuatan aplikasi program perhitungan gaji pegawai dibutuhkan beberapa elemen, diantaranya : 4.1 Atribut (dengan type data ex.integer) a. NoE b. Employee c. Group d. Status 4.2 Method a. nilai untuk Salary berdasarkan jenis groupnya b. nilai untuk Pemberian subsidy berdasarkan statusnya c. nilai untuk Total Gaji Karyawan e. hitung Total Gaji f. tampilan message process 4.3. Class a. nama class : employee b. class tambahan : process b. field : string.noe dan string.employee int.goroup, int.status c. method : +set NoE()+getNoE *bisa untuk atribut lainnya *untuk memberi nilai : (set ) *untuk mengambil nilai : (get ) 4.5 Proses Pembuatan Aplikasi Dalam membangun aplikasi pemrograman perhitungan gaji pegawai ini dibutuhkan beberapa tahapan, seperti : a. Tahap 1 Membuat class employee yang berisi atribut NoE(string), Employee(string), Group(int), dan Status(int).
b. Tahap 2 Membuat class process yang berisi method untuk nilai salary employee menurut groupnya, nilai untuk total salary employnya, dan juga untuk tampilan atribut dari aplikasi berupa pesan. c. Tahap 3 Setelah membuat class proses, selanjutnya penulis membuat design model dari aplikasi perhitungannya. Dimana dalam pembangunan model aplikasinya dibutuhkan 4 buah label, 3 buah jtextfield, 3 buah button, 2 buah radio button, dan button group. Gambar 4.5 Design Model Aplikasi
Setelah itu lalu design sesuai dengan properties berikut : Class Properties Value JLabel1 Text Number of Employee Mnemonic N JLabel2 Text Employee Mnemonic E JLabel3 Text Group Mnemonic G Jlabel4 Text Status JTextfield1 Text Chek JTextfield2 Text Chek JTextfield3 Text Chek JRadioButton1 Text Married Mnemonic M JRadioButton2 Text Single Mnemonic S JButton1 Text Process Mnemonic P JButton2 Mnemonic R Text Reset JButton3 Mnemonic F Text Tooltiptext Finish Click to end program Setelah dilakukan berbagai macam pengaturan pada elemen-elemen tertentu maka hasil dari design program perhitungan tersebut, adalah seperti dibawah ini : Gambar 4.5.2 Model Aplikasi
d. Tahap 4 Setelah model selesai dibuat, selanjutnya kita tinggal memberi syntak yang diperlukan pertama pada JFrame. Klik kanan > Event > Window > WindowAcrivated[fromWindowActivated].. Berikan inputan syntak pada windowactived,nya. Lalu berikan syntak pada button hapus tujuannya adalah pada saat di run tampilan awal pada textfield akan kosong, dan siap untuk di input data baru. Klik kanan button reset > Event > Action > ActionPerformed Setelah button reset selanjutnya penulis memberi member syntak pada button process diman di dalamnya juga dipanggil class process yang berisi method dan merupakan turunan dari class employee dimana terdapat atribut-atribut aplikasi.
Pada syntak diatas juga terdapat syntak untuk menampilkan sebuah pesan lain yakni ketika kita tidak mengisi button NoE maka akan muncul pesan yang berisi perintah untuk memasukkan data employee terlebih dahulu. Lalu diberikan tambahan syntak pada JTextfield3 yaitu isisan label Group, dimana diberi batasan bahwa pada field tesebut hanya bisa diisikan angka menurut groupnya yaitu hanya bisa input angka 1-4, dan kalau selain itu maka akan timbul pesan berisi pemberitahuan untuk input angka 1-4. Dan hasilnya akan muncul tampilan seperti dibawah ini. Dan setelah class proses dipanggil maka ketika running rumus pemanggilan yang telah kita berikan dalam class process lalu diturunkan dalam class pegawai akan dapat menghasilkan perhitungan total salary employee seperti yang ditunjukkan pada gambar dibawah ini.
Gambar 4.5.3 Running Button Process Setelah proses perhitungan bisa dijalankan, button reset dapat mengembalikan keadaan program ke semula dan siap diinput kembali. Maka untuk yang terkahir penulis menambahkan syntak di button finish yang fungsinya menutup aplikasi yang sebelumnya telah kita jalankan, sehingga apabila aplikasi yang kita gunakan telah selesai maka dengan menekan button Finish aplikasi tersebut bisa tertutup otomatis. Dengan Klik kanan button Selesai > Event > Action > ActionPerformed
BAB V PENUTUP Untuk membuat berbagai macam model aplikasi kita dapat menerapkan beberapa atribut dan variasi dengan sangat mudah dan beragam, tentunya dengan banyak pengetahuan yang kita miliki. Karena dengan adanya aplikasi yang kini sudah berkembang dimasyarakat, sangat mempermudah sekali penulis untuk membuat berbagai jenis model aplikasi. Contohnya menggunakan NetBeans kita dapat mencuptakan aplikasi hanya dengan membuat modelnya terlebih dahulu dan kita bisa melakukan banyak variant sesuai dengan keinginan kita. Sehingga berbagai model aplikasi dapat dibangun dengan lebih mudah. Tentunya aplikasi apapun hanya akan dapat tercipta dengan kerjakeras dan kemauan yang tinggi yang kita miliki.