İnfografik
← Ünite 7
Görsel Programlama 2

Ünite 7: Scenebuılder ile Sürükle–Bırak Tasarım ve Hızlı Prototipleme

JavaFX ve Swing İlişkisi
JavaFX, Java programlama dili için geliştirilmiş modern bir kütüphanedir. Swing teknolojisinin daha gelişmiş, görsel açıdan zengin ve esnek bir alternatifi olarak kabul edilmektedir.
MVC Bileşenlerinin Rolü
Model veriyi, View (genellikle FXML) arayüzü, Controller ise View ile Model arasında köprü kurarak buton tıklamaları gibi işlemleri yöneten iş mantığını temsil eder.
SceneBuilder Kurulum Yolu
SceneBuilder'ın NetBeans ile çalışması için 'Tools -> Options -> Java -> JavaFX' menüsünden 'SceneBuilder Home' kısmına uygulamanın yüklü olduğu klasör yolu gösterilmelidir.
VBox ve HBox Farkı
VBox (Vertical Box) içerisine eklenen bileşenleri dikey olarak alt alta sıralarken, HBox (Horizontal Box) bileşenleri yatay olarak yan yana dizmek için kullanılır.

Anahtar Kavramlar

GUIKullanıcı ile bilgisayar programı arasında butonlar, menüler ve metin kutuları gibi görsel öğeler aracılığıyla iletişim kurulmasını sağlayan arayüzdür.
JavaFXJava programlama dili ile modern, esnek ve görsel açıdan zengin masaüstü uygulamaları geliştirmek için kullanılan, sahne grafiği yapısına dayalı kütüphanedir.
MVC MimarisiUygulamayı Model (veri), View (arayüz) ve Controller (iş mantığı) olarak üç parçaya ayıran, kodun yönetilebilirliğini ve sürdürülebilirliğini artıran yazılım mimarisidir.
FXMLJavaFX arayüzlerini tanımlamak için kullanılan, XML tabanlı bir işaretleme dilidir. Arayüz tasarımı ile Java kodunun birbirinden ayrılmasını sağlar.
SceneBuilderJavaFX uygulamaları için geliştirilmiş, bileşenlerin sürükle-bırak yöntemiyle yerleştirilerek FXML dosyalarının otomatik üretildiği görsel tasarım aracıdır.
StageJavaFX uygulamalarında ana pencereyi temsil eden, tüm sahne ve bileşenleri içerisinde barındıran temel yapıdır.
Inspector PaneliSceneBuilder'da seçilen bileşenin metin, renk, boyut, hizalama ve kod (fx:id, onAction) gibi özelliklerinin düzenlendiği sağ taraftaki paneldir.
Hiyerarşi (Hierarchy)Arayüzdeki tüm bileşenlerin iç içe geçmiş yapısını ağaç düzeninde gösteren, hangi bileşenin hangi layout içinde olduğunu takip etmeyi sağlayan paneldir.
fx:idFXML dosyasındaki bir bileşene Java tarafında erişebilmek için verilen benzersiz kimlik tanımlayıcısıdır; Controller sınıfında @FXML anotasyonu ile eşleştirilir.
onActionBir butona tıklandığında veya bir etkileşim gerçekleştiğinde hangi fonksiyonun çalışacağını belirten, Controller sınıfındaki metotla bağlantı kuran olay tanımlayıcısıdır.

Diğer Önemli Bilgiler

GridPane Kullanım Alanı

GridPane, tablo mantığıyla çalışan bir yerleşim yapısıdır. Özellikle kullanıcı adı ve şifre gibi form tasarımlarında satır ve sütun düzeni sağlamak için tercih edilir.

Hızlı Prototipleme Amacı

Yazılımın tamamlanmadan önce temel işlevlerini ve arayüzünü görselleştirmektir. Bu süreç, tasarım hatalarının erken tespiti ve kullanıcı geri bildirimlerinin alınmasıyla maliyeti düşürür.

FXML ve Controller Bağlantısı

FXML dosyasındaki 'fx:id' ile Controller sınıfındaki '@FXML' anotasyonu eşleşir. Benzer şekilde 'onAction' özelliği, Controller içindeki bir metodun tetiklenmesini sağlar.

Sınavda Dikkat Et

  • FXML ve Controller bağlantısını sağlayan 'fx:id' ve 'onAction' özelliklerinin Inspector panelindeki 'Code' sekmesinde olduğunu unutmayın.
  • MVC mimarisinde her parçanın (Model, View, Controller) görevini iyi ayırt edin; sınavda bu ayrım üzerinden soru gelebilir.
  • Yerleşim yapılarının (VBox, HBox, GridPane) hangi amaçla kullanıldığını (dikey, yatay, tablo) ezberleyin.
  • SceneBuilder'ın NetBeans entegrasyonunda 'Tools -> Options' yolunu takip etmeniz gerektiğini hatırlayın.
  • Hızlı prototiplemenin sadece tasarım değil, hata tespiti ve kullanıcı geri bildirimi için de önemli olduğunu unutmayın.