Kurulması gereken ilk şey, bir çerçevenin ve / veya MVC'nin (veya başka bir tasarım modelinin) faydalı olup olmayacağına karar vermek için tam olarak yapmanız gereken şeydir.
Çerçeveler, genellikle ortak programlama gereksinimlerine (Veritabanı etkileşimi, form oluşturma ve doğrulama, kullanıcı kimlik doğrulaması vb.) Çözümler sunarken, geliştirme için tutarlı bir platform sağlamak için vardır.
PHP için en azından MVC / HMVC tasarım deseni mevcut ana çerçevelere (örn. Zend , CakePHP , CodeIgniter vb.) Hakim olma eğilimindedir , ancak birisinin kullanabileceği birçok farklı tasarım deseni vardır.
MVC çok popülerdir çünkü veri modelleme ve işleme mantığını görünüm / sunum katmanından ayırmak için sağlam ve anlaşılır bir yol sunar (sağlam, ölçeklenebilir uygulamalar üretmek için arzu edilen bir şeydir).
MVC, MVP, MVVM ve diğer MV x modellerinin (en azından prensip olarak) aynı 'tasarım deseni' olduğunu belirtmek (@Marjan Venema tarafından @ ElYusubov'un cevabına yaptığı bir açıklamada ifade edildiği gibi) önemlidir .
Tipik olarak farklı tasarım modellerinin hepsi (genellikle incelikle) farklı amaçlara hizmet eder ve bazı durumlarda belirli bir dil düşünülerek geliştirilmiştir. Bununla birlikte, gerçek bir 'tasarım deseni' programlamanın zor ve hızlı bir kuralı değildir ve gerçekten bir programın uygulanması ve tasarım gereksinimleri ile mantıksal işlev (ler) in felsefi / düşünsel bir anlayışıdır.
Araştırma, farklı programlama prensipleri ve en iyi uygulamalar hakkında bilgi edinmenin en iyi yoludur. İşte başlamanız için bazı Wikipedia bağlantıları:
Uygulamada, kendi 'deseninizi' uygulamanızı engelleyen hiçbir şey yoktur, IMO en iyi yolu yaparak öğrenmektir, benim için en azından MVC modelini kullanarak bir web sitesi yazmaya çalışana kadar tam olarak anlamadım.
Programlama kavramlarından ve en iyi uygulamalardan bazılarını anladıktan sonra, karşılaştığınız belirli sorunları çözmek ve yerleşik bir 'kalıba' uygun olsa da olmasa da ihtiyaçlarınızı karşılamak için kendi sisteminizi oluşturmak için bunları kullanabilirsiniz.
Çözülecek belirli bir sorun kümeniz yoksa, ortak çerçevelerden birini öğrenmek en iyi seçenektir.