Bu içerik bir YouTube videosundan üretilmiştir.
Flutter'ın Temel Yapı Taşları: Stateless Widget, AppBar ve Scaffold 🚀
Bu çalışma materyali, Flutter ile mobil uygulama geliştirmeye yeni başlayanlar veya temel kavramları pekiştirmek isteyenler için hazırlanmıştır. Flutter uygulamalarının görsel iskeletini oluşturan en temel ve sık kullanılan üç yapı taşı olan Stateless Widget, Scaffold ve AppBar detaylıca incelenecektir. Bu bileşenleri anlamak, sağlam ve kullanıcı dostu Flutter uygulamaları geliştirmenin ilk adımıdır.
1. Stateless Widget Nedir? 📚
Adından da anlaşılacağı gibi, 'stateless' yani 'durumsuz' bir widget'tır. Bu, bir Stateless Widget'ın oluşturulduktan sonra durumunu değiştirmeyen, yani içeriği sabit kalan bir kullanıcı arayüzü (UI) parçası olduğu anlamına gelir.
✅ Temel Özellikleri:
- Sabit İçerik: Widget bir kez oluşturulduğunda, içindeki veriler sabittir ve ömrü boyunca değişmez.
- Durumsuzluk: Kendi içinde herhangi bir durumu (state) yönetmez veya saklamaz.
- Yeniden Çizim: Eğer widget'ın içeriği değişmesi gerekiyorsa, Flutter onu tamamen yeniden oluşturur.
💡 Neden Önemli?
Performans açısından kritik bir rol oynar. Flutter, durumu değişmeyen bu tür widget'ları daha verimli bir şekilde yeniden çizebilir ve optimize edebilir. Eğer bir UI elemanının ekranda göründükten sonra kendi iç dinamikleriyle değişmesini beklemiyorsanız, onu Stateless Widget olarak tanımlamak en doğru yaklaşımdır.
🖼️ Örnekler:
- Text (Metin): Ekranda sabit bir metin göstermek için kullanılır.
Text('Merhaba Flutter!') - Icon (İkon): Sabit bir görsel ikon göstermek için kullanılır.
Icon(Icons.star) - Image (Resim): Bir resim dosyasını veya ağdan gelen bir resmi göstermek için kullanılır.
Image.network('https://example.com/image.png')
2. Scaffold ile Uygulama İskeleti Oluşturma 🏗️
Scaffold, bir Flutter uygulamasında ekranın temel görsel yapısını sağlayan en önemli widget'lardan biridir. Onu, bir binanın iskeleti veya bir ressamın tuvali gibi düşünebilirsiniz. Material Design yönergelerine uygun olarak bir uygulamanın ana düzenini oluşturur.
✅ Sunduğu Temel Bölgeler (Properties):
Scaffold, uygulamanızın farklı bölümlerini kolayca yerleştirebileceğiniz önceden tanımlanmış alanlar sunar:
appBar: Uygulamanın en üstünde yer alan çubuktur. (Bir sonraki bölümde detaylı incelenecektir.)body: Ekranın ana içeriğinin yerleştirildiği bölümdür. Genellikle en büyük alanı kaplar.floatingActionButton: Ekranın genellikle sağ alt köşesinde yer alan, ana eylemi temsil eden dairesel düğme.drawer: Ekranın solundan açılan yan menü.bottomNavigationBar: Ekranın en altında yer alan gezinme çubuğu.backgroundColor: Scaffold'un arka plan rengini belirler.
💡 Kullanım Amacı:
Bir Flutter uygulamasında yeni bir ekran oluşturduğunuzda, genellikle ilk olarak bir Scaffold widget'ı ile başlarsınız. Bu sayede uygulamanın genel görünümünü ve Material Design uyumlu bileşenlerini kolayca yönetebilirsiniz. Scaffold olmadan, bu temel bileşenleri tek tek elle yerleştirmek ve düzenlemek çok daha zor olurdu.
3. AppBar: Uygulamanın Üst Çubuğu 📊
AppBar, Scaffold'un önemli bir parçasıdır ve uygulamanın en üstünde yer alan çubuktur. Kullanıcıya uygulamanın neresinde olduğunu gösterir ve temel navigasyon ile etkileşim noktalarını sunar. Kullanıcı deneyimi açısından oldukça kritik bir bileşendir.
✅ Temel Özellikleri:
AppBar'ın en yaygın kullanılan özellikleri şunlardır:
-
title(Başlık):- Uygulamanın veya o anki ekranın başlığını gösterir.
- Genellikle bir
Textwidget'ı ile kullanılır. - Örnek:
title: Text('Ana Sayfa')
-
leading(Öncü Öğe):AppBar'ın sol tarafında yer alan widget'tır.- Genellikle bir geri düğmesi (
IconButton(icon: Icon(Icons.arrow_back))) veya bir menü ikonu (IconButton(icon: Icon(Icons.menu))) yerleştirmek için kullanılır. - Örnek:
leading: IconButton(icon: Icon(Icons.menu), onPressed: () {})
-
actions(Eylemler):AppBar'ın sağ tarafında yer alan bir widget listesidir.- Arama ikonu, ayarlar ikonu gibi birden fazla eylem düğmesi eklemek için kullanılır.
- Örnek:
actions: [ IconButton(icon: Icon(Icons.search), onPressed: () {}), IconButton(icon: Icon(Icons.settings), onPressed: () {}), ]
💡 Kullanım Amacı:
- Navigasyon: Geri gitme, menü açma gibi temel navigasyon işlemlerini sağlar.
- Bilgilendirme: Kullanıcıya mevcut ekranın bağlamını (başlığını) gösterir.
- Eylemler: Uygulama genelinde sık kullanılan eylemlere hızlı erişim sağlar.
Sonuç ve Özet 📝
Bugün Flutter'ın temel yapı taşlarından Stateless Widget, Scaffold ve AppBar'ı detaylıca öğrendik.
- Stateless Widget'lar: Oluşturulduktan sonra durumu değişmeyen, sabit kullanıcı arayüzü elemanlarıdır. Performans açısından önemlidirler.
- Scaffold: Material Design uygulamaların temel görsel iskeletini sağlar ve
appBar,bodygibi ana bölgeleri tanımlar. Yeni bir ekran oluştururken başlangıç noktasıdır. - AppBar: Uygulamanın üst kısmında yer alan, başlık, navigasyon ve eylem düğmelerini içeren çubuktur. Kullanıcıya konumunu gösterir ve etkileşim noktaları sunar.
Bu üç temel bileşeni anlamak ve doğru bir şekilde kullanmak, Flutter ile sağlam ve kullanıcı dostu uygulamalar geliştirmenin ilk ve en önemli adımıdır. Unutmayın, pratik yaparak bu kavramları daha iyi pekiştirebilirsiniz.








