Sepet tasarımı
Alışveriş sepeti sınıfının iskeletini ve ürün modelini tasarlarsın.
Sepet tasarımı
Bu projede bir alışveriş sepeti uygulaması adım adım kuracağız. İlk adım, sepetteki ürünü temsil edecek Product sınıfını tasarlamak.
Bir ürünün üç temel özelliği vardır: ad (string), fiyat (double) ve miktar (int). C#'ta bu özellikleri public ... { get; set; } biçiminde otomatik özellik (auto property) olarak yazarız. Böylece dışarıdan p.Name gibi erişilir.
Otomatik özellik
C#'ta public string Name { get; set; } yazdığında bir otomatik özellik (auto property) oluşturursun. Arka planda derleyici gizli bir alan yaratır; sen get/set gövdesini yazmazsın.
Bu, basit veri taşıyan sınıflarda çok kullanışlıdır. var p = new Product { Name = "Kalem", Price = 12.5, Quantity = 2 }; yazarak nesneyi kısa yoldan oluşturabilirsin; bu yazım nesne başlatıcı (object initializer) olarak adlandırılır.
Uygulama Product sınıfını tanımla
Bir Product sınıfı tanımla. Üç otomatik özellik içermeli: public string Name, public double Price, public int Quantity (her biri { get; set; } ile). Main zaten bir Product oluşturup adını yazdırıyor; sen sadece sınıfı yaz.
Örnek çözümü göster
class Product yaz ve içine üç otomatik özellik ekle.
Örnek çözüm:
using System;
class Product
{
public string Name { get; set; }
public double Price { get; set; }
public int Quantity { get; set; }
}
class Program
{
static void Main()
{
var p = new Product { Name = "Kalem", Price = 12.5, Quantity = 2 };
Console.WriteLine(p.Name);
}
}
Kendini test et
-
Sepet için hangi veri yapısı en uygundur?
// sepette birden fazla ürün- Tek bir int değişken
- Tek bir string değişken
- Product nesnelerini tutan liste
- bool değişken
Cevabı göster
Product nesnelerini tutan liste — Doğru. Birden fazla Product nesnesini List<Product> ile tutarsın.
-
Sınıf adını yaz
class ____ { public string Name { get; set; } public double Price { get; set; } public int Quantity { get; set; } }Cevabı göster
class Product { public string Name { get; set; } public double Price { get; set; } public int Quantity { get; set; } } -
Özellik adını türüne eşle
- Name
- string
- Price
- double
- Quantity
- int
- items
- List<Product>