स्थापित करने के लिए पहली बात यह है कि वास्तव में आपको क्या करने की आवश्यकता है, यह तय करने के लिए कि क्या एक ढांचा और / या एमवीसी (या अन्य डिजाइन पैटर्न) लाभ होगा।
आम तौर पर सामान्य प्रोग्रामिंग आवश्यकताओं (जैसे डेटाबेस इंटरैक्शन, फॉर्म निर्माण और सत्यापन, उपयोगकर्ता प्रमाणीकरण आदि) के समाधान प्रदान करते हुए विकास के लिए एक सुसंगत मंच प्रदान करने के लिए फ्रेमवर्क हैं।
PHP के लिए कम से कम MVC / HMVC डिज़ाइन पैटर्न उपलब्ध मुख्यधारा के ढांचे (जैसे Zend , CakePHP , CodeIgniter इत्यादि) पर हावी होने के लिए है , लेकिन कई अलग-अलग डिज़ाइन पैटर्न हैं जिनका कोई भी उपयोग कर सकता है।
एमवीसी इसलिए लोकप्रिय है क्योंकि यह डेटा मॉडलिंग और प्रोसेसिंग लॉजिक को व्यू / प्रेजेंटेशन लेयर से अलग करने का एक स्थापित और समझा तरीका प्रदान करता है (ऐसा कुछ जिसे मजबूत, स्केलेबल एप्लिकेशन के उत्पादन के लिए वांछनीय माना जाता है)।
यह नोट करना महत्वपूर्ण है (और जैसा कि @Marjan Venema द्वारा @ ElYusubov के उत्तर के लिए एक टिप्पणी में व्यक्त किया गया था) कि MVC, MVP, MVVM और अन्य MV x पैटर्न (मूल रूप से कम से कम) सभी एक ही 'डिजाइन पैटर्न' हैं।
आमतौर पर विभिन्न डिज़ाइन पैटर्न सभी अलग-अलग प्रयोजनों (कई बार सूक्ष्म रूप से) की सेवा करते हैं और कई मामलों में एक विशिष्ट भाषा को ध्यान में रखते हुए विकसित किए गए थे। हालाँकि, एक वास्तविक 'डिज़ाइन पैटर्न' प्रोग्रामिंग के लिए एक कठिन और तेज़ नियम नहीं है और वास्तव में कार्यक्रमों के कार्यान्वयन और डिज़ाइन आवश्यकताओं और तार्किक फ़ंक्शन (ओं) की एक दार्शनिक / विचारपरक समझ से अधिक है।
विभिन्न प्रोग्रामिंग प्राचार्यों और सर्वोत्तम प्रथाओं के बारे में जानने के लिए अनुसंधान सबसे अच्छा तरीका है, यहां कुछ विकिपीडिया लिंक आपको आरंभ करने के लिए दिए गए हैं:
व्यवहार में, आपको अपने स्वयं के 'पैटर्न' को लागू करने से कुछ भी नहीं रोक रहा है, IMO सबसे अच्छा तरीका यह है कि मुझे क्या करना है, मेरे लिए कम से कम मैं एमवीसी पैटर्न को पूरी तरह से समझ नहीं पाया जब तक कि मैं इसका उपयोग करके एक वेब साइट लिखने की कोशिश नहीं कर रहा।
एक बार जब आप कुछ प्रोग्रामिंग अवधारणाओं और सर्वोत्तम प्रथाओं को समझते हैं, तो आप उन विशिष्ट समस्याओं को हल करने के लिए और अपनी आवश्यकताओं को पूरा करने के लिए अपने सिस्टम का उपयोग कर सकते हैं, चाहे वह एक स्थापित 'पैटर्न' के अनुरूप हो या न हो।
यदि आपके पास हल करने के लिए समस्याओं का कोई विशिष्ट सेट नहीं है, तो सामान्य रूपरेखाओं में से एक सीखना आपका सबसे अच्छा दांव है।