Middle
Dart'ta const anahtar kelimesinin kullanmanın yolları nelerdir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Dart'ta const anahtar kelimesi, derleme zamanında belirlenen ve program çalışması sırasında değiştirilemeyen sabit değerler oluşturmak için kullanılır.
Kullanım şekilleri:
-
Değişken modifikatörü olarak: Derleme zamanında sabit olan bir değişkeni bildirmek için kullanılır.
const int speedOfLight = 299792458; // Sabit değer -
Yapıcı (constructor) modifikatörü olarak:
constolarak bildirilen bir yapıcı, tüm alanları son (final) veya sabit (const) ise değiştirilemez örnekler oluşturur.class Point { final double x; final double y; const Point(this.x, this.y); // Sabit yapıcı } const origin = Point(0.0, 0.0); // Sabit örnek oluşturma -
Sabit koleksiyonlar oluşturmak için: Derleme zamanında sabit olan liste, küme ve haritalar oluşturmak için kullanılır.
const List<int> primeNumbers = [2, 3, 5, 7, 11]; // Sabit liste const Set<String> constants = {'pi', 'e', 'phi'}; // Sabit küme const Map<String, double> mathConstants = { 'pi': 3.14159, 'e': 2.71828 }; // Sabit harita -
Sabit değer beklendiği durumlarda: Örneğin, Flutter'da widgetler oluştururken, sabit widgetler optimize edilebilir.
// Flutter bağlamında const Text('Hello, World!'); // Sabit widget
final ile farkları:
const, derleme zamanında bilinen değeri tanımlar.final, çalışma zamanında bir kez atanan ve sonrasında değiştirilemeyen değeri tanımlar.
| Özellik | const |
final |
|---|---|---|
| Başlatma zamanı | Derleme zamanında | Çalışma zamanında (bir kez) |
| Değiştirilebilirlik | Değiştirilemez | Bir kez atanır, sonra değiştirilemez |
| Örnekler üzerinde kullanımı | Sabit örnek oluşturur (const yapıcı ile) |
Değiştirilemez referans oluşturur |
| Koleksiyonlar üzerinde kullanımı | Değiştirilemez koleksiyon oluşturur, içeriği değiştirilemez | Değiştirilemez referans oluşturur, içeriği değişebilir |