Mobil uygulamanızı Flutter ile nasıl sıfırdan yazabilirsiniz?
Merhaba, bu yazıda, var olan mobil uygulamalarınızı, Flutter ile nasıl sıfırdan yazabileceğinizi yani kısaca Native’den Flutter’a geçişten bahsedeceğim.
Native’den Flutter’a Geçiş (Büyük Göç)
Tasarım
Öncelikle Flutter’da her şeyin bir widget olduğunu unutmayın. Yani var olan tasarımlarınızı Flutter’da daha kolay bir şekilde yapabiliceksiniz.
İlk aşamaya gelelim, Android’te SVG dosyaları XML’e çevirilip kullanılabilirken, Flutter’da ise genel olarak SVG tercih ediliyor. XML tasarım dosyalarınızı SVG’ye çevirmek için şöyle güzel bir site var.
Bu siteye girip XML dosyanızı seçip ardından export’a basıp SVG çıktısı alabiliyorsunuz 😃
Kütüphaneler
Android’teki çoğu kütüphaneyi veya benzerini pub.dev’de bulabilirsiniz.
Mesela;
Floor kütüphanesi, Android’teki Room kütüphanesinden esinlenilmiş. Eğer Android uygulamanızda Room kullandıysanız Flutter kısmında da Floor kullanarak kodları değiştirmeden veya çok az oynama yaparak kullanabilirsiniz 😉
Flutter Favori programı sayesinde kaliteli paketleri kolay bir şekilde bulabilirsiniz. Paket listesine buradan ulaşabilirsiniz.
Backend
Hali hazırda, Android veya iOS uygulamanızı geliştirirken backend’i yazmış olduğunuz için Flutter ile uygulamanızı sıfırdan yazarken backend kısmını tekrardan yazmayacaksınız ve kolay bir şekilde entegre edebileceksiniz.
Flutter’ın kendi dokümantasyonunda Networking başlığı altında http paketiyle yapabilecek işlemler çok güzel bir şekilde açıklanmış.
Native
Uygulamanızda özelleştirilmiş bildirim göstermek isterseniz (pub.dev’deki kütüphaneler bunu desteklemiyor), telefonun derleme numarası vs gibi bilgileri çekmek isterseniz Platform Channel kullanarak native kod (Android tarafında Java veya Kotlin, iOS tarafında ise Objective-C veya Swift) yazarak çok rahat yapabilirsiniz.
Mesela pub.dev’deki bir çok speech to text kütüphanesi her platformda düzgün çalışmayabiliyor burada şöyle bir çözüm bulmuştum; iOS’ta zaten klavyede bu işlemi yapan bir buton var, yapmanız gereken sadece mikrofona erişme izni istemek (permission_handler kütüphanesini kullanabilirsiniz).
Android tarafında ise RecognizerIntent’i kullanarak Platform Channels aracılığıyla Flutter ile haberleştirebilirsiniz.
App Clips
iOS 14 ile beraber App Clips duyuruldu. Flutter uygulamanıza App Clip desteği eklemek isterseniz, Flutter dokümantasyonunda güzel bir şekilde açıklanmış.
Henüz şuan deneysel olduğunu bilmekte fayda var yani stabil çalışmayabilir.
Ek olarak iOS 14 desteğiyle alakalı issueları buradan takip edebilirsiniz.
Son
Yazımı okuduğunuz için teşekkür ederim, başka yazılarda görüşmek üzere (: