SORU
25 EYLÜL 2008, PERŞEMBE


Kullanarak Özel Statik Yöntemler avantajları

Herhangi bir örnek alanların kullanımı gerektirmeyen genellikle kod tekrarını azaltmak için iç özel yöntemleri olan bir sınıf oluştururken, statik olarak yöntemi bildirmek için performans veya bellek avantajı var mı?

Örnek:

foreach (XmlElement element in xmlDoc.DocumentElement.SelectNodes("sample"))
{
    string first = GetInnerXml(element, ".//first");
    string second = GetInnerXml(element, ".//second");
    string third = GetInnerXml(element, ".//third");
}

...

private static string GetInnerXml(XmlElement element, string nodeName)
{
    return GetInnerXml(element, nodeName, null);
}

private static string GetInnerXml(XmlElement element, string nodeName, string defaultValue)
{
    XmlNode node = element.SelectSingleNode(nodeName);
    return node == null ? defaultValue : node.InnerXml;
}

Orada GetİnnerXml bildirmek için herhangi bir avantaj() yöntemleri gibi statik? Hiçbir görüş yanıtları lütfen, bir fikrim var.

CEVAP
25 EYLÜL 2008, PERŞEMBE


Bu konuda: FxCop rule page

Yöntemleri gibi statik işaretledikten sonra, derleyici bu üyeler için sanal olmayan ekipler çıkarır. Sanal olmayan arama siteleri yayan geçerli nesne işaretçisi null sağlayan da her çağrı için çalışma zamanında bir kontrol önleyecektir. Bu performans-hassas kod için ölçülebilir bir performans artışı neden olabilir. Bazı durumlarda, geçerli bir nesne kopyasını erişmek için başarısızlık doğruluğu bir sorunu temsil eder.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • JorteexHD

    JorteexHD

    20 NİSAN 2012
  • metallmanutza13

    metallmanutz

    13 NİSAN 2007
  • NextKsa

    NextKsa

    7 EKİM 2009