You are on page 1of 22

Dr.

Galip AYDIN
http://web.firat.edu.tr/bilmuh/bmu112/

 Ders Notları
 Kaynaklar
 Araçlar
 Duyurular
 Java ile Görsel Programlama
 AWT ve Swing uygulamaları
 Java Appletler
 JavaFX
 Veri Yapıları
 Diziler, Yığın, Kuyruk, Liste, Ağaç yapıları
 Nesne Tabanlı Programlama
 Nesnelerin yeniden kullanımı, Kompozisyon
 Kalıtım ve Polimorfizm
 Soyut Sınıflar ve Arayüzler
 Java ile veritabanı uygulamalarına giriş
(JDBC - Java Database Connectivity)
 Java ile Internet programlamaya giriş
 Web Servers,
 (JSP - Java Server Pages)
 JDK (Java Development Kit)
 JDK 6 Update 12
 http://java.sun.com/javase/downloads/index.jsp
 JRE (Java Runtime Environment)
 NetBeans 6.5 IDE
 http://www.netbeans.org/downloads/index.html
 Geniş Kapsamlı bir Dönem Projesi
 Proje Konuları
 Takımlar (? kişi)
 Ara raporlar
 Proje notları
 Oyunlar
 Super Mario, Tank vs., Trivia, Genel Kültür, Var
mısın Yok musun?
 Dosya yöneticisi
 Dosya arama, karşılaştırma, duplicate dosyaları
bulma, batch dosya işlemleri vs.
 Web tabanlı otomasyon, kayıt sistemi...
 Java FX ?
Dr. Galip AYDIN
 AWT ve Swing
 AWT, (Abstract Window Toolkit) ilk java ile birlikte gelistirilen temel grafik
arayuz olusturma kutuphanesine verilen isimdir. Ancak Java 2 platformu
ile birlikte AWT'nin yetersiz gorulmus ve cok daha genis ve gelismis
ozelliklere sahip Swing kutuhanesi sisteme eklenmistir. Ozellikle cok
platform destekleyen yazilimlarda kullanici arayuzu gelistirme araci
olarak swing halen onemini korumaktadir.
 Swing, onceleri isletim sisteminin kullandigi donanim grafik hizlandirma
araclarini kullanmadigindan yavasligi ile elestirilere hedef olmustu.
Ozellikle Java 1.4 ile Swing, hem genel olarak sanal makinenin hizlanmasi
ve kismen donanim hizlandirmayi kullanmasi ile bu kotu sohretinden
siyrilmaya basladi. Java 1.5 ile donanim, ozellikle OpenGL kullanimi ve
yeni arayuz gosterim sekli ile java'nin masaustu uygulama gelistirmede
populerlesmesi bekleniyor. AWT halen swingin bir alt katmaninda, temel
2 boyutlu grafik islemlerinde kullanilmaya devam ediyor.
• SWT: The Standard Widget Toolkit
• Swing'e bir alternatif olarak IBM tarafindan gelistirilen bir
gosterim sistemidir. Swing'den en buyuk farki calistigi isletim
sisteminin grafik kutuphanesi ve komutlarini kullanmasidir. Bu
nedenle SWT uygulamalari Swing'e gore cogu yerde daha hizli ve
isletim sistemindeki diger uygulamalari andiran bir sekilde
calismasini saglar.
• Swingin Java 1.5 ile performans acigini kapatacagi iddia edilse de
SWT'nin de artik java camiasinda kabul gormus bir sistem oldugu
asikardir. SWT'nin dezavantaji ise java'nin bir parcasi olmamasidir.
yani SWT uygulamalari SWT kutuphanesi ile birlikte
dagitilmaktadir. En bilinen SWT uygulamasi unlu java yazilim
gelistirme araci Eclipse'tir. Bununla birlikte son yillarda Swing ile
profesyonel derecede arayuza sahip masaustu yazilimlari da
ortaya cikmistir.
• Applet, uzaktaki sistem uzerinden indirilip internet
tarayici uzerinde calistirilabilien java uygulamalarina
verilen isimdir. Java'nin son kullanicilar tarafindan
taninmasi applet sayesinde olmustur dersek yanlis
olmaz. Applet'ler sisteme zarar veremeyecek bir
sekilde tasarlanmistir ve bugun ozellikle oyun
sitelerinde halen yaygin olarak kullanilmaktadir.
Icerisinde applet olan bir sayfayi acmaya calistiginizda
tarayiciniz otomatik olarak java sanal makinesini
calistirip ekranin applet'e ayrilan bolumunde
uygulamanin calismasini saglar.
Listener
 Oluştur:
▪ Frame/JFrame
JLabel JButton
▪ Panel/JPanel
▪ Components
▪ Listeners
JPanel
 Ekle:
▪ Listeners into components
▪ Components into panel
▪ Panel into frame JFrame
1. Oluştur
▪ Nesneyi başlat:
JButton b = new JButton();
2. Özelliklerini belirle
▪ Metodlar:
b.setText(“Press me”);
3. Ekle
▪ panel.add(b);
4. Dinle
▪ Events: Listeners
import javax.swing.*;
class Hello {
public static void main(String[] args){
JFrame f = new JFrame(“Merhaba SWING”);
JPanel p = new JPanel();
JButton b = new JButton(“TIKLA”);
p.add(b); // butonu panele ekle
f.getContentPane().add(p); // paneli frame’e ekle
f.show();
}
}
▪ Swing dizaynında kullanılan temel bileşenler
▪ Üst seviye Taşıyıcı (Top-level Container)
▪ Örnek: JFrame
▪ Diğer bütün swing bileşenlerini taşır
▪ Diğer seçenekler: JDialog ve JApplet
▪ Orta seviye Taşıyıcı (Intermediate Container)
▪ Örnek: JPanel
▪ GUI bileşenlerinin yerlerini kontrol etmek için kullanılır
▪ Aracı olarak hareket eder
▪ Diğer seçenekler: JScrollPane, JTabbedPane, …
▪ Atomik Bileşenler
▪ Örnek: JButton
▪ Tek başına işlev sahibi GUI bileşenleri
▪ Diğer seçenekler: JTextField, JTable,
Üst seviye taşıyıcılar: JFrame, JDialog, JApplet

Content pane: JApplet, JDialog, ve Jframe nesneleri için temel taşıyıcı

Temel kontroller: JButton,


Genel amaçlı taşıyıcılar:
JComboBox, List, Menu, Slider,
Panel, scroll pane, split pane,
JTextField, JLabel, progress bar,
tabbed pane, tool bar
tool tip
JFrame İç yapısı
JPanel
JFrame

JButton taşıyıcılar

JPanel

GUI
JLabel
JButton JLabel

You might also like