सोशल मीडिया पर, अक्सर नए PHP डेवलपर पूछते हैं "मुझे अपने प्रोजेक्ट के लिए किस फ्रेमवर्क का उपयोग करना चाहिए" और आम तौर पर दिए गए उत्तर "लारवेल" या "सिम्फनी" होते हैं।
हालाँकि ये दोनों अच्छे विकल्प हैं, इस प्रश्न का सही उत्तर यह होना चाहिए "आपको क्या करने के लिए रूपरेखा की आवश्यकता है?"
सही ढांचा वह होना चाहिए जो वह करे जो आपको चाहिए, बिना ढेर सारी सुविधाओं के जिनका आप कभी उपयोग नहीं करेंगे।
यदि आप एक रूट के साथ एक वेबसाइट बना रहे हैं, तो लारवेल या सिम्फनी का उपयोग करना साइट की इंजीनियरिंग से अधिक होगा, जबकि एक जटिल साइट के लिए, लारवेल या सिम्फनी सही विकल्प हो सकता है।
माइक्रो फ्रेमवर्क छोटे से मध्यम आकार की साइटों के निर्माण के लिए बहुत अच्छे हैं, जिन्हें पूर्ण स्टैक फ्रेमवर्क द्वारा प्रदान की जाने वाली सभी सुविधाओं की आवश्यकता नहीं होती है।
हालांकि कई हैं, स्लिम और फ़्लाइट PHP दोनों माइक्रो फ्रेमवर्क के महान उदाहरण हैं।
हाल ही में मैंने एक छोटी वेबसाइट बनाई है जो उपयोगकर्ता से डेटाबेस से संबंधित 10 प्रश्नों को हल करने के लिए कहती है। इसमें तीन मार्ग थे, और प्रश्नों को लाने और उत्तरों की तुलना करने के लिए कुछ बुनियादी प्रश्न थे।
इस तरह की एक छोटी परियोजना के लिए, एक माइक्रो फ्रेमवर्क एक बढ़िया विकल्प है। मैंने उनकी तुलना करने के लिए स्लिम और फ़्लाइट PHP दोनों पर साइट बनाई।
यदि आपने पहले किसी विशेष ढांचे का उपयोग नहीं किया है, तो प्रदान किए गए स्केलेटन प्रोजेक्ट का उपयोग आम तौर पर शुरू करने के लिए एक बेहतरीन जगह है।
फ्लाइट PHPs स्केलेटन प्रोजेक्ट काफी हद तक मेरी अपेक्षा के अनुरूप है, हल्के वजन, सरल एमवीसी सेटअप, फ़ोल्डर संरचना को समझने में आसान और यह जानना कि प्रोजेक्ट में सब कुछ कहां जाना चाहिए।
फ्रेमवर्क में नए व्यक्ति के लिए, उठना और दौड़ना सीखने की प्रक्रिया न्यूनतम है।
संगीतकार पुस्तकालयों पर प्रकाश, कुल मिलाकर केवल 5 (मुख्य पुस्तकालय सहित), 4 उत्पादन में उपयोग किए गए।
स्केलेटन के लिए उत्पादन का आकार 1.6एमबी था।
स्लिम्स स्केलेटन परियोजना ने मुझे आश्चर्यचकित कर दिया, निर्देशिका संरचना मेरी अपेक्षा से अधिक जटिल थी। ऐसी संरचना की ओर अधिक ध्यान दिया गया है जिसका उपयोग छोटे प्रोजेक्ट की तुलना में बड़े प्रोजेक्ट में किया जा सकता है। सूक्ष्म ढांचे के लिए, यह अपेक्षित नहीं था।
स्लिम कंकाल फ़्लाइट PHP से थोड़ा भारी था। 21 संगीतकार पुस्तकालय, 9 उत्पादन में प्रयुक्त। परियोजना का उत्पादन आकार 3.3एमबी था।
दोनों ने न्यूनतम अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता के साथ बॉक्स से बाहर काम किया।
कंकालों का उपयोग करने के बजाय, मैंने अपना स्वयं का सेटअप बनाकर साइटें बनाने का निर्णय लिया। ऐसा करने का लाभ यह है कि मैं अपनी आवश्यकताओं के अनुरूप ढांचे को तैयार करने में सक्षम था, और देख सका कि वे विभिन्न संरचनाओं के लिए कितने लचीले थे।
माइक्रो फ्रेमवर्क का उपयोग करने के बड़े फायदों में से एक यह है कि उन्हें अनावश्यक ओवरहेड के बिना वही करने के लिए तैयार किया जा सकता है, जिसकी आपको आवश्यकता है, आवश्यकतानुसार सुविधाओं और पुस्तकालयों को जोड़ना।
फ़्लाइट PHP के साथ मेरा सेटअप कंकाल से बहुत अलग नहीं था, हालांकि मेरे पास कम निर्देशिकाएं और विभिन्न कंपोज़र लाइब्रेरीज़ थीं, संरचनात्मक रूप से, यह समान था।
स्लिम के साथ, परियोजना की संरचना कंकाल से काफी अलग हो गई।
यह अच्छा था कि स्लिम लचीला था और संरचना के बारे में धारणा नहीं बना रहा था और कंकाल की तुलना में पूरी तरह से अलग संरचना के साथ ठीक काम करता था।
फ़्लाइट PHP इस तरह से भी लचीली है, यदि आवश्यक हो तो अधिक जटिल संरचनाओं की अनुमति देती है, फ्रेमवर्क में नई लाइब्रेरी जोड़ना सीधे आगे था।
रूटिंग
रूटिंग के दृष्टिकोण से, दोनों के साथ काम करना अच्छा रहा। उन दोनों को बहुत अधिक दस्तावेजीकरण के बिना स्थापित करना आसान था।
फ़्लाइट PHP में रूट स्लिम की तुलना में सेटअप करने में थोड़े आसान थे, और ऐसा करने के लिए कम कोड का उपयोग किया गया था, लेकिन सेटअप करना मुश्किल नहीं था।
रूटिंग समूह, रेगेक्स क्षमताओं और मिडलवेयर विकल्पों ने मार्गों को लचीला बना दिया है, जबकि उनके साथ काम करना अभी भी आसान है।
डेटाबेस कनेक्शन
स्लिम के साथ, अपेक्षा यह है कि आपको अपने डेटाबेस प्रश्नों के लिए एलोक्वेंट या डॉक्ट्रिन जैसे ओआरएम का उपयोग करना चाहिए, जबकि फ्लाइट PHP पीडीओ के लिए एक सरल रैपर प्रदान करता है जिसका उपयोग किया जा सकता है आपको इसकी आवश्यकता है और वैकल्पिक रूप से, सक्रिय रिकॉर्ड को क्वेरी निर्माण के लिए प्रोजेक्ट में जोड़ा जा सकता है।
जिस छोटे प्रोजेक्ट पर मैं काम कर रहा था, उसके लिए ओआरएम का उपयोग करना आवश्यकता से थोड़ा अधिक लग रहा था, इसलिए मैंने स्लिम के लिए एक छोटा पीडीओ रैपर क्लास बनाया, जो फ़्लाइट PHP में निर्मित होता है। .
ओआरएम बहुत अच्छे हैं, लेकिन मैं डेटाबेस प्रश्नों को कैसे कोड करना चाहता हूं यह चुनने के लिए अंतर्निहित लचीलापन एक अच्छी सुविधा है।
सामान्य कोडिंग
स्लिम और फ्लाइट PHP फ्रेमवर्क दोनों आपको अपने तरीके से कोड लिखने की अनुमति देने में अच्छे हैं।
कुछ फ्रेमवर्क आपको एक विशिष्ट तरीके से कोडिंग करने के लिए मजबूर करते हैं और कभी-कभी ऐसा महसूस हो सकता है कि आप फ्रेमवर्क के खिलाफ लड़ रहे हैं।
फ्रेमवर्क को आपके साथ काम करना चाहिए न कि आपके खिलाफ, और इन दोनों को ऐसा लगा जैसे वे मेरे साथ काम कर रहे थे।
स्लिम सीएसआरएफ एकीकरण और HTTP कैशिंग सहित कई उपयोगी ऐड-ऑन भी प्रदान करता है।
फ्लाइट PHP अनुमतियाँ और सक्रिय रिकॉर्ड सहित अतिरिक्त ऐड-ऑन प्रदान करता है।
ये सभी ऐड-ऑन तीसरे पक्ष के समाधानों का उपयोग किए बिना या अपना स्वयं का निर्माण किए बिना सहायक ऐड-ऑन हैं।
प्रतिक्रिया के रूप में JSON लौटाना फ़्लाइट PHP में स्लिम की तुलना में अधिक साफ़ है, स्लिम 3 में JSON प्रतिक्रिया के साथ सुविधाजनक प्रतिक्रिया थी। जबकि स्लिम 4 पीएसआर-7 का अधिक पालन करता है, इसका मतलब यह है कि JSON प्रतिक्रिया बनाने के लिए अधिक कोड की आवश्यकता होती है।
अगर मैं JSON प्रतिक्रियाओं का बहुत अधिक उपयोग करने जा रहा होता, तो संभवतः मैं PSR-7 मानक का पालन करते हुए इसे और अधिक सुविधाजनक बनाने के लिए एक रैपर बनाता।
यह दो फ़्रेमवर्क के बीच एक महत्वपूर्ण अंतर है, स्लिम को लगता है कि कोडबेस को साफ़ करने और सरल बनाने के लिए कक्षाएं बनाकर इसे और अधिक अनुकूलित करने की आवश्यकता है, जबकि फ़्लाइट PHP ने आपके लिए यह पहले ही कर दिया है।
स्लिम कई सहायक मिडलवेयर प्रदान करता है। कुछ सुविधाओं को कार्यशील बनाने के लिए मिडलवेयर की आवश्यकता होती है।
इसका एक उदाहरण FETCH का उपयोग करके जावास्क्रिप्ट से डेटा प्राप्त करना है। POST अनुरोध से डेटा सरणी बनाने के लिए स्लिम के पास getParsedBody एक विधि है।
हालाँकि, इसका उपयोग करने के लिए addBodyParsingMiddleware को कंटेनर में जोड़ना होगा।
यह नए डेवलपर्स के लिए थोड़ा सा जाल है, लेकिन यह वैकल्पिक सुविधाओं तक पहुंच भी प्रदान करता है, जो केवल आपके लिए आवश्यक सुविधाओं को सक्षम करके फ्रेमवर्क के समग्र पदचिह्न को कम कर सकता है।
फ़्लाइट PHP इसे कॉन्फ़िग फ़ाइल के माध्यम से प्राप्त करता है, कुछ सुविधाओं को मिडलवेयर सक्षमता के बजाय कॉन्फ़िग के माध्यम से चालू और बंद किया जा सकता है।
स्पीड टेस्ट
बेंचमार्क के अनुसार, दोनों की तुलना करने पर दिलचस्प परिणाम सामने आए, कुछ क्षेत्रों में स्लिम ने फ़्लाइट PHP को पीछे छोड़ दिया जबकि फ़्लाइट PHP ने अन्य क्षेत्रों में स्लिम को पीछे छोड़ दिया।
मेरे अपने कोड पर दो फ्रेमवर्क का परीक्षण करने से पता चला कि फ़्लाइट PHP में स्लिम की तुलना में तेज़ और अधिक सुसंगत प्रतिक्रिया समय था।
फ़्रंट एंड
JSON लौटाने का अनुरोध प्राप्त करें
JSON लौटाने वाला POST अनुरोध
स्लिम का उपयोग करते समय मुझे जो उल्लेखनीय लगा वह बाहरी स्पाइक्स था।
इन परीक्षणों को कई बार चलाने से हर बार वही परिणाम मिलते हैं जो मैंने ऊपर दिखाए हैं, आम तौर पर दोनों के लिए अच्छा प्रतिक्रिया समय होता है, लेकिन स्लिम में बाहरी स्पाइक्स होते हैं जो फ़्लाइट PHP का परीक्षण करते समय नहीं होते हैं, और फ़्लाइट PHP आम तौर पर बेहतर होती है प्रतिक्रिया का समय।
यदि आपने माइक्रो फ्रेमवर्क में उद्यम नहीं किया है, तो उन्हें आज़माएं, वहाँ कुछ हैं और उन्हें आज़माना और यह देखना एक शानदार सीखने का अनुभव हो सकता है कि आपको प्रत्येक में क्या पसंद है और क्या पसंद नहीं है एक।
स्लिम और फ्लाइट PHP दोनों ही बेहतरीन माइक्रो फ्रेमवर्क हैं।
स्लिम कुछ अच्छी विशेषताओं वाला एक ठोस ढांचा है, जो आपके लिए चुपचाप काम करेगा।
फ्लाइट PHP हल्का वजन है, और इसकी सादगी ढांचे को सीखना वास्तव में आसान बनाती है।
एक ही चीज़ को प्राप्त करने के लिए अच्छा प्रतिक्रिया समय और अधिक सरलीकृत कोड इसे माइक्रो फ्रेमवर्क के उपयोग के लिए वास्तव में एक अच्छा विकल्प बनाता है।
इन दोनों को एक साथ रखने के बाद, मैं स्लिम की तुलना में फ्लाइट PHP को प्राथमिकता देता हूं, लेकिन किसी भी ढांचे की तरह, इसे आज़माएं और देखें कि क्या यह आपके लिए काम करता है।
आखिरकार, सही ढाँचा एक ऐसा ढाँचा है जो वही करता है जो आपको करना चाहिए।
उड़ान PHP
स्लिम फ्रेमवर्क
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3