En İyi Sorular
Zaman Çizelgesi
Sohbet
Bakış Açıları
Flutter
Yazılım geliştirme platformu Vikipedi'den, özgür ansiklopediden
Remove ads
Flutter, Google tarafından oluşturulan açık kaynaklı bir UI yazılım geliştirme kitidir. Android, iOS, Windows, Mac, Linux ve web için uygulamalar geliştirmek için kullanılıyor.[4] Flutter'ın ilk sürümü "Sky" olarak biliniyordu ve Android işletim sisteminde çalışıyordu. Flutter ilk olarak 2015 Dart geliştirici zirvesinde tanıtıldı. Tanıtımında sabit bir şekilde saniyede 120 FPS çalışan uygulamalar geliştirilebileceği belirtildi.[5] 4 Aralık 2018'de Flutter 1.0, Flutter Live etkinliğinde ilk "kararlı sürüm" olarak yayımlandı. 11 Aralık 2019'da Flutter Interactive etkinliğinde Flutter 1.12 yayımlandı.[6]
6 Mayıs 2020'de, 2.8 sürümündeki Dart SDK ve 1.17.0 sürümündeki Flutter, Metal API'a desteğin eklendiği ve iOS cihazlarındaki (yaklaşık %50) ana widget'larındaki performansı büyük ölçüde artırdı. Ağ etkinlikleri izleme aracı ve çok daha fazlası eklendi.
Remove ads
Tarihçe ve Sürüm Gelişimi
- Flutter, Google tarafından geliştirilmeye başlanmış ve ilk olarak 2015 yılında Dart geliştirici zirvesinde “Sky” adıyla tanıtılmıştır.
- 4 Aralık 2018: Flutter 1.0 sürümü yayımlanarak kararlı hâle gelmiştir.
- 2021: Flutter 2.0 yayımlandı. Bu sürüm ile web, masaüstü ve yerleşik cihaz desteği “kararlı” olmasa da “beta” veya “dev” kanallarında desteklenmeye başlandı.
- 3 Mayıs 2023: Google, Flutter 3.10 sürümünü duyurdu. Bu sürüm, Dart 3 ile birlikte geldi ve platformlar arası geliştirme araçlarını büyük ölçüde iyileştirdi.
Remove ads
Dart Programlama Dili
Flutter, Dart adlı programlama dili ile yazılır. Dart, yine Google tarafından geliştirilmiş, istemci tarafı odaklı, C tarzı sözdizimine sahip, JIT (Just-In-Time) ve AOT (Ahead-Of-Time) derleyicilerini destekleyen bir programlama dilidir.
Dart sayesinde:
- Geliştirme sürecinde “hot reload” özelliği ile anında güncellemeler görülebilir.
- AOT derleme ile yüksek performanslı, native (yerel) kodlar üretilebilir.
Remove ads
Teknik Mimari ve Bileşenler
Flutter Motoru
- C++ ile yazılmıştır.
- Grafik işlemleri için Skia grafik motorunu kullanır.
- Platforma özgü API'lerle (kamera, GPS, dosya sistemi gibi) iletişimi sağlayan platform kanallarını içerir.
Widget Sistemi
- Flutter’ın temel yapı taşı “widget”lardır.
- StatelessWidget ve StatefulWidget türleriyle kullanıcı arayüzleri inşa edilir.
- Material Design (Android) ve Cupertino (iOS) stillerinde önceden tanımlı widget’lar sunar.
Rendering (Çizim)
- Flutter, platformun yerel UI sistemini kullanmak yerine kendi widget'larını çizer. Bu, daha tutarlı bir görünüm sağlar.
- Skia motoru sayesinde yüksek performans elde edilir.
Platform Desteği
Flutter; aşağıdaki platformlarda çalışabilir:
- Android
- iOS
- Web (HTML/CSS/CanvasKit ile)
- Windows
- macOS
- Linux
- Embedded sistemler (Raspberry Pi gibi)
Masaüstü desteği başlangıçta sadece deneyseldi; ancak Flutter 3.0 itibarıyla Windows, macOS ve Linux için kararlı destek sunulmuştur.
Flutter ile Geliştirilen Bazı Uygulamalar
- Google Ads
- Alibaba
- BMW
- eBay Motors
- Reflectly
- Hamilton Musical App
Flutter’ın Avantajları
- Tek bir kod tabanıyla çoklu platformlara uygulama geliştirme imkânı
- Hot reload ile hızlı geliştirme süreci
- Yüksek performans (native benzeri)
- Zengin widget kütüphanesi
- Aktif topluluk ve düzenli güncellemeler
Rakipleri
Flutter, aşağıdaki diğer çapraz platform araçlarıyla rekabet halindedir:
- React Native (Meta)
- Xamarin (Microsoft)
- SwiftUI (Apple, sadece iOS/macOS)
- Kotlin Multiplatform (JetBrains)
Remove ads
Framework Mimarisi
Flutter'ın ana bileşenleri şunlardır:
- Dart platformu
- Flutter motoru
- Temel kütüphane
- Tasarıma özel widget'lar
Merhaba Dünya Örneği
Flutter kullanılarak yazılmış bir "merhaba dünya" örneği:
import 'package:flutter/material.dart';
void main() => runApp(HelloWorldApp());
class HelloWorldApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
//Uygulama arayüzünde gösterilecek olan alan.
// MaterialApp veya Scaffold açılabilir, yahut metot ile farklı bir yerden inşa edilebilir.
return MaterialApp(
title: 'Merhaba Dünya Uygulaması',
//title ile uygulamamızın ismi belirlenir (telefon ana ekranında görünecek olan isim).
home: Scaffold(
//AppBar() isimli widget otomatik olarak uygulamanın en üstüne bir bar oluşturur.
appBar: AppBar(
title: Text('Merhaba'),
// Uygulama barına "Merhaba" yazdırır
),
//Center isimli widget ile yazıyı sayfa ortasına yerleştiriyoruz.
body: Center(
child: Text('Merhaba Dünya'),
// ekrana "Merhaba Dünya" yazdırır.
),
),
);
}
}
Remove ads
Yararlı Bağlantılar
- Resmi web sitesi4 Haziran 2020 tarihinde Wayback Machine sitesinde arşivlendi.
Kaynakça
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads