JavaFX uygulamasının en üst düzey kapsayıcısıdır, yani uygulamanın penceresidir. Her JavaFX uygulaması bir 'primaryStage' ile başlar.
Sahne grafiğindeki tüm görsel öğelerin (Node) yerleştirildiği içerik alanıdır. Bir Stage içinde tek bir Scene aktif olabilir.
JavaFX arayüzündeki tüm görsel bileşenlerin (Button, Label, VBox vb.) temel sınıfıdır. Sahne grafiği, bu düğümlerin hiyerarşik yapısından oluşur.
Arayüzün güncellenmesinden ve kullanıcı etkileşimlerinin işlenmesinden sorumlu olan özel iş parçacığıdır. Tüm UI değişiklikleri bu iş parçacığında yapılmalıdır.
Uygulama başlatıldığında, arayüz gösterilmeden önce çalışan ve gerekli hazırlıkların yapıldığı yaşam döngüsü metodudur.
JavaFX uygulamasının ana giriş noktasıdır; arayüzün kurulduğu, bileşenlerin sahneye eklendiği ve pencerenin gösterildiği metottur.
Uygulama kapatılırken çalışan, kaynakların serbest bırakılması ve temizlik işlemlerinin yapıldığı yaşam döngüsü metodudur.
Uygulamanın kontrollü bir şekilde sonlandırılmasını sağlayan ve stop() metodunun devreye girmesine olanak tanıyan komuttur.
Veri üzerindeki değişikliklerin izlenmesini sağlayan ve bu değişiklikleri arayüze otomatik bildiren bir yapıdır. Örnek olarak ObservableList, bir listeye eleman eklendiğinde arayüzü günceller.
JavaFX'te arayüz bileşenlerinin hiyerarşik bir ağaç yapısında düzenlenmesidir. Stage, Scene ve içindeki tüm Node'lar bu yapıyı oluşturur.
İçeriğinde değişiklik olduğunda dinleyicilerine otomatik bildirim gönderen, JavaFX arayüz bileşenlerinin veri kaynağı olarak kullanılan özel bir liste yapısıdır. Örneğin, bir ListView'e bağlı ObservableList'ten bir öğe silindiğinde, arayüz otomatik olarak güncellenir.
ListView gibi bileşenlerde kullanıcının seçim davranışlarını yöneten ve izleyen soyut yapıdır. getSelectionModel() ile erişilir ve seçili öğe, indeks veya çoklu seçim modunun yönetilmesini sağlar.
Birden fazla RadioButton'ı bir araya getirerek, gruptan sadece birinin seçili kalmasını sağlayan mantıksal bir yapıdır. Kullanıcı yeni bir RadioButton seçtiğinde, diğerleri otomatik olarak seçimi bırakır.
Kullanıcının arayüzdeki nesneler üzerinde doğrudan işlem yapması ve sistemin bu eylemlere anında geri bildirim vermesidir. Örneğin, bir öğeye sağ tıklayıp 'Sil' demek doğrudan manipülasyondur.
CheckBox bileşeninin sahip olduğu, seçili veya seçili değil durumlarının dışında 'belirsiz' veya 'karışık' durumu ifade eden üçüncü bir durumdur.
Spinner bileşeninin sayısal değer üretim kurallarını (aralık, adım miktarı vb.) belirleyen ve arayüz ile mantığı birbirinden ayıran modeldir.
Kullanıcının bir bileşen üzerinde sağ tıkladığında açılan, bağlama duyarlı eylemler (MenuItem) içeren bir popup menüsüdür. Arayüzü sade tutmak için kullanılır.
Bir özellikte veya veri yapısında meydana gelen değişiklikleri yakalayan ve buna bağlı bir kod bloğunu çalıştıran mekanizmadır. Örneğin, selectedItemProperty() bir listener ile izlenerek seçim değişikliği yakalanır.
ListView gibi listelerin hücrelerinin nasıl görüntüleneceğini (metin, ikon, buton vb.) özelleştirmeye yarayan yapıdır. Listelerin görsel zenginliğini artırır.
Programın akışının kullanıcı eylemleri veya sistem olayları tarafından belirlendiği bir programlama yaklaşımıdır. JavaFX uygulamaları bu mantıkla çalışır.
Veri değişikliklerini izleyen ve bu değişiklikleri otomatik olarak arayüze bildiren gözlemlenebilir bir liste yapısıdır. Örnek: Tabloya yeni bir öğrenci eklendiğinde, bu listenin güncellenmesi tablonun da anında güncellenmesini sağlar.
Bir sütunun modeldeki hangi veriyi göstereceğini belirleyen bir Callback mekanizmasıdır. Örnek: Öğrenci notunu 'Not' sütununa bağlamak için kullanılır.
Sütun verilerini property ismi üzerinden otomatik eşleyen bir kolaylaştırıcı sınıftır. Örnek: 'no' adında bir property varsa, bu sınıf ile sütuna hızlıca bağlanabilir.
Filtreleme işlemlerinde kullanılan ve öğenin listelenip listelenmeyeceğine karar veren bir mantıksal kuraldır. Örnek: Arama kutusuna yazılan metni içeren öğrencileri filtrelemek için kullanılır.
Ana veriyi silmeden, belirli bir koşula göre görünümü daraltan bir liste sarmalayıcısıdır. Örnek: Kullanıcı arama kutusuna 'Bilgisayar' yazdığında sadece o bölümdeki öğrencileri gösterir.
Verileri belirli bir kritere göre sıralayan ve bu sıralamayı TableView ile eşleyen bir görünüm listesidir. Örnek: 'Not' sütununa tıklandığında notları küçükten büyüğe sıralar.
Tablodaki satır seçimlerini yöneten ve seçilen öğeye erişim sağlayan bir yapıdır. Örnek: Silinecek öğrenciyi belirlemek için seçili satırı yakalamaya yarar.
Tablo hücrelerini düzenlenebilir bir metin kutusuna dönüştüren hazır bir hücre sınıfıdır. Örnek: Öğrenci adını tablo üzerinde doğrudan değiştirmek için kullanılır.
Düzenlenebilir hücrelerdeki metin değerini modeldeki veri tipine (veya tam tersine) dönüştüren bir araçtır. Örnek: TextField'dan gelen metni integer bir nota çevirmek için gereklidir.
Java'da isimsiz fonksiyonlar kullanarak veri bağlamayı daha okunabilir ve güvenli hale getiren bir yöntemdir. Örnek: 'c -> c.getValue().nameProperty()' ifadesi ile sütuna veri aktarımı.
JavaFX uygulamasında bir pencere (Stage) içinde gösterilen tüm arayüz bileşenlerini kapsayan temel yapıdır. Örnek: Bir giriş ekranı için ayrı bir sahne, ana menü için ayrı bir sahne tanımlanması.
Kullanıcının uygulama içindeki hareketlerinin önceden planlanmış bir düzen içinde ilerlemesidir. Örnek: Kullanıcının giriş ekranından ana menüye, oradan da ayarlar ekranına geçiş süreci.
JavaFX uygulamalarında kullanıcı arayüzünü XML formatında tanımlamaya yarayan bir işaretleme dilidir. Örnek: Butonların ve metin alanlarının yerleşiminin bir FXML dosyasında tanımlanması.
FXML dosyasındaki arayüz bileşenlerinin davranışlarını ve olay yönetimini üstlenen Java sınıfıdır. Örnek: Butona tıklandığında ekran geçişini tetikleyen metodun bu sınıfta yer alması.
Kullanıcının her aşamayı sırayla tamamlaması gereken, adım adım ilerleyen akış modelidir. Örnek: Bir kurulum sihirbazında birinci adımı bitirmeden ikinciye geçilememesi.
Kullanıcının yaptığı seçimlere göre uygulamanın farklı ekranlara yönlendiği akış modelidir. Örnek: Bir yönetim panelinde 'Kullanıcılar' veya 'Ayarlar' menüsüne göre farklı ekranların açılması.
Tek bir sahne üzerinde, sabit bölümler korunarak içerik alanının dinamik değiştirilmesidir. Örnek: BorderPane kullanarak sol menüyü sabit tutup orta kısmı değiştirmek.
Yeni ekranın Controller'ı oluşturulurken verilerin parametre olarak iletilmesidir. Örnek: Kullanıcı adının, detay ekranı açılırken constructor üzerinden gönderilmesi.
Ekran yüklendikten sonra verilerin özel metotlar aracılığıyla Controller'a aktarılmasıdır. Örnek: Ekran açıldıktan sonra `setUserName()` metoduyla verinin gönderilmesi.
Uygulamanın genelinde kullanılan verilerin merkezi bir sınıfta tutulmasıdır. Örnek: Oturum bilgilerinin tüm ekranlar tarafından erişilebilir bir model sınıfında saklanması.
JavaFX uygulamasının en üst düzey kapsayıcısıdır ve sahneleri içinde barındırır. Örnek: Uygulamanın açıldığı ana pencere çerçevesi.
Kullanıcı arayüzünün tüm bileşenlerinin doğrudan Java koduyla oluşturulduğu ve yönetildiği yöntemdir. Örneğin, bir butonu 'Button btn = new Button();' şeklinde kod içinde tanımlamak programatik bir işlemdir.
Arayüzün görsel yapısının XML tabanlı FXML dosyalarıyla tanımlandığı, iş mantığından ayrıştırıldığı yöntemdir. Örneğin, butonun metni ve konumu Java kodu yerine FXML dosyasındaki <Button text='Göster'/> etiketiyle belirlenir.
JavaFX arayüzlerini tanımlamak için kullanılan, XML tabanlı bir işaretleme dilidir. Arayüz bileşenlerinin hiyerarşik yapısını ve özelliklerini koddan bağımsız bir dosyada tutar.
FXML tabanlı arayüzlerde kullanıcı etkileşimlerini (tıklama, metin girişi vb.) yöneten Java sınıfıdır. Arayüz ile iş mantığı arasındaki köprüdür.
Arayüzün statik yapısının FXML ile, dinamik ve davranışsal kısımların ise Java kodu ile yönetildiği birleştirilmiş bir geliştirme yöntemidir.
Controller sınıfındaki değişkenlerin veya metotların, FXML dosyasındaki bileşenlere bağlanmasını sağlayan bir Java ek açıklamasıdır (annotation). Örneğin, FXML'deki bir TextField'a erişmek için kullanılır.
Uygulama mantığını, arayüzü ve veriyi birbirinden ayıran bir mimari desendir. FXML 'View' katmanını, Controller ise 'Controller' katmanını temsil eder.
Kullanıcının arayüzdeki bir bileşenle etkileşime girdiğinde (tıklama gibi) tetiklenen kod bloklarıdır. Programatik yaklaşımda 'btn.setOnAction(...)' şeklinde tanımlanır.
Yazılımın farklı bölümlerinin (arayüz, mantık, veri) birbirine bağımlılığını azaltarak ayrı modüllerde yönetilmesidir. Deklaratif yaklaşımın temel motivasyonudur.
Kullanıcı etkileşimi veya koşullara bağlı olarak çalışma zamanında bileşenlerin eklenip çıkarıldığı veya güncellendiği arayüz yapısıdır.
JavaFX arayüzlerini tanımlamak için kullanılan, XML tabanlı deklaratif bir işaretleme dilidir. Görsel tasarımı iş mantığından ayırarak kodun sürdürülebilirliğini artırır.
FXML dosyalarını okuyan, içerisindeki etiketleri JavaFX nesnelerine dönüştüren ve controller sınıfıyla bağlantı kuran temel JavaFX sınıfıdır.
FXML dosyasındaki bir bileşene verilen benzersiz isimdir. Controller sınıfındaki değişkenlerle eşleşerek, Java kodunun arayüz bileşenlerine erişmesini sağlar.
FXML dosyasındaki arayüzün davranışlarını yöneten, olayları işleyen ve iş mantığını barındıran Java sınıfıdır. MVC mimarisindeki 'Controller' katmanını temsil eder.
FXML dosyası yüklendikten ve bileşenler enjekte edildikten sonra otomatik olarak çağrılan metottur. Bileşenlerin başlangıç değerlerini atamak için kullanılır.
Controller sınıfındaki değişkenlerin veya metotların, FXML dosyası tarafından erişilebilir olduğunu belirten bir anotasyondur. Bu anotasyon olmazsa bağlantı gerçekleşmez.
FXML dosyasındaki en dış kapsayıcı etikettir (örneğin VBox veya BorderPane). Tüm arayüz hiyerarşisi bu kök bileşenin altında tanımlanır.
JavaFX uygulamalarındaki arayüz bileşenlerinin hiyerarşik ağaç yapısıdır. FXML, bu ağaç yapısının metinsel/deklaratif bir yansımasıdır.
FXML'de buton gibi bileşenlere eklenen ve tıklama gibi olayların hangi metodla işleneceğini belirten bir özniteliktir.
FXML dosyasında fx önekiyle kullanılan özel komutların (fx:id, fx:controller) tanımlandığı XML alanıdır. Kök etikette belirtilmesi zorunludur.
Stage, uygulamanın ana penceresini; Scene ise bu pencere içinde gösterilen içeriği temsil eder. FXML'den yüklenen arayüz, bir Scene içine yerleştirilerek gösterilir.
Kullanı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.
Java 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.
Uygulamayı 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.
JavaFX 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.
JavaFX 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.
JavaFX uygulamalarında ana pencereyi temsil eden, tüm sahne ve bileşenleri içerisinde barındıran temel yapıdır.
SceneBuilder'da seçilen bileşenin metin, renk, boyut, hizalama ve kod (fx:id, onAction) gibi özelliklerinin düzenlendiği sağ taraftaki paneldir.
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.
FXML 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.
Bir 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.
Kullanıcıdan belirli bilgileri düzenli bir şekilde toplamak, görüntülemek veya güncellemek için tasarlanmış arayüz yapısıdır. Örnek: Bir öğrenci kayıt ekranı.
Kullanıcıdan tek satırlık metin girişi almak için kullanılan temel JavaFX bileşenidir. Örnek: Ad ve soyad bilgisi girişi.
TextField ile aynı işlevi gören ancak girilen karakterleri gizleyerek güvenlik sağlayan bileşendir. Örnek: Şifre girişi.
Birden fazla RadioButton'ı bir araya getirerek, gruptan sadece birinin seçilmesini sağlayan yapıdır. Örnek: Cinsiyet seçimi.
Kullanıcıya önceden tanımlanmış seçenekleri bir liste halinde sunan ve veri giriş hatalarını azaltan bileşendir. Örnek: Şehir seçimi.
Kullanıcıdan takvim üzerinden tarih seçmesini sağlayan ve format hatalarını engelleyen bileşendir. Örnek: Doğum tarihi girişi.
Kullanıcının uygulama arayüzünde gerçekleştirdiği tıklama, tuşa basma gibi işlemlerdir. Örnek: 'Kaydet' butonuna tıklanması.
Kullanıcıdan alınan verilerin eksiksiz, doğru formatta ve uygun türde olduğunu kontrol etme sürecidir. Örnek: Yaş alanına harf girilmesini engellemek.
Hata oluşabilecek kod bloklarını güvenli bir şekilde çalıştırmak ve hata durumunda programın çökmesini engellemek için kullanılan yapıdır. Örnek: Sayısal dönüşüm hatalarını yakalamak.
Belirli bir metin desenine uygunluğu kontrol etmek için kullanılan düzenli ifadelerdir. Örnek: E-posta adresinin geçerliliğini denetlemek.
Kullanıcıya bilgi, uyarı veya hata mesajlarını göstermek için kullanılan JavaFX sınıfıdır. Örnek: 'Kayıt Başarılı' mesajı göstermek.
Form bileşenlerinin arayüz üzerinde düzenli ve anlaşılır bir şekilde yerleştirilmesini sağlayan yapılardır. Örnek: VBox veya GridPane kullanımı.
Verilerin programın çalışma süresi sona erdikten sonra da saklanabilmesi durumudur. Örneğin, bir öğrenci not defteri uygulamasında girilen verilerin program kapatılıp açıldığında hala erişilebilir olması kalıcılıktır.
Verinin kaynaktan (dosya, ağ) programa veya programdan hedefe doğru tek yönlü taşınmasını sağlayan soyut bir yapıdır. Örneğin, bir metin dosyasından veri okumak için giriş akışı kullanılır.
Metin verilerini Unicode formatında işleyen sınıflardır (Reader/Writer). Türkçe karakter içeren bir metin dosyasını okurken bu akışlar tercih edilmelidir.
Verileri 8 bitlik baytlar halinde işleyen sınıflardır (InputStream/OutputStream). Resim, video veya PDF gibi ikili dosyaların işlenmesinde kullanılır.
Verinin diske küçük parçalar yerine bloklar halinde yazılıp okunmasıdır. BufferedReader kullanımı, okuma işlemini hızlandıran bir tamponlama örneğidir.
Dosya akışlarının işlem sonunda otomatik olarak kapatılmasını sağlayan bir Java yapısıdır. Bu yapı, kaynak sızıntılarını önleyerek belleğin verimli kullanılmasını sağlar.
Dosyadaki baytların karakterlere dönüştürülme biçimidir. UTF-8, Türkçe karakterlerin farklı işletim sistemlerinde doğru görüntülenmesi için önerilen standarttır.
Verilerin virgül ile ayrıldığı bir metin dosyası formatıdır. Örneğin: 'Ahmet,90' satırı, isim ve not bilgisini virgülle ayırarak saklar.
Dosyanın, programın çalıştığı klasöre göre konumunu belirten yoldur. Örneğin, 'veri.txt' ifadesi dosyanın proje kök dizininde olduğunu belirtir.
Java 7 ile gelen, dosya işlemlerini daha modern ve esnek hale getiren paket yapısıdır. Files ve Path sınıfları bu paketin temelini oluşturur.
JavaFX uygulamasındaki en üst düzey kapsayıcı olan pencereyi temsil eder. Her uygulama en az bir Stage nesnesine sahiptir.
JavaFX arayüz bileşenlerinin (düğümlerin) hiyerarşik ağaç yapısıdır. Arayüzdeki her öğe bu ağacın bir parçası olarak yönetilir.
JavaFX arayüzlerini XML formatında tanımlayan dildir. Tasarımın koddan ayrılmasını sağlayarak MVC mimarisini destekler.
Java uygulamalarının veritabanları ile iletişim kurmasını sağlayan standart API'dir. SQL komutlarını çalıştırmak için kullanılır.
SQL sorgularını önceden derleyerek çalıştıran ve parametre kullanımı sayesinde SQL enjeksiyonuna karşı koruma sağlayan güvenli bir sınıftır.
İçeriğinde bir değişiklik olduğunda dinleyicilerine haber veren özel bir liste yapısıdır. TableView'in verileri otomatik güncellemesini sağlar.
Veritabanı işlemlerini (CRUD) uygulama mantığından ayıran, veriye erişim katmanını yöneten tasarım desenidir.
İki nesne arasındaki verinin otomatik olarak senkronize edilmesini sağlayan mekanizmadır. Örneğin, TextField'deki değerin modele otomatik aktarılması.
JavaFX'te uzun süren veritabanı işlemlerini ana arayüz iş parçacığını (UI Thread) dondurmadan arka planda çalıştırmaya yarayan sınıflardır.
Model, View ve Controller bileşenlerini birbirinden ayırarak yazılımın daha düzenli ve sürdürülebilir olmasını sağlayan mimari desendir.
Nicel ve nitel verilerin, insan bilişsel kapasitesini desteklemek amacıyla görsel formata dönüştürülmesi sürecidir. Örneğin, karmaşık bir satış tablosunu bir çizgi grafiğine dönüştürerek trendleri saniyeler içinde anlamak.
JavaFX'te iki eksenli grafiklerin (Line, Bar, Area, Scatter) türetildiği temel soyut sınıftır. Eksenlerin otomatik çizimini ve veri serilerinin yönetimini üstlenir.
Metinsel veya kategorik verileri (örn. aylar, bölümler) temsil eden eksen türüdür. Sıralı olmayan, bağımsız kategoriler için kullanılır.
Sayısal (Integer, Double) değerleri temsil eden eksen türüdür. Sıcaklık, not ortalaması veya satış tutarı gibi ölçülebilir veriler için kullanılır.
Grafikteki tek bir veri kümesini temsil eden yapıdır. Bir grafikte birden fazla seri bulunabilir ve her seri lejantta farklı bir isimle gösterilir.
Grafik üzerindeki tek bir veri noktasını (çubuk, nokta veya çizgi kesimi) temsil eden nesnedir. X ve Y koordinatlarını içerir.
Zaman serisi verilerini çizgilerle birleştirerek eğilimleri gösteren grafik türüdür. Süreklilik vurgusu yapar.
Kategorik verileri dikdörtgen çubuklarla karşılaştıran grafik türüdür. Kategoriler arası farkı görselleştirmek için en temel araçtır.
Bir bütünün parçalarının oransal payını dairesel dilimlerle gösteren grafik türüdür. Eksen kullanmaz.
İki sayısal değişken arasındaki ilişkiyi, kümelenmeyi veya aykırı değerleri noktalarla gösteren grafik türüdür. Noktalar birleştirilmez.
Çizgi grafiğine benzeyen ancak çizgi altındaki alanı doldurarak kümülatif toplamı vurgulayan grafik türüdür.
Stil kuralının hangi JavaFX bileşenine uygulanacağını belirleyen yapıdır. Örneğin, .button seçicisi tüm butonları hedefler.
Bileşenin değiştirilecek görsel niteliğini ifade eder ve JavaFX'te her zaman -fx- ön ekiyle başlar. Örnek: -fx-background-color.
Özelliğe atanan görsel parametredir. Örneğin, -fx-font-size özelliğine atanan '15px' değeri bir değerdir.
Doğrudan Java kodu içinde setStyle() metodu ile tanımlanan stillerdir. En yüksek önceliğe sahiptir ve diğer tüm stilleri geçersiz kılar.
Bileşenin anlık durumunu (fare üzerindeyken, odaklanmış vb.) ifade eden ve : işaretiyle kullanılan CSS yapılarıdır. Örnek: .button:hover.
JavaFX 8'den itibaren varsayılan olarak gelen, uygulamalara modern ve profesyonel bir görünüm kazandıran dahili tema dosyasıdır.
Bir bileşene verilen benzersiz kimliği hedefleyen, # işareti ile başlayan seçicidir. Sadece tek bir bileşeni etkilemek için kullanılır.
Belirli bir stil sınıfına sahip tüm bileşenleri hedefleyen, . işareti ile başlayan seçicidir. .button veya .custom-style gibi.
Doğrudan Java sınıf adını kullanarak o sınıftan türetilen tüm bileşenleri hedefleyen seçicidir. Ön ek almaz.
Stillerin hiyerarşik bir öncelik sırasına göre uygulanmasıdır. Inline > Parent > Scene > Modena şeklinde bir öncelik akışı vardır.
Proje bağımlılıklarını ve yapılandırma ayarlarını otomatik yöneten bir araçtır. Örn: pom.xml dosyası üzerinden sqlite-jdbc kütüphanesini projeye dahil etmek için kullanılır.
JavaFX uygulamalarında arayüzü Java kodundan ayırarak XML formatında tanımlayan bir dildir. Örn: primary.fxml dosyası ile buton ve tablo gibi bileşenlerin yerleşimi belirlenir.
Sunucu kurulumu gerektirmeyen, verileri tek bir dosya üzerinde saklayan hafif bir veritabanı sistemidir. Örn: Uygulama verilerini budget.db dosyasında kalıcı olarak tutar.
Uygulamanın sunum, iş mantığı ve veri erişim gibi bölümlere ayrılmasıdır. Örn: DatabaseHelper veritabanı işlemlerini, PrimaryController ise arayüz etkileşimlerini yönetir.
Java 7 ile gelen, try bloğu bittiğinde kaynakları (bağlantı vb.) otomatik kapatan bir yapıdır. Örn: DatabaseHelper içinde veritabanı bağlantısını güvenli kapatmak için kullanılır.
SQL sorgularını önceden derleyen ve parametreleri güvenli bir şekilde yerleştiren yapıdır. Örn: Kullanıcı girdilerini doğrudan sorguya eklemek yerine ? yer tutucularını kullanarak SQL enjeksiyonunu önler.
Veritabanındaki bir tablo satırını Java nesnesi olarak temsil eden sınıftır. Örn: Islem sınıfı, tablodaki bir kaydı id, tarih, tür gibi alanlarla Java nesnesine dönüştürür.
İçeriği değiştiğinde bağlı olduğu UI bileşenini otomatik güncelleyen bir liste türüdür. Örn: Veritabanından gelen veriler bu listeye eklendiğinde TableView anında güncellenir.
Tablo sütunlarını model sınıfındaki getter metotlarıyla eşleştiren mekanizmadır. Örn: 'tarih' sütunu için getTarih() metodunu otomatik çağırır.
FXML bileşenleri yüklendikten sonra çalışacak 'initialize' metodunu barındıran arayüzdür. Örn: Controller sınıfında bileşenleri başlatmak için uygulanır.
Daha kısa ve okunabilir kod yazmayı sağlayan anonim fonksiyonlardır. Örn: Buton tıklama olaylarını (setOnAction) tanımlarken kullanılır.
Anahtar-değer çiftlerini ekleme sırasına göre saklayan bir harita yapısıdır. Örn: Pasta grafikteki dilimlerin tutarlı bir sırada görünmesi için kullanılır.
Grafik verilerini gruplandıran ve seri olarak isimlendiren yapıdır. Örn: BarChart üzerinde 'Toplam' adında bir seri oluşturarak gelir ve gider çubuklarını tutar.
HTML veya JavaFX bileşenlerine stil uygulamak için kullanılan tanımlayıcılardır. Örn: .button seçicisi ile tüm butonlara yeşil arka plan rengi verilir.
Hataları önceden kestirip kodun çökmesini engelleyen yaklaşımdır. Örn: 'Gelir'.equals(tur) yazarak tur değişkeni null olsa bile hata almamayı sağlamak.
JavaFX'in kullanıcı arayüzü güncellemelerini tek bir iş parçacığı üzerinden yürüttüğü modeldir. Bu thread'in bloke edilmesi arayüzün donmasına neden olur, bu yüzden uzun işlemler arka plana atılmalıdır.
Uygulamayı veri (Model), arayüz (View) ve kullanıcı etkileşimi (Controller) olarak üç katmana ayıran mimari yaklaşımdır. JavaFX'te kodun sürdürülebilirliğini ve okunabilirliğini artırmak için temel alınır.
JavaFX uygulamalarında arayüz tasarımını koddan ayırmak için kullanılan XML tabanlı deklaratif bir dildir. Arayüzün görsel yapısını tanımlamak için kullanılır.
TableView gibi bileşenlerin, tüm veriyi değil sadece ekranda görünen satırları render etme teknolojisidir. Büyük veri setlerinde performans kaybını önler.
Kodun dış davranışını değiştirmeden, iç yapısını daha temiz, okunabilir ve bakımı kolay hale getirme sürecidir. Teknik borcu azaltmak için düzenli yapılmalıdır.
Veri değişikliklerini otomatik olarak arayüze yansıtan bir liste türüdür. JavaFX'te veri bağlama (binding) mantığı ile dinamik arayüzler oluşturmak için kullanılır.
Hızlı ve özensiz kod yazımı sonucu oluşan, gelecekte düzeltilmesi gereken bakım maliyetidir. Refactoring yapılmayan projelerde birikerek yazılımı yönetilemez hale getirir.
Bir yazılımın kullanıcı tarafından ne kadar kolay öğrenilebilir, hatırlanabilir ve kullanılabilir olduğunu ifade eden tasarım ilkesidir. Kullanıcıyı yormadan hedefe ulaştırmayı amaçlar.
JavaFX uygulamalarının Windows, MacOS ve Linux gibi farklı işletim sistemlerinde ek bir değişiklik gerektirmeden çalışabilme yeteneğidir.
JavaFX bileşenlerinin görsel özelliklerini (renk, font, kenar boşluğu) merkezi bir dosyadan yönetmeyi sağlayan stil dilidir. Tasarımın iş mantığından bağımsız olmasını sağlar.
JavaFX arayüzü ile web teknolojilerinin (WebView gibi) bir arada kullanılmasıdır. Özellikle raporlama ve web servis entegrasyonlarında tercih edilir.
Kullanılmayan nesnelerin veya listener'ların referanslarının bellekten silinmemesi sonucu oluşan durumdur. Uzun ömürlü uygulamalarda performansın düşmesine ve uygulamanın çökmesine yol açar.