Sıklıkla, alanları dış dünyaya göstermek yerine, sınıf alanları için alıcı ve ayarlayıcı yöntemleri (C #'daki özellikler) yaparak kapsüllemeyi korumamız gerektiği söylenir.
Ancak, bir alanın bir değeri tutmak için orada olduğu ve almak veya ayarlamak için herhangi bir hesaplama gerektirmediği birçok kez vardır. Bunlar için hepimiz bu sayıyı yaparız:
public class Book
{
private string _title;
public string Title
{
get{ return _title; }
set{ _title = value; }
}
}
Bir itirafım var, tüm bunları yazmaya dayanamadım (gerçekten, yazmak zorunda değildi, bakmak zorundaydı), bu yüzden haydut gittim ve kamu alanları kullandım.
Daha sonra C # 3.0 geliyor ve otomatik özellikler eklediklerini görüyorum:
public class Book
{
public string Title {get; set;}
}
hangisi daha düzenli ve minnettarım, ama gerçekten, sadece kamusal alan yapmaktan çok farklı olan nedir?
public class Book
{
public string Title;
}
prop
Kod parçacığı hızlı özelliklerinin oluşturmayı kolaylaştırır. Sadece prop
sekmeyi yazın.