# Dart

Adres: https://softwaredictionary.org/tr/terimler/dart
Kategori: Programlama Dilleri
Son güncelleme: 2026-09-30

Kısaca: Dart, Google'ın yerel koda ve JavaScript'e derlenen, statik tipli ve çöp toplamalı dilidir; en çok Flutter uygulamalarının dili olarak bilinir.

## Dart nedir?

Dart, Google tarafından geliştirilen ve ilk kez 2011'de yayımlanan, genel amaçlı ve nesne yönelimli bir programlama dilidir. Başlangıçta tarayıcıda JavaScript'e alternatif olarak sunulmuştu; ancak bugün en çok, tek bir kod tabanından mobil, web, masaüstü ve gömülü uygulamalar geliştirmeye yarayan açık kaynaklı bir araç seti olan Flutter'ın arkasındaki dil olarak bilinir. 2023'te yayımlanan Dart 3, sağlam (sound) null güvenliğini zorunlu kıldı ve kayıtlar (records) ile örüntü eşleme ekledi.

Dart, tip çıkarımı olan statik tiplidir ve null güvenliği sağlamdır; yani `String` tipindeki bir değişken asla `null` tutamaz, yalnızca `String?` tutabilir. Dilin iki derleme modu vardır. Geliştirme sırasında tam zamanında (JIT) derleyici, çalışan bir uygulamayı durumunu kaybetmeden neredeyse anında güncelleyen hot reload'u mümkün kılar; sürüm derlemelerinde ise önceden (AOT) derleyici hızlı yerel makine kodu, web için de JavaScript veya WebAssembly üretir. Eşzamansız kod `Future`, `Stream` ve `async`/`await` kullanır; eşzamanlılık ise bellek paylaşmayan iş parçacıkları gibi çalışan isolate'larla sağlanır.

Dart esas olarak Flutter ile platformlar arası kullanıcı arayüzlerinde, ayrıca komut satırı araçlarında ve bazı sunucu tarafı kodlarında kullanılır. C tarzı sözdizimi, sınıfları ve süslü parantezleri Java, C# veya JavaScript bilen herkese tanıdık gelir; bu yüzden genellikle hızla öğrenilir.

Dart sıklıkla TypeScript ile kıyaslanır, çünkü ikisi de JavaScript benzeri bir programlama tarzına statik tipler ekler. TypeScript, JavaScript'in üzerine eklenen tipli bir katmandır ve her zaman JavaScript'e derlenir; Dart ise kendi çalışma ortamı ve kütüphaneleri olan, JavaScript'in yanı sıra yerel koda da derlenebilen bağımsız bir dildir. Dart'ın tipleri ayrıca program çalışırken de zorlanır; TypeScript'in tipleri ise derlemeden sonra silinir.

## Önemli noktalar

- Dart, sağlam null güvenliğine sahip, nesne yönelimli ve statik tipli bir dildir.
- Yerel koda önceden derlenir; web için JavaScript veya WebAssembly'ye derlenir.
- Geliştirme sırasındaki JIT derleme, hızlı hot reload sağlar.
- En çok Flutter arayüz araç setinin dili olarak bilinir.
- Isolate'lar, bellek paylaşmadan eşzamanlılık sağlar.

## Örnek: Dart'ta null güvenliği ve async/await

```dart
class User {
  final String name;
  final String? email; // the ? means this may be null
  User(this.name, [this.email]);
}

Future<void> main() async {
  final users = [User('Ada', 'ada@example.com'), User('Grace')];
  for (final user in users) {
    await Future.delayed(const Duration(milliseconds: 100));
    print('${user.name}: ${user.email ?? "no email"}');
  }
}
```

## Sık sorulan sorular

**Dart yalnızca Flutter için mi kullanılır?**

Flutter açık ara en büyük kullanım alanıdır, ancak Dart ayrıca komut satırı araçlarını, sunucu uygulamalarını ve JavaScript ya da WebAssembly'ye derlenen web uygulamalarını da çalıştırır.

**Dart, JavaScript'e benzer mi?**

Sözdizimi JavaScript geliştiricilerine tanıdık gelir, ancak Dart sağlam null güvenliğine sahip statik tipli bir dildir ve kendi çalışma ortamı ile standart kütüphanesi vardır. JavaScript'e derlenebilir, ama ayrı bir dildir.

**Dart derlenen bir dil mi, yorumlanan bir dil mi?**

Dart her iki aşamada da derlenir. Geliştirme sırasında hot reload'u desteklemek için tam zamanında bir derleyici, üretim derlemeleri için ise yerel makine koduna ya da JavaScript'e önceden derleme kullanır.

---

Software Dictionary: https://softwaredictionary.org/tr · https://softwaredictionary.org/tr/llms.txt
