Eş Zamanlı Olmayan Kodda Hata İşleme
await ile try/catch'i güvenle kullanma
Eş Zamanlı Olmayan Kodda Hata İşleme, CoddyKit'te ücretsiz bir Dart Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Dart Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Dart Academy kursu toplamda 4 dersten oluşur.
Future'lar Hata Verebilir
Asenkron işler ters gidebilir: bir sunucunun zaman aşımına uğraması veya bir dosyanın eksik olması gibi. Bir Future, değer yerine hatayla tamamlanabilir.
await ile try ve catch
Bir await ifadesini try/catch içine alın; başarısız Future, tıpkı sıradan eş zamanlı hatalar gibi tam o satırda hata fırlatır.
try {
final data = await fetch();
} catch (e) {
print("failed: $e");
}Belirli Türleri Yakalama
Diğer hataların olduğu gibi dışarı iletilmesine izin verirken tek bir hata türünü kesin olarak ele almak için on yan tümcesini kullanın.
try {
await load();
} on TimeoutException {
print("too slow");
}Hatayı İnceleme
Hem hata nesnesini hem de yığın izini almak için catch (e, s) ekleyin. Bu, asenkron hataların ayıklanmasını çok kolaylaştırır.
catch (e, s) {
print(e);
print(s);
}finally Her Zaman Çalışır
Bir finally bloğu await başarılı olsa da hata fırlatsa da çalışır; bu nedenle dosyaları kapatmak veya dönen yükleme göstergelerini durdurmak için doğru yerdir.
try {
await save();
} finally {
closeFile();
}async İçinden Hata Fırlatma
Bir async işlevinin içinde throw kullanırsanız döndürülen Future bu hatayla tamamlanır ve çağıranın yakalamasına hazır olur.
Future<int> risky() async {
throw StateError("nope");
}then Zincirlerindeki Hatalar
await kullanmadan, then tarzı bir zincirdeki hatayı ele almak için bir Future'a catchError ekleyin.
fetch().then(use).catchError(handle);Varsayılanla Kurtarma
catchError veya catch içinde bir geri dönüş değeri döndürebilirsiniz. Böylece programınız bir hatadan sonra düzgün biçimde çalışmaya devam eder.
Yakalanmamış Future Hataları
Göz ardı edilen başarısız bir Future, uygulamanın çökmesine veya yüksek sesle günlük kaydı oluşturmasına neden olabilecek yakalanmamış bir hataya dönüşür. Future'larınızı her zaman yakalayın veya await edin.
Gerektiğinde Yeniden Fırlatma
Bir hatayı burada günlük kaydına geçirip dışarıdaki bir işleyicinin de ele almasına izin vermek için catch içinde rethrow kullanın.
catch (e) {
log(e);
rethrow;
}finally İçinde await
İşlev dönmeden önce arabelleği temizlemek gibi asenkron temizlik işlemleri yapmak için finally içinde bile await kullanabilirsiniz.
Kısa Kontrol
Asenkron hataları yakalamayla ilgili kısa bir kontrol.
Özet: Asenkron Hatalar
await ifadesini try/catch ile korumayı, türleri on ile hedeflemeyi, finally içinde temizlik yapmayı ve kurtarmayı ya da yeniden fırlatmayı öğrendiniz. 🛡️
Yapay zeka eğitmeniyle Dart öğren — ücretsiz
Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.
- Kurslar
- 30
- Dersler
- 120
Sıkça Sorulan Sorular
“Eş Zamanlı Olmayan Kodda Hata İşleme” dersi ücretsiz mi?
Evet — “Eş Zamanlı Olmayan Kodda Hata İşleme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Dart Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Dart Academy kursu toplamda 4 dersten oluşur.
“Eş Zamanlı Olmayan Kodda Hata İşleme” dersinde ne öğreneceğim?
await ile try/catch'i güvenle kullanma Dart Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Dart Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Dart Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Eş Zamanlı Olmayan Kodda Hata İşleme” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Dart Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Dart Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Olay Döngüsü ve Mikro Görevler
- Future'lar Oluşturma ve Await Etme
- Eş Zamanlı Olmayan Kodda Hata İşleme
- Future.wait ve Paralel Çalışma