CodeBlanks Logo Icon CodeBlanks

Sepet tasarımı

Alışveriş sepeti için sınıf yapısını tasarlarsın.

Sepet tasarımı

Bu projede bir alışveriş sepeti uygulaması adım adım kuracağız. İlk adım, sepetteki ürünleri tutacak Cart sınıfını tasarlamaktır. Dart'ta ilgili veriyi ve davranışı bir çatı altında toplamak için class kullanılır; sınıf ayrıntısını ileriki seviyede göreceksin.

Bir sepette ürün adları ve fiyatları tutulur. Bunun için List kullanırız: List<String> names = []; ve List<double> prices = [];. List'leri ayrıntılı olarak bir sonraki bölümde göreceksin; şimdilik köşeli parantez içinde boş bir liste olarak bilmen yeter. names.length eleman sayısını, names[i] i. elemanı verir.

List ile alanlar

Cart sınıfında iki alan olacak: names (ürün adları) ve prices (fiyatlar). Dart'ta sınıf alanları doğrudan bildirimle tanımlanır: List<String> names = [];. <String> tür parametresi, listenin String eleman tutacağını belirtir.

Bu alanlar her Cart nesnesi için ayrı ayrı yaratılır. Yani var c1 = Cart(); ve var c2 = Cart(); ile iki sepet yaratırsan, c1.names ve c2.names birbirinden bağımsız iki liste olur. Bu, sepetlerin birbirini etkilememesini sağlar.

Uygulama Cart sınıfını tanımla

Bir Cart sınıfı tanımla. İçinde List<String> names = []; ve List<double> prices = []; alanları olsun. main kısmı zaten bir sepet yaratıp sepet hazır yazdırıyor; sen yalnızca sınıfı tanımla. Çıktı tek satırda sepet hazır olmalı.

Başlangıç kodu

main.dart
// Cart sınıfını buraya tanımla

void main() {
  var cart = Cart();
  print("sepet hazır");
}

Örnek çözüm

main.dart
class Cart {
  List<String> names = [];
  List<double> prices = [];
}

void main() {
  var cart = Cart();
  print("sepet hazır");
}

Beklenen çıktı

sepet hazır

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Dart'ta class ne için kullanılır?

main.dart
class Cart { ... }
  • Döngü kurmak
  • Ekrana yazdırmak
  • Veriyi ve davranışı bir çatı altında toplamak Doğru cevap
  • Koşul denetlemek

Açıklama: class, ilgili veriyi ve davranışı tek bir çatı altında toplar.

2 List alanını yaz

Soru
class Cart {
  ____
  List<double> prices = [];
}
Cevap
class Cart {
  List<String> names = [];
  List<double> prices = [];
}

Açıklama: List<String> names = []; ile boş bir String listesi tanımlanır.

3 Parçayı işlevine eşle

Kavram Anlamı
class Cart Sınıf bildirimi
List<String> names Ad listesi
List<double> prices Fiyat listesi
[] Boş liste

Başlangıç bölümündeki tüm dersler