2009-10-01 21 views
9

मैं केकपीएचपी और कोडइग्निटर को पूर्ण स्टैक एमवीसी फ्रेमवर्क के रूप में संदर्भित करता रहता हूं, जबकि ज़ेंड फ्रेमवर्क को गैर-पूर्ण ढेर कहा जाता है। इसका वास्तव में क्या मतलब है?पूर्ण स्टैक बनाम गैर-पूर्ण ढेर एमवीसी PHP ढांचे - क्या अंतर है?

उत्तर

13

ज़ेंड फ्रेमवर्क एक उपयोग-पर-इच्छा ढांचा है, जो आपको इसके कुछ घटकों का उपयोग करने की अनुमति देता है। आप कुछ विभिन्न ढांचे का उपयोग करके बनाए गए एप्लिकेशन में इन घटकों में से कुछ का भी उपयोग कर सकते हैं। इस तरह, एक उपयोग-पर-इच्छा ढांचा एक वर्ग पुस्तकालय की तरह है। *

एक पूर्ण-ढेर ढांचे का अर्थ है कि इसका कोई भी भाग इसका उपयोग करके आप पर निर्भर करता है। उदाहरण के लिए, आपको ढांचे की डेटा एक्सेस लाइब्रेरी, एमवीसी आर्किटेक्चर, कोड जनरेटिंग मचान आदि का उपयोग करना होगा और ये घटक सभी एक दूसरे पर भरोसा करते हैं ताकि पूर्ण ढांचा तैयार किया जा सके।

अपनी टिप्पणी दो: हाँ, युग्मन इसे देखने का एक तरीका है। मैं इसे धारणाओं और लचीलापन के बीच संतुलन के रूप में देखता हूं। एक पूर्ण-ढेर ढांचे का मानना ​​है कि आप एक साथ पूरे ढांचे का उपयोग कर रहे हैं, और उस धारणा से यह कुछ अतिरिक्त जादू कर सकता है।

जेडएफ को धारणाओं को कम करने के लिए डिज़ाइन किया गया था (यानी, युग्मन को कम करें)। इसके घटक इस बारे में कुछ धारणाएं करते हैं कि आप शेष घटकों का उपयोग कर रहे हैं, निर्भरताओं को कम करते हैं लेकिन लचीलापन बढ़ाते हैं। लेकिन कम धारणाओं का मतलब कम जादू है।

ढांचे की दोनों शैलियों के वैध फायदे हैं।


* सादे वर्ग पुस्तकालय और ढांचे के बीच एक महत्वपूर्ण अंतर यह है कि एक ढांचा का विस्तार एक्स्टेंसिबल होना है। आपको उप-वर्गीकरण या बहुरूपता जैसे ओओ तंत्र के माध्यम से एक ढांचे की कार्यक्षमता को बढ़ाने के लिए प्रोत्साहित किया जाता है। जबकि एक कक्षा पुस्तकालय मान सकता है कि आप इसकी कार्यक्षमता को विस्तारित किए बिना, इसके एपीआई का उपयोग करेंगे।

+0

ओह, मैं देखता हूं। तो ऐसा लगता है कि पूर्ण ढेर कसकर युग्मित करने के समान है। यह भयानक लगता है;) धन्यवाद! –

+1

जब आप जादू कहते हैं, तो क्या आपका मतलब है कि आपको कम कोड करना है, क्योंकि ढांचा आपके विचारों को स्वचालित रूप से धारण करता है और आपके लिए अधिक संभालता है? –

+1

उदाहरण के लिए, एक एमवीसी नियंत्रक एक निश्चित निर्देशिका में दृश्य स्क्रिप्ट और मॉडल कक्षाओं और एक निश्चित फ़ाइल नामकरण सम्मेलन का उपयोग कर सकता है। यदि फाइल मौजूद हैं और सही वर्ग के नाम हैं, तो वे स्वचालित रूप से लोड हो जाते हैं और उपयोग किए जाते हैं। कोई कोड आवश्यक नहीं है - जब तक आप ढांचे के सम्मेलन का पालन करते हैं। फाइल-नामकरण सम्मेलनों के अलावा कई सम्मेलन संभव हैं, उदाहरण के लिए डेटाबेस टेबल और कॉलम को एक निश्चित तरीके से नामित किया जाना चाहिए। ये विचार "कॉन्फ़िगरेशन पर सम्मेलन" या "राय प्रोग्रामिंग" से संबंधित हैं। –

संबंधित मुद्दे