Dart'a Giriş
Bu sayfa, Dart programlama diline kısa bir giriş sunarak temel özellikleri örneklerle anlatmaktadır.
Dart dilini daha fazla tanımak ve öğrenmek için, sol taraftaki menüde listelenen konu sayfalarını ziyaret edebilirsiniz.
Unutmayın ki, Dart'ı keşfetmek heyecan verici bir yolculuktur ve bu yazı size bu yolculukta rehberlik etmeyi amaçlamaktadır. Keyifli okumalar!
Merhaba Dünya
Dart dili yürütmenin başladığı main()
fonksiyonuna ihtiyaç duyar. Geri dönüş değeri açıkca belirtilmeyen fonksiyonlar void
geri dönüş türüne sahiptir. Metni konsolda görüntülemek için print()
fonksiyonunu kullanabilirsiniz:
Dart'taki main()
fonksiyonu hakkında, komut satırı argümanları için isteğe bağlı parametreler dahil olmak üzere daha fazla bilgi için okumaya devam edin.
Değişkenler
Bir çok değişkeni var anahtar kelimesini kullanarak açıkca veri tipi belirtmeden tanımlayabilirsiniz. Veri tipi çıkarımı özelliği sayesinde, bu değişkenlerin veri tipi başlangıç değerine göre otomatik olarak belirlenir.
Varsayılan değerler, final
ve const
anahtar kelimeleri, ve static
türler dahil değişkenler hakkında daha fazla bilgi için okumaya devam edin.
Kontrol Akışı İfadeleri
Dart, genel kontrol akışı ifadelerini destekler:
Dart'taki kontrol akışı ifadeleri hakkında, break
ve continue
, switch
ve case
, ve assert
dahil olmak üzere daha fazla bilgi için okumaya devam edin.
Fonksiyonlar
Her fonksiyonun argümanları ve geri dönüş değeri türlerini belirtmenizi öneririz:
Tek bir ifade içeren fonksiyonlar için ok atama (arrow) sözdizimi, özellikle anonim fonksiyonları argüman olarak iletmek için kullanışlıdır:
Bu kod, bir anonim fonksiyonu (where()
fonksiyonuna olan argümanı) göstermenin yanı sıra, bir fonksiyonu bir argüman olarak kullanabileceğinizi gösterir: print()
fonksiyonu, forEach()
fonksiyonuna olan bir argümandır.
Fonksiyonlar hakkında daha fazla bilgi için, isteğe bağlı parametreler, varsayılan parametre değerleri ve leksikal kapsam dahil olmak üzere Dart'taki fonksiyonlar hakkında okumaya devam edin.
Yorum Satırı
Dart yorumları satırları genellikle // ile başlar.
Dart'ta yorumlar hakkında ve belgelendirme araçları nasıl çalışır, dahil olmak üzere daha fazla bilgi için okumaya devam edin.
Import (İçe Aktarma)
Diğer kütüphanelerde tanımlanan API'lara erişmek için import kullanılır.
Kütüphaneler ve görünürlük hakkında, kütüphane ön ekleri, show
ve hide
, ve deferred
anahtar kelimesi aracılığıyla tembel yükleme dahil olmak üzere Dart'taki daha fazla bilgi için okumaya devam edin.
Class (Sınıflar)
İşte üç özelliği, iki kurucusu ve bir yöntemi olan bir sınıfın örnekleriyle ilgili bir örnek. Bir özelliğin doğrudan ayarlanamaması durumunda, bir değişken yerine bir getter
yöntemi kullanılarak tanımlanır.
Daha fazla bilgi için, string
içlemeleri, string
yerine koyma, ifadeler, ve toString()
yöntemi dahil stringler hakkında okumaya devam edin.
UzayAraci sınıfını şu şekilde kullanabilirsiniz:
Başlatıcı listeleri, isteğe bağlı new
ve const
, yönlendiren kurucular, fabrika kurucular, getter
'lar, setter
'lar ve daha fazlası dahil olmak üzere Dart'taki sınıflar hakkında daha fazla bilgi için okumaya devam edin.
Enum'lar
Enum'lar, belirli bir küme değeri veya örneği sıralamak için kullanılan bir yoldur ve bu türün başka örneklerinin olmamasını sağlar.
İşte basit bir enum örneği, önceden tanımlanmış gezegen türlerini içeren:
İşte gezegenleri tanımlayan bir sınıfın gelişmiş enum deklarasyonu örneği, kendi güneş sistemimizin gezegenlerini içeren sabit örnek setini tanımlar.
Gezegen enum'ını şu şekilde kullanabilirsiniz:
Dart'ta enum ile ilgili daha fazla bilgi edinmek için, geliştirilmiş enum gereksinimleri, otomatik olarak tanıtılan özellikler, enum değer isimlerine erişim, switch
ifadesi desteği ve daha fazlasını içeren konulara odaklanabilirsiniz.
Inheritance (Miras Alma)
Dart, tek miras alma özelliğine sahiptir.
Sınıfları genişletme, isteğe bağlı @override
açıklaması ve daha fazlası hakkında bilgi edinin.
Mixin
Mixin, kodu birden fazla sınıf hiyerarşisinde yeniden kullanmanın bir yoludur. Aşağıda bir mixin örneği bulunmaktadır:
Bir sınıfa bir mixin'in yeteneklerini eklemek için sadece mixin'i sınıf ile genişletin.
PilotluArac
artık astronotlar alanına sahiptir ve ekiptenBahset()
metodunu içerir.
Mixin'ler hakkında daha fazla bilgi edinin.
Interface (Arayüz) ve Abstract (Soyut) Sınıflar
Tüm sınıflar örtük olarak bir arayüz tanımlar. Bu nedenle herhangi bir sınıfı uygulayabilirsiniz.
Örtük arayüzler veya açık arayüz anahtar kelimesi hakkında daha fazla bilgi edinin.
Bir soyut sınıf oluşturarak bir sınıf tarafından genişletilmek (veya uygulanmak) üzere tasarlanmış soyut metodlar içerebilirsiniz. Soyut sınıflar boş gövdeler içeren soyut metodları içerebilir.
Tanitilabilir
'i genişleten herhangi bir sınıf, tanimla()
metodunun uygulamasına sahip olacak ve vurguIleTanimla()
metodunu çağıracaktır.
Abstract sınıfı ve metodlar hakkında daha fazla bilgi edinin.
Async (Asenkron)
Async
ve await
kullanarak geri çağrı karmaşasını önleyin ve kodunuzu çok daha okunabilir hale getirin.
Yukarıdaki yöntem, aşağıdaki gibi eşdeğerdir:
Aşağıdaki örnek gösterildiği gibi, async ve await asenkron kodu okunması kolay hale getirir.
Ayrıca async* kullanabilirsiniz, bu size güzel, okunabilir bir şekilde akışlar oluşturmanıza olanak tanır.
Asenkron işlemleri destekleyen async fonksiyonlar, Future
, Stream
ve asenkron döngü (await for) hakkında daha fazla bilgi edinin.
Exceptions (İstisnalar)
Bir istisna çıktısı için throw kullanın:
Bir istisnayı yakalamak için, try
ifadesini on
veya catch
(veya her ikisi) ile kullanın:
Yukarıdaki kod asenkron olduğuna dikkat edin; try
, hem senkron kod hem de asenkron fonksiyon içinde çalışır.
İstisnalar hakkında, yığın izleme, yeniden atma ve Hata ile İstisna arasındaki fark gibi konularda daha fazla bilgi edinin.
Last updated