NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 10. Yrd.Doç.Dr.Hacer Karacan

Benzer belgeler
Görsel Programlama DERS 08. Görsel Programlama - Ders08/ 1

Java da. ve AWT ve SWING Kütüphaneleri. BBS-515 Nesneye Yönelik Programlama. Ders #8 (9 Aralık 2009)

MOBİL UYGULAMA GELİŞTİRME

Görsel Programlama DERS 07. Görsel Programlama - Ders07/ 1

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

ORNEK 1: Tarım Makinaları ve Teknolojileri Mühendisliği başlıklı çerçeve üretme.

Start : Bu method init methodundan hemen sonra çalışır ve applet dosyası yürütülmeye başladığında çalışmaya başlar.

Öğr.Gör. Gökhan TURAN Gölhisar Meslek Yüksekokulu

MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 12: Grafik Kullanıcı Arayüzü (Graphical User Interface-GUI)

Üst Düzey Programlama

C# nedir,.net Framework nedir?

EYLÜL 2012 İŞLETİM SİSTEMLERİ. Enformatik Bölümü

4. Bölüm Programlamaya Giriş

İşletim Sistemleri; İÇERİK. Yazılım BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI Yazılım Türleri

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

BİT in Temel Bileşenleri (Yazılım-1)

OpenGL Uygulamaları. 1. Giriş. 2. OpenGL

OpenGL Uygulamaları. 1. Giriş. 2. OpenGL. Deney 2

Doğu Akdeniz Üniversitesi Bilgisayar ve Teknoloji Yüksek Okulu Bilgi teknolojileri ve Programcılığı Bölümü DERS 1 - BİLGİSAYAR VE ÇEVRE ÜNİTELERİ

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

MOBIL UYGULAMA GELIŞTIRME

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ

Java Temel Özellikleri

PROGRAMLAMA DERSİ 1. İNTERNET

Bilgisayar Yazılımları

Flash ile Etkileşimli Öğretim Materyali Hazırlama Semineri

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

Windows Mobile İşletim Sistemleri İçin Veri Giriş Yazılımı

İnsan Bilgisayar Etkileşimi (IBE) nedir? İnsan Bilgisayar Etkileşimi Araştırma ve Uygulama Labaratuvarı

Kişisel Bilgisayarın Parçaları

Temel Bilgi Teknlolojileri 1. Ders notları 5. Öğr.Gör. Hüseyin Bilal MACİT 2017

İŞLETİM SİSTEMLERİ. Enformatik Bölümü

Sunum İçeriği. Programlamaya Giriş

SAB 103 TEMEL BİLGİSAYAR KULLANIMI

Windows Grup İlkesi Düzenleyici

Java Programlama Giriş

Model-Tabanlı ve Rastgele Karma Yöntem

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

Veritabanı. Ders 2 VERİTABANI

Google Web Toolkit ile Öğretim Elemanı Otomasyon Sistemi

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar) Öğr.Gör. Dr. Dr. Şirin KARADENİZ

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 1. Bölüm C# Programlamaya Giriş

Programlama Dilleri II. Bilgisayar ve Öğretim Teknolojileri Öğretmenliği

Android e Giriş. Öğr.Gör. Utku SOBUTAY

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

Sanal Ortamda Nesnelerin Haptic Kol ile Manipülasyonu. Sevcan AYTEKİN Alpaslan DUYSAK

Görsel Programlama DERS 01. Görsel Programlama - Ders01/ 1

TEMEL BİLGİ TEKNOLOJİLERİ KULLANIMI

Bilgisayar Yazılımları

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 18: Formatlı Grafik Kullanıcı Arayüzü Oluşturma

BİLGİSAYAR AĞLARI Bilgisayar İletişimi Nedir? Veri İşleme Modelleri ve Ağ Gelişimi Merkezi İşleme

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

SİSTEM VE YAZILIM. o Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur.

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

DERS: MESLEKİ BİLGİSAYAR MODÜL -2: İŞLETİM SİSTEMİNDE MASA ÜSTÜ

BMT 101 Algoritma ve Programlama I Güz Dönemi. Yük. Müh. Köksal Gündoğdu 1

İşletim Sistemlerine Giriş 2. Kaynakların Paylaşımı. Öğr.Gör. Dr. Şirin KARADENİZ

Bilişim Garaj Akademisi Nedir?

OYUN GELİŞTİRME AŞAMALARI (ARAYÜZ TASARIMI)

Ders Adı : Nesne Tabanlı Programlama-I Ders No : Teorik : 3 Pratik : 1 Kredi : 3.5 ECTS : 4. Ders Bilgileri.

Bilgisayar Mimarisi Nedir?

Swing ve JDBC ile Database Erişimi

Kod Listeleri Genel Yapısı

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü

BMS-302 İleri Web Programlama. İş Parçacığı (Thread) ve Soket (Socket) Programlama

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi KULLANICI ARAYÜZ. BLM401 Dr.Refik SAMET

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi SERVİS BİLEŞENLERİ. BLM401 Dr.Refik SAMET

Üst Düzey Programlama

Yazılım Mühendisliği Bölüm - 3 Planlama

Bilgisayar Mühendisliği. Bilgisayar Mühendisliğine Giriş 1

-Bilgisayarı oluşturan iki temel unsurdan diğeri ise YAZILIM dır.

XAML Dili Microsoft Blend. Tasarım ve Kodlamanın. Birbirinden Ayrılması

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

C++ Dersi: Nesne Tabanlı Programlama

Animasyon Teknikleri, Ses ve Video İşlemleri 1 / 18

HSancak Nesne Tabanlı Programlama I Ders Notları

Exploit Geliştirme Altyapıları. Fatih Özavcı Bilgi Güvenliği Danışmanı

R ile Programlamaya Giriş ve Uygulamalar

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

Java EE 5 Teknolojileri Jboss Seam

Ağınız üzerinde tarama yapmak için Web Hizmetleri'ni kullanma (Windows Vista SP2 veya üzeri, Windows 7 ve Windows 8)

KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BLM209 PROGRAMLAMA LAB. I PROJE 3 PROJE SÜRESİ:

Üst Düzey Programlama

HSancak Nesne Tabanlı Programlama I Ders Notları

A.Ü. GAMA MYO. Elektrik ve Enerji Bölümü ALGORİTMA VE PROGRAMLAMA 1.HAFTA

Nesne Yönelimli Programlama

MOBİL UYGULAMA GELİŞTİRME

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

Java. Hakkımızda. Java Eğitimi

Windows 10 için Java JDK 8 ve NetBeans IDE 8.2 Kurulumu Detaylı Anlatım

LabVIEW Ders Notları-1

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

BİL BİLGİSAYAR PROGRAMLAMA (JAVA)

1.1 Metodolojiyi Gerçeklemek Üzere Geliştirilen Altyapı

Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015

Sistem Geliştirme Yaşam Döngüsü (The Systems Development Life Cycle) (SDLC)

Transkript:

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 10 Yrd.Doç.Dr.Hacer Karacan

İçerik Grafik Kullanıcı Arayüzü Uygulamaları AWT, Swing Arayüz Yerleşim Düzeni Temel GKA Bileşenleri Olay Yönetimi Olay Dinleyiciler Olay Yönetimi Süreci Adapter Sınıfı Bileşenler ve Olay Yöneticileri

Grafik Kullanıcı Arayüzü Uygulamaları Makinelerle kullanıcı arasında etkileşimi sağlayan birimlere kullanıcı arayüzü denilmektedir. İlk başlarda sadece klavye ile başlayan bilgisayar kullanıcı arayüzleri, ekran fare ve sonrasında grafik bileşenlerin kullanımıyla kullanıcıya son derece kolay kullanım imkanları sunmaktadır. Sun java ile geliştirilen yazılımlar için iki grafik kullanıcı arayüzü kütüphanesi sunmaktadır: AWT (Abstract Window Toolkit) Swing

AWT (Abstract Window Toolkit) Java programlama dilinin, platformdan bağımsız, görsel kullanıcı arayüzü üretimini sağlayan araç kütüphanesidir. En büyük dezavantajı, kullanıldığı platformda, grafik tabanlı bileşenlere doğrudan aracı katmanlar bulunmadan ulaşmasıdır. Her platformda kullanılan farklı grafik bileşenlerinin ortak özellikleri kullanılmış, platformdan platforma değişebilen farklılıklar gözardı edilmiş. bir kere yaz, her yerde çalştır sloganına uymaz. Örn. UNIX sisteminde çalışan bir program, MAC platformunda çalıştırıldığında farklı sonuçlar doğurabilir.

