SORU
21 HAZİRAN 2009, Pazar


Marker bir arayüz amacı nedir?

Marker bir arayüz amacı nedir?

CEVAP
21 HAZİRAN 2009, Pazar


Bu bir teğet buna dayanarak biraz "Mitch Buğday".

Genel olarak, her zaman insanlar çerçeve tasarım yönergeleri alıntı görüyorum, ben her zaman söz gibi:

Genellikle çerçeve tasarım kuralları çoğu zaman göz ardı edilmelidir.

Bu çerçeve tasarım kuralları ile herhangi bir sorun nedeniyle değil. Bu bence .NET çerçeve harika bir sınıf kitaplığı. Bu fantasticness bir çok çerçeve tasarım kuralları denir.

Ancak, tasarım ana hatlarına en en programcılar tarafından yazılan kod için geçerli değildir. Onların amacı milyonlarca geliştirici tarafından kullanılan geniş bir çerçeve oluşturma, Kütüphanesi daha verimli hale getirmek için değil sağlamaktır.

Bu öneriler bir çok şey yapmak için rehberlik eder:

  1. Bir şey uygulama . en basit yol olmayabilir
  2. Mayıs ekstra kod çoğaltma neden
  3. Mayıs yükü ekstra çalışma zamanı var

.net çerçeve büyük, çok büyük. Kesinlikle mantıksız herkes her yönü hakkında ayrıntılı bilgi sahibi olduğunu farz etmek çok büyük. Aslında, çok daha güvenli en programcılar sık daha önce kullanmış çerçevesinde bölümlerini karşılaşma varsayalım.

Bu durumda, bir API tasarımcısı başlıca hedefleri şunlardır:

  1. İşler çerçevesinde geri kalanı ile tutarlı tutmak
  2. API yüzey alanı gereksiz karmaşıklığı ortadan kaldırır

Çerçeve tasarım kuralları geliştiriciler bu hedefleri gerçekleştirir kod oluşturmak için itin.

Anlamına gelir yapıyor şeyler kaçınarak katmanları miras gerekse bile çoğaltarak kodu, ya da iterek tüm özel durum atma kodu "giriş noktaları" yerine kullanarak paylaşılan yardımcıları (böylece yığın izleri daha mantıklı hata ayıklayıcısını), ve başka bir sürü benzer şeyler.

Bu kurallar marker arayüzleri yerine öznitelikleri kullanarak önermek başlıca nedeni marker arabirimleri çıkarma, sınıf kitaplığı kalıtım yapısını çok daha ulaşılabilir kılıyor çünkü. Bir sınıfta 30 türleri ve devralma hiyerarşinin 6 kat ile 15 diyagram türleri ile ilgili bir hiyerarşi ve 2 kat oranla çok zor.

Gerçekten geliştiriciler API kullanarak milyonlarca vardır, ya da bir kod tabanı çok büyük (100 k LOC tekrar söylemek) aşağıdaki ise bu kurallar çok yardımcı olabilir.

Eğer 5 milyon geliştiricileri 15 dakika bir API öğrenmek yerine 60 dakika öğrenme harcama harcamak, sonuç 428 adamın yıllık net tasarruf. O zaman bir sürü.

Projelerin çoğu, ancak, geliştiriciler, ya da 100 bin LOC milyonlarca karıştırmayın. Demek 4 geliştiriciler ve yaklaşık 50 BİN loc ile tipik bir projede, varsayımlar kümesi çok farklı. Takımda geliştiriciler kodu nasıl çalıştığını daha iyi bir anlayış olacak. Bu çok daha anlamlı böcek miktarı ve çaba değişiklikler yapmak için gerekli azaltmak için hızlı bir şekilde yüksek kaliteli kod üretimi için, ve optimize etmek için yapar anlamına gelir.

Harcama 1 hafta ile uyumlu kod geliştirilmesi .değiştirmek kolaydır ve daha az hata kodu yazmak neden olabilir net çerçeve, vs saat 8:

  1. Geç projeleri
  2. İkramiye düşük
  3. Artan hata sayar
  4. Daha fazla zaman ofiste geçirdim ve plaj içme daha az zaman Margarita.

4,999,999 diğer geliştiricilerin maliyetleri absorbe olmadan genellikle değmez.

Örneğin, işaretleyici arayüzleri bir tek aşağı gelir testi"," ifade ve nitelikleri arıyor daha az kod. sonuçlar.

Bu yüzden tavsiyem:

  1. Eğer sınıf kitaplıkları (veya UI widget) yaygın tüketimi amaçlı geliştiriyorsanız çerçeve kurallar din izleyin.
  2. Eğer projenizde 100 bin LOC varsa bazıları benimseyerek düşünün
  3. Aksi takdirde onları tamamen görmezden geliyor.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ColdfusTion

    ColdfusTion

    3 Aralık 2007
  • jonathepianist

    jonathepiani

    31 Temmuz 2008
  • Kenneth Håkonsen

    Kenneth Håk

    13 Mart 2011