SORU
17 ŞUBAT 2009, Salı


Raylar kullanmak için tek Tablo Devralma Ve

Garip bir Tasarım sorun sıkışmış durumdayım

Profiller Modelleri iki türü üzerinde çalışıyorum

  • Kullanıcı profili (Kullanıcıya ait)
  • Diğerleri-site olarak korumak "" (kimseye ait olmayan) . botlar

Tipik OO davranış bu iki tür Tercihler aynı ama tek önemli nitelikleri/özellikleri ortak ( çok önemli olanlar ise 5-6 sayı), diğer özellikleri gibi "ilgi alanları vb"(neredeyse 10-15 özellikleri) olmadığı için bot profiller

Bu konuda daha önce çalışmış kodlayıcı ayrı modeller zor, testleri yazmak korumak için beklendiği gibi her yerde ve de fazlalık bir sürü oluşturur Denetleyicileri bot profiller/Kullanıcı profilleri etc / yarattı.Bu kadar KURU, bu fazlalık problemleri/tüm sorunları çözmek için en azından istedim.

Biri Tek Tablo bir çözüm olarak Miras önerdi

Birinin yerine Polimorfik Dernekler kullanılmasını önerdi.

daha iyi bir yaklaşım. Aslında ŞTİ kullanıyoruz?

Kendi düşüncem nitelikler Modeller için aynıdır ve davranışları da farklı olduğunda en iyi şekilde kullanılır ŞTİ.

Düşünceler hakkında ne yapabilirim ki?

CEVAP
17 ŞUBAT 2009, Salı


Nitelikleri aynı ama davranışları farklı olduğunda çoğunlukla yararlı olarak nitelendiren ŞTİ "doğru", ama muhtemelen küçük bir sınırlayıcı. Adından da anlaşılacağı gibi,, OO-stili açık devralma ilişki yerine farklı nesneler arasında veritabanı tarzı bir ilişki varken ŞTİ kullanıyorum.

Eğer botlar ve kullanıcılar arasında ortak bir kod varsa, ŞTİ kazanır gibi geldi diyebilirim. Eğer sadece bazı ortak öznitelikler varsa, muhtemelen daha az geçerli ama yine de değer bir de gitmek zorunda.

Oldukça deneysel bir insanım, benim tavsiyem bir gitmek vermek. Kodunuzu şube ve STI bir ilişkiye modelleri yeniden Düzenle. Eğer gerçekten kuru bir şeyler yapacak mı bakalım, ya da sadece swapları başka bir sorun baş ağrısı için bir set.

Çok görmezsiniz sanırım bir şey fayda sizin denetleyicileri kuruyor. Benim durumumda, STI modelleri genellikle benzer ilgili denetleyicileri çevirmek yok. Ama bunu denemek için başka bir şey olurdu. Bazen bir kazan var, bazen yok.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • cdgotx

    cdgotx

    8 Kasım 2011
  • Charles Griffin Gibson

    Charles Grif

    26 NİSAN 2006
  • Dylan Brenan

    Dylan Brenan

    22 Aralık 2009