LAPORAN TUGAS 3 PENGGUNAAN PROGRAM TRANSAKSI PENJUALAN DENGAN JAVA Diajukan untuk memenuhi salah satu tugas dari matakuliah Pemrograman III Oleh : Ai Titin 1142228 SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER “AMIKBANDUNG” STMIK “AMIKBANDUNG” Jl. Jakarta No.28 Bandung 40272 1.1 Latar Belakang BAB I PENDAHULUAN 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 didisain untuk memanfaatkan dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi Java mampu berjalan di beberapa platform sistem operasi yang berbeda. 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. Interface merupakan 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 masingmasing interface tersebut dengan keyword extends [interface yang didefinisikan]. Dan juga sebuah class mengimplementasi 1 interface yang sudah dibuat dengan keyword implements. Aplikasi dengan menerapkan system interface pada pemrograman java ini menggambarkan bagaimana mengimplementasikan materi bahasa pemrograman java berbasis aplikasi desktop yang dihubungkan dengan class beserta turunan dari class lain. Selain itu juga dijelaskan bagaimana cara menggunakan aplikasi java yang kemudian memanggil class yang telah dibuat sebelumnya supaya dapat dipergunakan pada percobaan-percobaan yang telah dibuat dari komponenkomponen java yang telah tersedia dan bagaimana cara memberikan fungsi terhadap masing-masing komponen tersebut. 1.2 Maksud dan Tujuan Maksud dan tujuan dari pembuatan Aplikasi dengan menerapkan system interface 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) Perhitungan angka dengan menggunakan operasi tambah, kurang , kali, bagi dan persen. b) Aplikasi yang menggunakan beberapa komponen dasar seperti label, textfield , button , dan komponen sederhana lainnya . 1.4 Sistematika Penulisan Laporan Laporan tugas akhir ini dibuat dengan sistem penulisan sebagai berikut: BAB I PENDAHULUAN BAB II LANDASAN TEORI BAB III ANALISIS BAB IV IMPLEMENTASI BAB II LANDASAN TEORI Didalam pengerjaan Aplikasi dengan menerapkan system interface pada pemrograman java digunakan beberapa program. Dalam tahap pembuatan aplikasi digunakan program java sebagai pembuatan aplikasi dari segi tampilan dan menggunakan netbeans sebagai software pengola 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. Dalam program java memiliki bagian-bagian struktur. Adapun bagiannya yaitu class, method dan deklarasi variable sesuai dengan contoh program dibawah, yaitu: Class : 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. Konstruktor : 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). 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 2.2 JFrame 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 2.3 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. Gambar 2.4 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 2.5 jButton 2.2 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 interfaceinterface 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 sekumpula 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. 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. 2.3 OOP OOP merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya, Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat. Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita tidak melihat bagaimana cara menyelesaikan suatu masalah tersebut (terstruktur) tetapi objek-objek apa yang dapat melakukan pemecahan masalah tersebut. Bahasa pemrograman yang mendukung OOP antara lain: 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Visual Foxpro Java C++ Pascal Visual Basic.NET SIMULA Smalltalk Ruby Python PHP C# Delphi Eiffel Perl Adobe Flash AS 3.0 BAB III ANALISIS Dalam pembuatan Aplikasi dengan menerapkan system interface pada pemrograman java ini, penulis mengunakan beberapa tools dan hardware sebagai pendukung dalam pembuatannya aplikasi ini. Tools yang digunakan adalah : 3.1 Hardawe HARDISK RAM PROCESSOR VGA 232,88 GB 2.00 GB Intel(R) Atom(TM) 1.33GHz 763 MB CPU Z520 @1.33GHz 3.2 Tools Dalam pembuatan aplikasi ini menggunakan Netbeans. 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 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 BAB IV IMPLEMENTASI Bab ini akan menjelaskan tampilan – tampilan form pada aplikasi yang telah diselesaikan. Berikut permasalahannya : 1. Diketahui sebuah entitas barang ( kode, nama barang, harga). 2. Lalu entitas tersebut dijadikan sebuah transaksi jual ((barang), qty, harga jual, total). Barang Sting kode; String nama; integer harga Method of barang Jual Int qty; Int harga jual; Int total; Method of jual Harga Jual = Dinaikkan 5% dari Harga Toatal = Harga Jual x qty 3. Cat : jual dapat didefinisikan sebagai turunan dari class barang, lalu buat antar mukanya ! Dan frameform yang akan dibuat adalah frame View of Transaction. Sebelum membuat framenya, kita harus membuat kelas terlebih dahulu, dan dalam percobaan ini dibuat class barang () dan class Jual () yang merupakan turunan dari class Barang. Class Barang Class jual Selanjutnya membuat desain untuk frame View of transaction, fungsi yang dibutuhkan adalah 5 class jLabel, 5 jTextField dan 3 komponen jButton. Lalu mulailah dengan mendesain Framenya Class jLabel1 jLabel2 jLabel3 jLabel4 jLabel5 jTextField1 jTextField2 jTextField3 jTextField4 jTextField2 jTextFiel5 jButton1 jButton2 Properties Text labelFor Text labelFor Text labelFor Text labelFor Text LabelFor Text Tooltoptext Text Tooltoptext Text Tooltoptext Text Tooltoptext Text Text Mnemonic Tooltoptext Text Values Kode Barang jTextField1 Nama Barang jTextField2 Harga jTextField3 Quantity jTextField4 Total Jtextfield5 101 Masukkan kode barang BUKU Masukkan nama barang 20000 Masukkan nilai harga 5 Masukkan banyaknya jumlah barang BlandText Proses P Hitung dari Total Reset jButton3 Desain Framenya Mnemonic Tooltoptext Text Mnemonic Tooltoptext R Hapus dan ulang Selesai S Klik jika sudah selesai Hasilnya Untuk menjelaskan beberapa bagian dari tiap form beserta kode programnya, kita harus memanggil kelas Jual yang sudah menjadi turunan dari class Barang () terlebih dahulu dengan menulis kode program: Untuk meng-klik tombol proses, maka akan menghitung hasil dari harga yang sudah dijumlahkan dengan 5% dari harga awal sehingga ketika mengklik proses, harga otomatis berubah menjadi harga jual yang telah dikalikan dengan quantity (banyaknya jumlah barang), dengan memasukkan kode barang, nama barang, harga dan quantity yang di input. Berarti kita harus menuliskan kode program pada tombol Proses. Klik 2 kali pada tombol Proses, maka akan berpindah ke layar editor, tulis kode programnya: Agar kursor selalu memfokuskan pada jari-jari saat aplikasi dijalankan, kita harus membuat kode program pada windownya dan mengosongkan TextFieldnya dengan menulis kode programnya: Kode program Reset bisa diambil dari windowActive: jika meng-klik tombol selesai, tutup aplikasi ini. Berarti kita harus menuliskan kode program pada tombol ini. Klik 2 kali pada tombol Selesai, maka akan berpindah ke layar editor, tulis kode programnya: Pada saat mengisi pada kolom Harga 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 frame setelah menggunakan Tooltoptext: Hasil Running setelah menggunakan Rumus :