AWT (Abstract Window Toolkit)

SWING Java 2 platformu ile birlikte AWT yetersiz görülmüş ve çok daha geniş ve gelişmiş özelliklere sahip Swing kütüphanesi sisteme eklenmiştir. Başlarda işletim sisteminin kullandığı donanım grafik hızlandırma araçlarını kullanmadığından yavaşlığı ile eleştirilere hedef olmuştur. Java 1.4 ile donanım hızlandırmayı kullanmaya başlamıştır. AWT halen Swing in bir alt katmanında temel iki boyutlu grafik işlemlerinde kullanılmaya devam etmektedir.

SWING

Arayüz Yerleşim Düzeni Bir grafik kullanıcı arayüz uygulaması yapmadan önce bileşenler arasındaki şu ilişkiler dikkate alınmalıdır: Bileşenler hangi kapsayıcı bileşenlerin içerisine yerleşebilir Kapsayıcı bileşenlerin seviye ve türleri Yerleşim düzenleyiciler ve bunların türleri

Temel GKA Bileşenleri

Üst Düzey Kapsayıcı Bileşenler

Orta Düzey Kapsayıcı Bileşenler

Orta Düzey Kapsayıcı Bileşenler

Atomik Bileşenler

Yerleşim Bileşenleri

Border Layout

Border Layout

Flow Layout

Card Layout

Grid Layout

Olay Yönetimi

Olay Dinleyiciler

Olay Dinleyiciler

Olay Dinleyiciler

Olay Dinleyiciler

Olay Dinleyiciler

Olay Dinleyiciler

Olay Dinleyiciler

Olay Dinleyiciler

Olay Dinleyiciler

Olay Dinleyiciler

Olay Dinleyiciler

Olay Yönetimi Süreci

Olay Yönetimi Süreci

Olay Yönetimi Süreci

Adapter Sınıfı Olay adaptörleri, dinleyicilerin tüm metodlarını içlerinde barındıran sınıflardır. Var olan bir arayüzü, istemcinin önceden kullandığı arayüze uyarlar.

Adapter Sınıfı Adapter sınıfları, arabirim metodlarının sadece küçük bir kümesine ihtiyaç duyduğunuzda kullandığınız ve yazmanız gereken kod miktarını azaltan sınıflardır. Her adapter sınıfı ilgili arabirimi (veya arabirimleri) tam olarak gerçekleştirir. Böylece, ilişkili metodların küçük bir kümesine ihtiyaç duyarsanız, sadece kullanmak istediğiniz metodu doldurarak kullanabilirsiniz. MouseListener mouselistener = new MouseAdapter() { public void mousepressed(mouseevent mouseevent) { System.out.println("Basildi: " + mouseevent); } public void mousereleased(mouseevent mouseevent) { System.out.println("Birakildi: " + mouseevent); } }; Bu kod MouseListener yaratacaktır. Ancak, tüm metodları gerçekleştirmek yerine, MouseAdapter yardımıyla sadece ihtiyaç duyduğumuz metodlarını gerçekleştirmemiz mümkün olacaktır.

Bileşenler ve Olay Yöneticileri Olay yönetimleri yazılım geliştirme ortamlarınca (IDE) otomatik olarak arka planda tanımlanmaktadır. Olay yönetiminin elle yapılması tercih edilmez ama kod hakimiyeti açısından programcı işlemin nasıl yapıldığını bilmelidir. Olay yönetiminin ilk adımında olayları yönetebilecek bir bileşene ihtiyaç duyulur. Bileşen Kullanıcıyla etkileşime geçebilen görsel nesne

Bileşenler ve Olay Yöneticileri

Bileşenler ve Olay Yöneticileri

Bileşenler ve Olay Yöneticileri

Özet Program çalışırken kullanıcı tarafından gerçekleştirilen tüm hareketlere olay(event) denilir. Kullanıcının fareyi hareket ettirmesi, tuşlara basması, bir butona basması, pencerenin kapatılması vb. Olay yönetimi, görsel programlamanın olmazsa olmaz öğesidir. Java da bir olay gerçekleştirilirken 4 rol bulunmaktadır: Olay Kaynağı Olay Nesnesi Olay Dinleyicileri Olay İşleyicileri