Özet - Null'ı Güvenli Şekilde Ele Alma
Coddy'nin Dart Journey'sinin Temeller bölümünün bir parçası — ders 82 / 94.
Görev
KolayBir mobil uygulama için kullanıcı profili sistemi geliştiriyorsunuz. Dart'ın null güvenliği özelliklerini anladığınızı gösteren bir UserProfile sınıfı oluşturun.
UserProfile sınıfını şu şekilde uygulayın:
- Null olamayan özellikler (her zaman bir değere sahip olmalıdır):
idtürüintcreatedDatetürüString
- Null olabilen özellikler (başlatmada null olabilir):
nametürüString?emailtürüString?agetürüint?
- Geç başlatılan özellik:
displayNametürüString,lateanahtar kelimesi kullanılarak bildirilmiş
- Yapıcı:
idvecreatedDate'i gerekli parametreler olarak kabul ederdisplayName'i"Guest"olarak başlatır
Yöntem:
<strong>void printProfile()</strong>Kullanıcı profilini şu formatta yazdırır:User Profile: ID: <id> Created: <createdDate> Name: <name or 'Not provided'> Email: <email or 'Not provided'> Age: <age or 'Not provided'> Display Name: <displayName> -------------------- Yöntem:
<strong>void updateEmail(String? newEmail)</strong>emailözelliğini yeni değerle günceller.
- Yöntem:
<strong>String getDisplayName()</strong>- Eğer
namenull değilse,displayName = name!ayarlar (null onay operatörü kullanarak) displayName'ın mevcut değerini döndürür
- Eğer
Önemli: name özelliğini güncelledikten sonra, profili tekrar yazdırmadan önce displayName alanını güncellemek için getDisplayName() çağırmalısınız.
Profil oluşturmak, güncellemek ve beklenen çıktıdaki gibi bilgileri görüntülemek için kodu tamamlayın.
Kendin dene
void main() {
// Kullanıcı profili oluştur
final profile = UserProfile(1, 'today');
// İlk profili yazdır
profile.printProfile();
// Profili güncelle
profile.name = 'John Doe';
profile.updateEmail('john@example.com');
profile.age = 30;
// Görüntülenen adı güncelle ve güncellenmiş profili yazdır
profile.getDisplayName(); // displayName'i güncellemek için bunu çağır
profile.printProfile();
}
class UserProfile {
// TODO: Özellikleri ekle (id, createdDate, name, email, age, displayName)
// TODO: Oluşturucu oluştur
// TODO: printProfile() metodunu uygula
// TODO: updateEmail() metodunu uygula
// TODO: getDisplayName() metodunu uygula
}Temeller bölümündeki tüm dersler
4Operatörler Bölüm 2
Karşılaştırma OperatörleriMantıksal VEMantıksal VEYAMantıksal DEĞİLTür Test OperatörleriÖzet - Karşılaştırmalar Yapma7Dizelerle Çalışma
Dize BirleştirmeDize İnterpolasyonuÇok Satırlı DizelerDize ÖzellikleriTemel Dize Yöntemleri10Koleksiyonlar - Haritalar Temelleri
Haritalar Nedir?Harita OluşturmaAnahtara Göre Değerlere ErişimAnahtar-Değer ÇiftleriHarita Boyutunu AlmaAnahtarları AlmaDeğerleri AlmaBir Anahtarın Varlığını Kontrol Etme13Derinlemesine Null Güvenliği
Null'ı AnlamaNullable TürlerNon-Nullable TürlerNull Assertion OperatörüGeç BaşlatmaÖzet - Null'ı Güvenli Şekilde Ele Alma2Değişkenler ve Temel Veri Tipleri
Değişkenler Nedir?DizgelerTamsayılar (int)Ondalık Sayılar (double)Boole Değerleri (bool)'var' ile Tür ÇıkarımıFinal DeğişkenlerSabit Değişkenlerİsimlendirme KurallarıTemel Null GüvenliğiÖzet - Değişken Bildirimi8Akış Kontrolü - Döngüler
'for' Döngüsü'while' Döngüsü'do-while' DöngüsüDöngülerde 'break' KullanımıDöngülerde 'continue' KullanımıÖzet - Kodu Tekrarlama3Operatörler Kısım 1
Aritmetik OperatörlerTamsayı BölümüModulo OperatörüArtırma ve AzaltmaAtama KısayollarıÖzet - Basit Hesaplamalar6Akış Kontrolü - Karar Verme
'if' İfadesi'else' İfadesi'else if' İfadesiÖzet - Basit Kararlarİç İçe 'if' İfadeleri'switch' İfadesi9Koleksiyonlar - Liste Temelleri
Listeler Nedir?Liste Oluşturmaİndekse Göre ErişimListe Uzunluğunu AlmaEleman EklemeEleman KaldırmaListenın Boş Olup Olmadığını Kontrol EtmeListe Üzerinde Yineleme12Gelişmiş Fonksiyonlar
İsteğe Bağlı Konumsal Parametrelerİsimli ParametrelerZorunlu İsimli ParametrelerVarsayılan Parametre DeğerleriÖzet - Fonksiyon Parametreleri15Proje: Basit Hesap Makinesi
Kurulumu YapmaSayı Tanımlama