Flutte ile Merhaba Uygulaması
Flutter Nedir? Nasıl Çalışır? (Yeni Başlayanlar İçin Zihinsel Model)
Flutter’a başlarken çoğu kişi “widget ezberi” yaparak ilerliyor. Bir süre sonra da şu cümle geliyor: “Ben bunu yazdım ama Flutter neden böyle davranıyor?”
Bu yazıda hedefimiz ezber değil. Flutter’ın nasıl çalıştığını zihnimize oturtacağız. Böylece ileride state, performans, mimari gibi konular çok daha kolay gelecek.

Flutter nedir?
Flutter, Google tarafından geliştirilen cross-platform bir UI (arayüz) framework’üdür. Tek bir kod tabanı ile Android, iOS, Web ve Desktop hedeflerine uygulama geliştirebilirsiniz.
Flutter’ı diğerlerinden ayıran asıl fark
Flutter’ı özel yapan şey sadece “tek kodla çok platform” değildir. Flutter’ın en büyük farkı şudur:
Flutter çoğu UI’yi native bileşenleri çağırarak değil, kendisi çizerek oluşturur.
Bu ne demek? Basit düşünelim:
- Sen “buton istiyorum” dersin
- Flutter bunu bir “tanım” olarak alır
- Sonrasında motor (engine) bunu ekrana piksel piksel çizer
Not: Bu yaklaşım sayesinde UI davranışları platformdan platforma daha tutarlı olur. Bu tutarlılık, ileride tasarım ve performans işlerini kolaylaştırır.
Flutter çalışırken ne olur?
Flutter’ı kafada oturtmak için şu akışı bilmek yeterli:

Akış şöyle düşünülebilir:
- Sen Dart ile UI’yi tanımlarsın
- Flutter Framework bu tanımı işler
- Engine (Skia) bunu ekrana çizer
Widget nedir?
Flutter’da “her şey widget” derler ve bu doğrudur. Ama widget’ı yanlış anlamak çok yaygın.
Widget, ekrandaki şey değildir. Widget, ekrandaki şeyin tarifidir.
Bunu bir örnekle düşünelim:
- Tarif = “Pilav şöyle yapılır”
- Pilavın kendisi = pişmiş sonuç
Flutter’da widget, tarif gibidir. Flutter engine de bu tarife bakıp “sonucu” (ekranı) üretir.
Sık hata: “Ben şu widget’ı koydum, niye güncellenmedi?”
Flutter çoğu zaman “güncellemez”, yeniden çizer. Bu cümle ileride performans konularının temelidir.
Stateless ve Stateful arasındaki fark
En kısa haliyle:
- StatelessWidget: UI sabitse, veri değişmiyorsa
- StatefulWidget: UI zamanla değişecekse (ör. sayaç, form, API sonucu)
Flutter neden Dart kullanıyor?
Flutter’ın Dart’ı seçmesi tesadüf değil. Dart, Flutter’ın ihtiyacı olan iki önemli şeyi aynı anda sağlar:
- Hot Reload için hızlı geliştirme deneyimi
- Yayınlanan uygulamalarda yüksek performans (AOT derleme)
Dart ayrıca async işlemler (Future/Stream) için iyi bir modele sahiptir ve UI geliştirmede verimli çalışır.
Özet
- Flutter cross-platform bir UI framework’üdür
- Flutter çoğu UI’yi kendi çizer (engine)
- Widget = ekrandaki şey değil, tanımıdır
- Flutter çoğu zaman “update” yerine rebuild yapar
- Dart seçimi performans + geliştirme deneyimi içindir
Sıradaki yazı
Bir sonraki makalede kurulum tarafına giriyoruz:
Flutter Kurulumu (Windows/macOS/Linux) – Sorunsuz Kurulum Rehberi

