2009-02-14 26 views
5

SOLID ilkelerini izlemeyi denerim. Ancak, kullanıcı arayüzleri konusunda her seferinde, müşterinin ihtiyaç duyduğu karma karma, karma veri ile tek sorumluluğun güzel ilkeleri arasında doğal bir sürtünme olduğunu fark ettim.SOLID ve kullanıcı arayüzü?

Şimdi bölmek ve çeşitli bit ve tek sorumluluk sınıflara tipik bir kullanıcı arayüzünün parçalarını ele geçirmek mümkündür, ancak o zaman ilginç yapısal sorunların her türlü girmek sözde "ayrı" parçalara çünkü gui'nin çoğu zaman, aynı paylaşılan durumun farklı görünümleri veya üst üste gelen durumun en azından kısmi görünümleri olduğu ortaya çıkar.

Genelde çok karışık olmayan görünümlerim için oldukça karmaşık denetleyici sınıflarını bir araya getiriyorum, ama bu oldukça tutarsız kodlama uygulamasıdır ve bu beni biraz rahatsız ediyor. Sadece bölme karmaşıklığı buna değmez gibi görünüyor.

Peki bununla nasıl başa çıkıyorsunuz?

cevap

3

presentation patterns (Martin Fowler tarafından tamamlanmamış yazılar) içine baktınız mı? Karmaşık görünümler ve önemsiz görünümler için Özerk Görünüm için Sunum Modeli kullanıyorum. Sunum Modeli size esnek bir kurulum sağlar ve bu sınıfları kolayca test edebilirsiniz.

1

Sanırım haklısınız. Verilerin görünümü, iyi bir kullanıcı deneyiminin uygulamanız için belirttiği şey buysa, "karma bir karma ekranlı karma veri" olmalıdır. Kullanıcı Arayüzü için, kullanıcı arayüzünün kullanılabilirliği, kodlama tasarım ilkelerine bağlı kalmaya çalışmaktan daha önemlidir. Kod için tasarım ilkeleri, bir kullanıcı arayüzünün göründüğü veya çalıştığını belirtmemelidir. Ardından, kod için anlamlı olan katı formlar ve görünümlerle sonuçlanırsınız. Kullanıcı için mantıklı olanı yapın. Yukarıda bahsedildiği gibi bir MVC/MVP paterni olduğu söyleneni hala yardımcı olabilir. Görüntüleyiciyi görüntüden ayırın. Bu şekilde, görünümünüzü hala koruyabilir ve SRP'yi görünümde tutabilirsiniz. Sunucunuz SRP'yi ihlal etmek zorunda olan ve değişim için birden fazla nedene sahip olacak.

+0

10-15 yaşındaki veritabanları ile modern gui arasındaki tutarsızlık, işimizin yarısında bizi tutan şeydir;) – krosenvold

+2

Sadece robotlar elde edinceye kadar ... –

İlgili konular