Flutter, tek kod tabanından iOS ve Android uygulaması üreten bir mobil geliştirme çerçevesi. Yirmi yılı aşkın süredir mobil yazılım geliştiriyorum; Flutter'ı kurumsal saha uygulamalarından yapay zekâ destekli ürünlere kadar gerçek projelerde kullandım. Bu sayfada Flutter'ın ne olduğunu, bir Flutter uzmanının ne iş yaptığını ve projeniz için doğru seçim olup olmadığını anlatıyorum.
Flutter, Google tarafından geliştirilen ve tek kod tabanıyla iOS, Android, gerektiğinde web ve masaüstü uygulaması üretmeyi sağlayan açık kaynak bir çerçevedir. Dart diliyle yazılır. Arayüzü kendi çizim motoruyla oluşturduğu için uygulamanın görünümü ve davranışı iki platformda büyük ölçüde aynıdır.
Pratikte anlamı şudur: aynı işi iki kez yazmak yerine bir kez yazıp iki mağazaya çıkarırsınız. Ancak bu, "tek kod her şeyi çözer" demek değildir. İzinler, arka plan davranışları, bildirimler ve mağaza kuralları platforma göre hâlâ ayrı ele alınır. İyi bir Flutter uzmanı bu farkı bilerek çalışır.
Bu liste Flutter'ı kötülemez; maliyet ve risk karşılaştırmasıdır. Aynı konuyu daha ayrıntılı olarak Flutter mı native mi yazımda da ele aldım.
Açık Deniz Bilişim'de CTO olarak FMCG saha ekipleri için görev, anket ve konum tabanlı raporlama uygulamaları geliştirdim. Bu projelerde Flutter'ın yanında native Android (Java) ve iOS (Swift) de kullandık. ERP entegrasyonu, çevrimdışı çalışma ve saha koşullarında dayanıklılık kritikti.
DoktorAsistan'da mobil tarafı Flutter ile kurdum; backend Laravel ve Python, yapay zekâ katmanı LLM ve RAG üzerine oturuyor. Native geçmişim, hangi noktada platform kanalına inmem gerektiğini ve mağaza kurallarının nerede sorun çıkaracağını önceden görmemi sağlıyor.
İşi aşamalara bölerek ilerliyorum; her aşamanın sonunda çalışan bir çıktı ve onay var:
Aşamaların nasıl işlediğini iş neden aşama aşama yapılmalı yazımda anlattım.
Hedef platformlar, ekip yapısı ve donanım ihtiyacı belirler. iOS ve Android'i birlikte hedefleyen iş uygulamalarında Flutter genellikle daha hızlı ve ekonomiktir. Ağır donanım, artırılmış gerçeklik veya platforma özel derin entegrasyon gerekiyorsa native daha doğru olabilir.
İş mantığının ve arayüzün büyük bölümü ortaktır. Ancak izinler, arka plan çalışması, bildirimler, mağaza metadata'sı ve bazı native kütüphaneler platforma göre ayrı ele alınır. Doğru planlandığında toplam işin yaklaşık yüzde 85-95'i ortak koddan gelir.
Süre ekran sayısına, entegrasyonlara ve tasarımın hazır olmasına bağlıdır. Küçük bir MVP genellikle 4-8 hafta aralığında çıkar; kurumsal entegrasyonlu uygulamalarda bu süre uzar. Kesin süre ancak keşif aşamasından sonra verilebilir.
Evet. Flutter, mevcut iOS veya Android uygulamasına modül bazında eklenebilir. Önce hangi ekranların taşınacağı ve iki taraf arasındaki veri geçişinin nasıl olacağı planlanır; ardından kademeli geçiş yapılır.
Yayın sürecini ben yürütürüm: sürüm imzalama, mağaza metadata'sı, ekran görüntüleri ve inceleme süreci. Geliştirici hesapları her zaman sizin adınıza kalır; erişim ve sahiplik sizde olur.
Kaynak kod, dokümantasyon ve sürüm notlarıyla birlikte teslim edilir. Flutter sürüm yükseltmeleri, paket güncellemeleri ve mağaza politika değişiklikleri için istenirse aylık bakım anlaşması yapılır.
Uygun senaryolarda evet. Ancak karmaşık, SEO kritik veya ağır etkileşimli web ürünlerinde ayrı bir değerlendirme gerekir; her proje için doğru araç aynı değildir.