Powered By Blogger

Sabtu, 03 Desember 2011

TUGAS BESAR 2 PEMROGRAMAN VISUAL


Kajian 1 Pengenalan Java
Java adalah bahasa pemrograman tingkat tinggi yang berorientasi objek dan program java tersusun dari bagian yang disebut kelas. Kelas terdiri atas metode-metode yang melakukan pekerjaan dan mengembalikan informasi setelah melakukan tugasnya. Kelas-kelas ini diorganisasikan menjadi sekelompok yang disebut paket (package). Kelas merupakan satu-satunya cara menyatakan bagian eksekusi program, tidak ada cara lain. Pada Java program javac untuk mengkompilasi file kode sumber Java menjadi kelas-kelas bytecode. File kode sumber mempunyai ekstensi *.java. Kompilator javac menghasilkan file bytecode kelas dengan ekstensi *.class. Interpreter merupakan modul utama sistem Java yang digunakan aplikasi Java dan menjalankan program bytecode Java.
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. Dengan AWT, dapat membuat window, menggambar, manipulasi gambar, dan komponen seperti Button, Scrollbar, Checkbox, TextField, dan menu pull-down. 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 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.*;

Eclipse : Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse:
  • Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X.
  • Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya.
  • Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya.
Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in.
Netbeans : NetBeans mengacu pada kedua platform kerangka untuk aplikasi desktop Java, dan sebuah lingkungan pengembangan terpadu (IDE) untuk pengembangan dengan Java , JavaScript , PHP , Python , Ruby , Groovy , C , C + + , Scala , Clojure , dan lain-lain.
NetBeans IDE ditulis dalam Java dan berjalan di mana-mana mana JVM diinstal, termasuk Windows, Mac OS, Linux, dan Solaris.Sebuah JDK diperlukan untuk pengembangan fungsionalitas Jawa, tetapi tidak diperlukan untuk pembangunan di bahasa pemrograman lain.
Platform NetBeans memungkinkan aplikasi untuk dikembangkan dari satu set modular komponen software yang disebut modul. Aplikasi berbasis platform NetBeans (termasuk IDE NetBeans) dapat diperpanjang oleh pengembang pihak ketiga .

Kajian 2 Komponen Swing
1.      Panel : Turunan dari Container Class. Sebuah frame atau window tanpa titlebar,
            menubar tidak termasuk border. Superclass dari applet class.

2.      Dialog : Turunan dan korespondensi pada dialog class dalam package AWT. Biasanya
            digunakan untuk menginformasikan sesuatu kepada pengguna atau prompt
            pengguna untuk input.
3.      Container : Abstract Subclass dari Component Class. Sebuah komponen yang dapat
            menampung komponen yang lainnya.

Kajian 3 Layout Manager
Layout manager bertugas menyusun komponen-komponen(button, label, checkbox, dll) di dalam suatu container (panel, frame, dll). Layout manager menentukan posisi dan ukuran setiap komponen di dalam container. Proses ini akan berbeda untuk setiap class layout yang digunakan. AWT dan Swing memiliki beberapa layout manager standar yang penggunaannya seringkali dikombinasikansesuai situasi dan kebutuhan kita.

1.      Flow layout
FlowLayout menyusun komponen berdasarkan ukuran default masing-masing, dengan posisi mulai dari kiri ke kanan dan dari atas ke bawah di dalam container yang digunakan. FlowLayout dapat memiliki “row justification”: LEFT, CENTER, atau RIGHT serta “padding” horizontal/vertical. FlowLayout merupakan default untuk JPanel.
Contoh:
JPanel panel1 = new JPanel();
panel1.setLayout(new FlowLayout());

2.      Grid layout
GridLayout menempatkan komponen dalam bentuk “rectangular grid”. Ada 3 constructor untuk GridLayout:
·         GridLayout(): membuat layout dengan satu kolom per komponen. Hanya satu baris yang digunakan.
·         GridLayout(int rows, int cols): membuat suatu layout berdasarkan jumlah baris dan kolom yang diinginkan.
·         GridLayout(int rows, int cols, int hgap, int vgap): membuat layout berdasarkan jumlah baris dan kolom yang diinginkan, serta ukuran jarak (gap) horisontal maupun vertical untuk setiap baris dan kolom tersebut.

GridLayout menempatkan komponen dengan urutan dari kiri ke kanan dan dari atas ke bawah. GridLayout akan memaksa setiap komponen untuk menempati space container yang kosong serta membagi rata ukuran space tersebut.
Contoh:
frame.add(panel1);
frame.add(panel2);
frame.setLayout(newGridLayout(2, 1));

3.      Border layout
BorderLayout menyusun komponen berdasarkan lokasi geografis: NORTH, SOUTH, EAST, WEST, and CENTER.
BorderLayout merupakan layout default untuk JWindowdan JFrame.
Contoh:
frame.setLayout(new BorderLayout( ));
frame.add(new JButton("Button1"), BorderLayout.NORTH );
frame.add(new JButton("Button2"), BorderLayout.SOUTH );

4.      Box Layout
Javax.swingmemiliki beberapa tambahan layout manager lagi, salah satunya adalah: BoxLayout. Layout manager ini sangat berguna untuk membuat toolbarssederhana atau vertical button bars. Cara kerjanya sangat sederhana yaitu menempatkan komponen dalam satu baris atau satu kolom. Untuk mempermudah penggunaan BoxLayout, Swing menyediakan sebuah kelas yang bernama Boxyaitu sebuah container yang secara otomatismemiliki BoxLayout manager.
Contoh :
Container box = Box.createHorizontalBox( );
box.add(Box.createHorizontalGlue( ));
box.add(new JButton("In the"));

5.      Card Layout
CardLayout merupakan layout manager yang mampu menciptakan efek “tumpukan” komponen. Artinya, layout ini tidak memposisikan komponen di lokasi-lokasi tertentu di dalam kontainer, melainkan menampilkannya satu demi satu.
Contoh :
            CardLayout cards = new CardLayout( );
public Card( ) {
setLayout(cards);
ActionListener listener = newActionListener( ) {
public void actionPerformed(ActionEvent e) {
cards.next(Card.this);
}
};
JButton button;
button = new JButton("one");
button.addActionListener(listener);
add(button, "one");
button = newJButton("two");

6.      Gridbag Layout
Layout ini memampukan kita untuk memposisikan komponen relatif terhadap komponen lainnya berdasarkan constraint tertentu. Dengan menggunakan GridBagLayout, kita dapat menciptakan layout apapun juga, tanpa batas. Komponen disusun pada koordinat tertentu pada sebuah grid yang disebut “logical coordinate”.  Logical coordinate berarti bahwa koordinat suatu komponen ditentukan oleh sekumpulan komponen lainnya. Baris dan kolom dari grid tersebut bersifat “stretch” yang bergantung pada sizedan constraintyang dimilikinya.
Contoh :
constraints = newGridBagConstraints( );
this.setLayout(new GridBagLayout( ));
intx, y; this.addGB(new JButton("North"), x = 1, y = 0);
this.addGB(new JButton("West"), x = 0, y = 1);
this.addGB(new JButton("Center"), x = 1, y = 1);
this.addGB(newJButton("East"), x = 2, y = 1);
this.addGB(new JButton("South"), x = 1, y = 2);


Kajian 4 Event Listener

1.      ActionListener : Mendeteksi aksi yang diberikan dari komponen.
Method :
·         void actionPerformed (ActionEvent e) Mengetahui action yang dilakukan

2.      MouseListener : Mendeteksi tombol mouse yang digunakan
Method : 
·         void mouseClicked (MouseEvent e) Mouse di-click atau ditekan tombolnya kemudian langsungdilepaskan.
·         void mouseEntered (MouseEvent e) Ketika mouse memasuki komponen.
·         void mouseExited(MouseEvent e) Ketika mouse keluar dari komponen.
·         void mousePressed (MouseEvent e) Tombol mouse ditekan.
·         void mouseReleased(MouseEvent e) Tombol mouse dilepaskan
3.      Mouse Motion Listener : Mendeteksi pergerakan mouse
Method :
·         void mouseDragged (MouseEvent e) Mouse dengan posisi ditekan kemudian digerakkan.
·         void mouseMoved (MouseEvent e) Mouse digerakkan tanpa ada tombol yang ditekan.

Kajian 5 Koneksi Java ke Database
kalau buat database MySQL bisa dengan XAMPP, phpmyadmin, SQLyog, dll.
contoh phpmyadmin :
Setelah mempunyai database,.kita butuh library untuk koneksi database dengan java seperti mysql conector java,.
cara koneksikannya (kalau ini,,dengan netbeans),.,
pada file project, klik kanan pada library,,lalu pilih add jar/folder,
lalu masukkan file conectornya,.,

oke,.,setelah semua jurus terkumpulkan,,
saatnya kita buat program di Java, kita buat simple aja,,sebagai contoh.

setelah kita membuat program, kita masukkan library sql di atas class, contoh source code nya,.
import java.sql.*;
public class nama_class extends javax.swing.JFrame {
lalu,,,
deklarassikan Connection dan Statement dengan null
Connection con=null;
Statement st=null;
selanjutnya,,
masukkan source code untuk koneksi sql nya,,,sesuai server, nama database, user, password,..
try {
Class.forName("com.mysql.jdbc.Driver");
//nama database -> contoh,| username -> username | password -> password (username dan password diisikan dari username dan password phpmyadmin).
connection=DriverManager.getConnection("jdbc:mysql://localhost/contoh,"username","password");
//untuk cek kalau sudah conect
System.out.println(“Siiiippppp”);
} catch (Exception e) {
System.err.println("Kesalahan: "+e);
}
kalau sudah conect ke database, ,
kita masukkan source code sql pada button, nya untuk menyimpan, menghapus, atau mengubah ,,..
dengan klik 2x pada button, dan masukkan sourcecode nya,,
disini kita contohkan untuk menyimpan
try {
st=con.createStatement();
String sql="INSERT INTO anggota VALUES ('"+nomor+"','"+nama+"','"+tempat_lahir+"','"+tanggal_lahir+"');";
st.executeUpdate(sql);
st.close();
} catch (Exception e) {
javax.swing.JOptionPane.showMessageDialog(null, "Haha,,,ada yang salah,,, \n"+e);
}
//nomor, nama, tempat_lahir, tanggal_lahir berdasarkan yang di inputkan dari JtextField yang sudah di
//deklarasikan.
Selanjutnya, lihat di database, apakah sudah masuk atau belum data yang di inputkan tadi,.,


Tidak ada komentar:

Posting Komentar