1 / 22

Algoritma ve Programlama BMÜ 112

Dr. Galip AYDIN. Algoritma ve Programlama BMÜ 112. BMU 112 Web. http://web.firat.edu.tr/bilmuh/bmu112/ Ders Notları Kaynaklar Araçlar Duyurular. Ders İçeriği. Java ile Görsel Programlama  AWT ve Swing uygulamaları  Java Appletler JavaFX Veri Yapıları

clyde
Download Presentation

Algoritma ve Programlama BMÜ 112

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Dr. Galip AYDIN Algoritma ve Programlama BMÜ 112

  2. BMU 112 Web http://web.firat.edu.tr/bilmuh/bmu112/ • Ders Notları • Kaynaklar • Araçlar • Duyurular

  3. Ders İçeriği • 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 • SoyutSınıflarveArayüzler • Java ile veritabanı uygulamalarına giriş (JDBC - Java Database Connectivity) • Java ile Internet programlamaya giriş • Web Servers, • (JSP - Java Server Pages)

  4. Kullanılacak Araçlar • 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

  5. Projeler • Geniş Kapsamlı bir Dönem Projesi • Proje Konuları • Takımlar (? kişi) • Ara raporlar • Proje notları

  6. Proje Konu Örnekleri • 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 ?

  7. Dr. Galip AYDIN Java Grafik Arabirim ProgramlamaAWT, SWING

  8. AWT, Swing • 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.

  9. SWT • SWT: The Standard Widget Toolkit • Swing'ebiralternatifolarak IBM tarafindangelistirilenbirgosterimsistemidir. Swing'den en buyukfarkicalistigiisletimsisteminingrafikkutuphanesivekomutlarinikullanmasidir. Bu nedenle SWT uygulamalariSwing'e gore coguyerdedahahizliveisletimsistemindekidigeruygulamalariandiranbirsekildecalismasinisaglar. • Swingin Java 1.5 ileperformansaciginikapatacagiiddiaedilse de SWT'nin de artik java camiasindakabulgormusbirsistemolduguasikardir. SWT'nindezavantajiisejava'ninbirparcasiolmamasidir. yani SWT uygulamalari SWT kutuphanesiilebirliktedagitilmaktadir. En bilinen SWT uygulamasiunlu java yazilimgelistirmearaciEclipse'tir. Bununlabirlikte son yillarda Swing ileprofesyonelderecedearayuzasahipmasaustuyazilimlaridaortayacikmistir.

  10. Applet • Applet, uzaktakisistemuzerindenindirilip internet tarayiciuzerindecalistirilabilien java uygulamalarinaverilenisimdir. Java'nin son kullanicilartarafindantaninmasi applet sayesindeolmusturdersekyanlisolmaz. Applet'lersistemezararveremeyecekbirsekildetasarlanmistirvebugunozellikleoyunsitelerindehalenyayginolarakkullanilmaktadir. Icerisinde applet olanbirsayfayiacmayacalistiginizdatarayicinizotomatikolarak java sanalmakinesinicalistiripekraninapplet'eayrilanbolumundeuygulamanincalismasinisaglar.

  11. GUI Oluşturma Listener • Oluştur: • Frame/JFrame • Panel/JPanel • Components • Listeners • Ekle: • Listeners into components • Components into panel • Panel into frame JButton JLabel JPanel JFrame

  12. GUI Component kullanımı • Oluştur • Nesneyi başlat: • JButton b = new JButton(); • Özelliklerini belirle • Metodlar: • b.setText(“Press me”); • Ekle • panel.add(b); • Dinle • Events: Listeners

  13. Örnek 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(); } }

  14. SWING • Swing dizaynında kullanılan temel bileşenler • Üst seviyeTaşıyıcı (Top-level Container) • Örnek: JFrame • Diğer bütün swing bileşenlerini taşır • Diğer seçenekler: JDialogveJApplet • 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, … • AtomikBileşenler • Örnek: JButton • Tek başına işlev sahibi GUI bileşenleri • Diğer seçenekler: JTextField, JTable,

  15. Swing Bileşen Hiyerarşisi Üst seviyetaşıyıcılar: JFrame, JDialog, JApplet Content pane: JApplet, JDialog, ve Jframe nesneleri için temel taşıyıcı Temelkontroller: JButton, JComboBox, List, Menu, Slider, JTextField, JLabel, progress bar, tool tip Genel amaçlı taşıyıcılar:Panel, scroll pane, split pane, tabbed pane, tool bar

  16. JFrame İç yapısı JPanel JFrame JButton taşıyıcılar JPanel GUI JLabel JButton JLabel

  17. Java GUI Ornekleri

More Related