Merhaba arkadaşlar, bugün bilgisayarımıza flutter kurulumuna bakacağız.
Flutter ile tek bir kod kullanarak mobil (Android/iOS), web ve masaüstü (Windows, macOS, Linux) uygulamaları geliştirebilirsin. Ayrıca oyun, IoT, AR/VR ve yapay zekâ tabanlı projeler için de kullanılabilir.
| Avantajlar | Dezavantajlar |
|---|
| Tek kod tabanı ile çoklu platform desteği | Büyük ve karmaşık projelerde performans sınırlamaları olabilir |
| Google destekli, sürekli gelişen ekosistem | Native çözümlere göre bazı donanım entegrasyonları daha zor |
| Zengin widget kütüphanesi ile hızlı UI geliştirme | Yeni başlayanlar için Dart öğrenme eğrisi |
| Açık kaynak ve geniş topluluk desteği | Çok ileri seviye grafik/oyun motoru ihtiyaçlarında sınırlı |
Piyasada flutter ile yapılmış örnek uygulamalar
Google Ads → Reklam kampanyalarını yönetmek için kullanılan resmi uygulama.
Alibaba (Xianyu) → Çin’de ikinci el ürün alışverişi için kullanılan dev platform.
BMW – My BMW App → Araç sahiplerinin araç bilgilerini takip edebildiği resmi uygulama.
Nubank → Latin Amerika’nın en büyük dijital bankalarından biri.
Reflectly → Yapay zekâ destekli kişisel günlük ve mindfulness uygulaması.
Hamilton Musical App → Broadway müzikali Hamilton için resmi uygulama.
Realtor.com → ABD’de gayrimenkul arama ve listeleme uygulaması.
Tencent → Çin’in teknoloji devi, bazı uygulamalarında Flutter kullanıyor.
Square → Finansal hizmetler ve ödeme çözümleri sunan uygulama.
Hookle → Sosyal medya yönetim uygulaması.
Cryptograph → Kripto para takibi için kullanılan uygulama
Kurulum Algoritması aşağıdaki gibidir:
- Windows kullanıcı adında boşluk olup olmadığına bak
- Eğer boşluk içeren ya da tr karakter bir kullanıcı adın varsa bu durumda yeni kullanıcı adı açman gerekecektir.
Flutter paketini indirmemiz gerekecek.
Windows işletim sistemi üzerinde android geliştirmek için alttaki linki kullanıyoruz.
https://docs.flutter.dev/install/manual
Android Studio indirmemiz gerekecek.
Android Studio Narwhal 3 Feature Drop | 2025.1.3
https://developer.android.com/studio
c:\src oluştur
flutter.zip içindeki flutter klasörünü src nin içine at
system variables / path icine
c:\src\flutter\bin I ekle
windows 11 system variables icine path eklemem lazim ama bütün butonlar disabled gözüküyor
kisayol kullanmadan eski usul gidince aktifler. kisayol user variable icin calisiyor. digerlerini disabled getiriyor.
komut satiri ac
flutter --version komutunu calistir
işlemlerin tamamlanmasını bekle
flutter doctor komutu ile eksik adımları öğrenebilirsin.
------------------------------------------------
android studio kur
kurulumda android virtual device da sec
kurulum 2. parçası var
her seyi kur
kurulum sonrasi welcome ekrani acilinca
sol altta settings alalina tikla (cark simgesi)
emulator yoksa kur. full kurulum yaptiysan var.
welcome ekraninda plugins alaninda flutter search et ve kur
android studio restart et
Path ekle
C:\Users\porta\AppData\Local\Android\Sdk
C:\Users\porta\AppData\Local\Android\Sdk\platform-tools
doktoru tekrar calistir
adb kur (otomatik acilirsa onayla)
-------------------------------------------------
new flutter project
flutter sec sdk yol gir C:\src\flutter
proje adi gir: ilk_proje
java sec
projeyi olustur
-------------------------------
download the tools from https://developer.android.com/studio#command-line-tools-only and make sure
ANDROID_HOME environment variable ekle C:\Users\porta\AppData\Local\Android\Sdk
android studio projesi olustumus iken settings ac
search alaninda sdk tool ara
Android SDK Command Line Tools kur.
flutter doctor --android-licenses çalıştır
lisansları onayla
----------------------------
-----------
visual studio installer ac
desktop development with c++ workload kur
(vs 2 farklı version kurulu ise dikkat et ve doctor ne istiyorsa onu kur)
doktoru son kez calistir.
----------------------------
emulator 14 imaj indir
virtual device pixel 7 kur
start et
bos proje ac, pixel 7 sec, run et
------------------------
vdm ile emulatoru ac
Stateless Widget ve Stateful Widget Nedir?
StatelessWidget: Sabit, değişmeyen içerikler için.
StatefulWidget: Kullanıcı etkileşimi veya veri değişimiyle güncellenen içerikler için kullanılır.