# Flutter

Flutter|  |
| Yazar | Google |
| Geliştirici | Google ve topluluk |
| İlk yayınlanma | 12 Mayıs 2017) (2017-05-12) |
|  |
| Güncel sürüm | 3.44.0  18 Mayıs 2026 |
|  |
| Kod deposu | * github.com/flutter/flutter
 |
| Platform | Android, iOS, Google Fuchsia, Web, Windows, macOS ve Linux |
| Tür | Yazılım Framework'ü |
| Lisans | BSD Lisansı |
| Resmî sitesi | flutter.dev |

**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. 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. 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 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.

## 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.

## 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.

## 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)**

## 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.
 ),
 ),
 );
 }
}

```

## Yararlı Bağlantılar

* Resmi web sitesi4 Haziran 2020 tarihinde Wayback Machine sitesinde arşivlendi.

## Kaynakça