İşte çerçevesi iyi ve gerçek olup olmadığını görmek için yardımcı olabilecek birkaç soru vardır.
"Can i run unit tests for my MVC classes without framework?"
Ve bu birim testi yazmak bile geçerlidir.
Sen çerçevesinde bağımsız MVC ilgili kod yazmak gerekir. Eğer uygulama çerçevesinde bazı input aldığında, o, as objects with known interfaces hiçbir somut sınıflar olmalıdır.
Şey true MVC framework mimarisi kendisi ile ilgili bir (or very limited) etkisi olurdu, bir. En iyi ihtimalle, bu sadece bir clear sağlamak ve easy yolu MVC mafyadan almak için başvuru çağrısı için olacaktır. Ve belki You .. değil sınırlamalar ve kısıtlamalar için kolaylıklar sağlar.
"Does it run on magic and fairy dust?"
Sen çerçeve tarafından sağlanan herhangi bir sınıf, genişletmek gerekir. Ve bunu uygulamak gerekir hangi işlev anlamak kolay olmalıdır.
Eğer "thing just happen" bunu yapmak çok zor olur. Bu genellikle çerçevenin kodu küresel durumuna işaret ediyor. Ya statik yöntemler veya global / statik değişkenler şeklinde.
"At which point MY code kicks in?"
Nerede ve nasıl size denetleyici idam olur bulabilirsiniz? Genellikle tüm bu kolay olmayacak. Bu mistik noktası genellikle nesne grafiğinde derin. Bazen uzun bir sınıfta.
Böyle durum, ortamı değiştirmek için çok zor hale getirir, kontrolör idam edildiği. Ayrıca denetim metotları gibi görünmelidir nasıl sıkı kurallar koymuştur.
Bu, tüm geri noktaya getiriyor, bu doğru MVC çerçevesinde gerektiği enhance the development process instead of restricting seçenekleriniz de.
"Was he/she supposed to be able to do this?"
Kimlik doğrulama bir yetkilendirme gelişim ayrı bir yönü gibi görünebilir, ama aslında, MVC bağlamında, biraz zor olması bir eğilim olmasıdır.
Çerçeveler bir sürü bazı kimlik doğrulama / yetkilendirme altyapısı var. Bu tekrarlayan bir iştir ve biz tüm bu nedenle, ölüme yapmış - bu çerçeve sağlayabilir özelliği için iyi bir aday olduğunu.
Ama burada vurucu: bunlardan en kontrolörleri içine yetki koymak için çalışacağız ve onlar ayarlanmış olabilir konusunda çok seçici. Bu başka bir kısıtlamadır.
Bu aşağı gelir bu. Herhangi bir çerçeve için, must not require to rewrite every controller just to add login işlevsellik. Eğer yanlışlıkla bir şey unutmak için size OCP ihlali görmezden bile, bu sadece bir risk oluşturuyor.
.. Benim iki kuruş