SORU
15 EYLÜL 2008, PAZARTESİ


Akıcı arayüzleri Demeter Kanunu ihlal ediyorlar?

Law of Demeter wikipedia article diyor ki:

Yasa basitçe ifade edilebilir "tek bir nokta".

Ancak fluent interface simple example Bu gibi görünebilir:

static void Main(string[] args)
{
   new ZRLabs.Yael.Pipeline("cat.jpg")
        .Rotate(90)
        .Watermark("Monkey")
        .RoundCorners(100, Color.Bisque)
        .Save("test.png");
}

Bu arada gider mi?

CEVAP
15 EYLÜL 2008, PAZARTESİ


Peki, Kanunun kısa tanımı çok fazla kısaltır. Gerçek "hukuk" (iyi API tasarımı gerçeklik tavsiye) şöyle dedi: kendi yarattığınız, ya da bir argüman olarak geçildi. Yalnızca access Erişim nesneleri dolaylı olarak diğer nesneleri yok. Akıcı arabirim yöntemleri genellikle, nesnenin tekrar kullanırsanız yasayı ihlal, bu yüzden değil nesnenin kendisini geri dönün. Başka yöntemler de ihlali yok yani senin için nesneleri oluşturun.

Ayrıca "klasik" API. yalnızca en iyi uygulamaları tavsiye "hukuk unutmayın Akıcı arayüzleri tasarımı API için tamamen farklı bir yaklaşım ve Demeter Kanunu ile değerlendirilebilir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DeAdPiXel6667

    DeAdPiXel666

    2 Ocak 2010
  • Flash CS6 Video Tutorials for Beginners (Actionscript 3 Gaming)

    Flash CS6 Vi

    14 EYLÜL 2012
  • soyacincautv

    soyacincautv

    14 NİSAN 2010