SORU
21 EYLÜL 2008, Pazar


Otomatik uygulanan alıcıları ve ayarlayıcıları kamu alanları vs

C için örnek kod görüyorum# sınıfları bunu yapar:

public class Point {
    public int x { get; set; }
    public int y { get; set; }
}

Ya da, eski kod, yeni açık destek olmadan özel bir değeri olan ve aynı otomatik uygulanan özellikler:

public class Point {
    private int _x;
    private int _y;

    public int x {
        get { return _x; }
        set { _x = value; }
    }

    public int y {
        get { return _y; }
        set { _y = value; }
    }
}

Benim soru, neden? Yukarıdaki yapıyor ve sadece bu üyeler yaparak ortak alanlar, aşağıdaki gibi arasında işlevsel bir fark var mı?

public class Point {
    public int x;
    public int y;
}

Açık olmak gerekirse, temel veri bazı çeviri yapmak için gereken zaman alıcı ve ayarlayıcıları değerini anlıyorum. Ama bu değerleri yolunuz durumlarda, gereksiz yere ayrıntılı görünüyor.

CEVAP
21 EYLÜL 2008, Pazar


Kodlama standartlarında hala tüm sınıflar için ayrıntılı özellikler ısrar yani bu bizim takım henüz çözülmüş değil bir sorun olmasına rağmen ve kabul için gereksiz bir ayrıntı gibi görünüyor () eğilimindedir.

Jeff Atwood birkaç yıl önce ele. En önemli nokta o geriye dönük olarak belirtildiği değişen bir alan için bir özelliğin breaking change kodunuzu; her şeyi tüketir olmalı çekirdekler ile çalışma yeni bir sınıf arabirimi, Yani eğer bir şey dışında kontrol tüketen bir sınıf olabilir sorunları.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ludique

    Ludique

    21 NİSAN 2009
  • mliskIT

    mliskIT

    29 Mart 2012
  • Ty Moss

    Ty Moss

    20 Kasım 2007