MVC en yanlış tasarım modelidir. Bir modelin tanımı gereği vardır.
Bir kentsel planlamacı bir proje önerdiğinde, bunun için bir model tasarlar. Modeli oluşabilirken ayrı varlıklar: binalar, caddeler, parklar, genellikle ayrı modelleri ile temsil edilmez: Onlar tek bir model bütün yönü vardır.
Yani MVC, modeli farklı varlıklar oluşur olabilir, ve muhtemelen bunun için en iyi kelime: Bir varlık, bir veritabanı tablo ile temsil edildiği gibi, varlık. MVC modeli bile aslında kod temsil daha soyut bir şey olabilir, ama oldukça başvuru üzerine hareket gerekebilir tüm veriler için bir kavramsal şemsiye olabilir.
Bu kişiler, kendi yöntemlerini, (silme, güncelleme, okumak, oluşturmak) CRUD ve yönlerine karşılık gelebilir özellikle yöntemleri varsa, bu göz önüne alındığında, onlar not denetleyicisi doğrudan maruz olmalıdır, çok olduğu soyutlama düşük bir seviye. Bu yapı taşları, kaba taneli arayüzü içine inşa edilmelidir Örneğin bir kaydı silmek olabilir ama sonra silindikten sonra kayıtların listesini döndürür. Kontrolörü hemen tüm yukarıda gerçekleştiren bir kaba taneli yöntem erişimi gerekiyor.
Ayrıca, doğrudan kontrolöre kuruluşların yöntemleri göstermek için, kontrolörler örneğin bir değişiklik ORM (nesne ilişkisel haritalama) sistemi kullanılıyor ne kadar varsa, varlık sınıfları ile birlikte, yeniden yazılamaz olması neden olabilir . Benim tavsiyem ara katman da istisna işleme, günlüğü ve eğilimi gereken başka tür administrivia için iyi bir yerdir.
Daha yüksek bir soyutlama düzeyinde yöntemleri önerdi tabakası bazen iş temsilci, ya da bir "cephe" olarak adlandırılan, ama bu aslında bir model düşünün ne olur. Bu çok teorik değildir ve OP ya da diğer okuyucular için yararlı olduğunu umuyoruz.