लेख

Laravel के हो, यसले कसरी काम गर्छ र WEB अनुप्रयोगहरू सिर्जना गर्न आधारभूत वास्तुकला

Laravel एक PHP-आधारित वेब फ्रेमवर्क हो जुन उच्च-अन्त वेब अनुप्रयोगहरू निर्माण गर्न, यसको सरल तर शक्तिशाली वाक्य रचनाहरू प्रयोग गरेर।

Laravel PHP फ्रेमवर्क उपकरणहरूको ठोस संग्रहको साथ आउँछ, र उत्पादित अनुप्रयोगहरूलाई वास्तुकला प्रदान गर्दछ। यो MVC आर्किटेक्चर प्रयोग गरेर खुला स्रोत PHP फ्रेमवर्क हो:

  • फ्रेमवर्क: प्रोग्रामरले प्रयोग गर्ने विधिहरू, वर्गहरू वा फाइलहरूको सङ्कलन हो, र आफ्नै कोड प्रयोग गरेर तिनीहरूको कार्यक्षमता विस्तार गर्न सक्छ।
  • वास्तुकला: फ्रेमवर्क पछ्याउने विशिष्ट डिजाइन ढाँचा हो। Laravel MVC वास्तुकला पछ्याउँछ।

mvc

तीन अक्षर मिलेर बनेको एक्रोनिमको अर्थ यस प्रकार छ:

  • M: टेम्प्लेट। मोडेल भनेको डाटाबेससँग सम्बन्धित वर्ग हो। उदाहरणका लागि यदि हामीसँग एप्लिकेसनमा प्रयोगकर्ताहरू छन् भने हामीसँग प्रयोगकर्ताहरूको मोडेल हुनेछ जुन प्रयोगकर्ताहरूको तालिकामा क्वेरी गर्ने जिम्मेवारीमा छ, यदि हामीसँग प्रयोगकर्ताहरूको मोडेल छ भने हामीसँग प्रयोगकर्ताहरूको तालिका पनि हुनेछ।
  • V: हेर्नुहोस्। दृश्य भनेको एउटा वर्ग हो जसले ब्राउजरमा अनुप्रयोगको बारेमा हामीले देख्न सक्ने सबै कुराको ख्याल राख्छ।
  • C: नियन्त्रकहरू। एक नियन्त्रक मध्यस्थकर्ता हो जसले मोडेल र दृश्य दुवैको ख्याल राख्छ। एक नियन्त्रक वर्ग हो जसले मोडेलबाट डेटा ल्याउँछ र दृश्य वर्गमा पठाउँछ।

लाभ र सुविधाहरू

प्राधिकरण र प्रमाणीकरण प्रणाली को निर्माण

प्रत्येक वेब अनुप्रयोग मालिकले अनाधिकृत प्रयोगकर्ताहरूले सुरक्षित स्रोतहरूमा पहुँच गर्दैनन् भनेर निश्चित हुनुपर्दछ। Laravel प्रमाणीकरण लागू गर्न सजिलो तरिका प्रदान गर्दछ। यसले प्राधिकरण तर्कलाई व्यवस्थित गर्न र स्रोतहरूमा पहुँच नियन्त्रण गर्न सजिलो तरिका पनि प्रदान गर्दछ।

उपकरण संग एकीकरण

Laravel धेरै उपकरणहरूसँग एकीकृत छ जसले छिटो एप सिर्जना गर्दछ। यो एप सिर्जना गर्न मात्र होइन, छिटो एप बनाउन पनि आवश्यक छ। क्यासिङ ब्याकइन्डसँग एकीकरण गर्नु वेब एपको कार्यसम्पादन सुधार गर्ने मुख्य चरणहरू मध्ये एक हो। Laravel केही लोकप्रिय क्यासिङ ब्याकइन्डहरू जस्तै Redis र Memcached सँग एकीकृत गरिएको छ।

मेल सेवा एकीकरण

Laravel मेल सेवा संग एकीकृत छ। यो सेवा सूचना इमेल पठाउन प्रयोग गरिन्छ। यसले सफा र सरल एपीआई प्रदान गर्दछ जसले तपाईंलाई अन-प्रिमाइसेस, वा क्लाउड-आधारित सेवा मार्फत द्रुत रूपमा इमेल पठाउन अनुमति दिन्छ।

परीक्षण स्वचालन

सफ्टवेयरले त्रुटिहरू, बगहरू र क्र्यासहरू बिना काम गर्दछ भनेर सुनिश्चित गर्न उत्पादनको परीक्षण गर्नु धेरै महत्त्वपूर्ण छ - जब पनि नयाँ संस्करण जारी हुन्छ। हामीलाई थाहा छ कि स्वचालित परीक्षणले म्यानुअल परीक्षण भन्दा कम समय लिन्छ, विशेष गरी गैर-रिग्रेसन परीक्षणको लागि। Laravel पनि परीक्षणलाई ध्यानमा राखेर विकसित गरिएको थियो।

प्रस्तुति कोड देखि व्यापार तर्क कोड को अलग

व्यापार तर्क कोड र प्रस्तुतीकरण कोड को पृथकीकरणले HTML लेआउट डिजाइनरहरूलाई विकासकर्ताहरूसँग अन्तरक्रिया नगरी रूप र अनुभव परिवर्तन गर्न अनुमति दिन्छ। व्यापार तर्क कोड (कन्ट्रोलर) र प्रस्तुतीकरण कोड (दृश्य) को बीच विभाजन प्रदान गरिएको छ भने विकासकर्ताहरु द्वारा एक बग छिटो समाधान गर्न सकिन्छ। हामीलाई थाहा छ कि Laravel ले MVC आर्किटेक्चरलाई पछ्याउँछ, त्यसैले विभाजन कुञ्जी हो।

सबैभन्दा सामान्य प्राविधिक कमजोरीहरूको फिक्सिङ

Laravel एक सुरक्षित फ्रेमवर्क हो किनकि यसले वेब अनुप्रयोगलाई सबै सुरक्षा कमजोरीहरूबाट जोगाउँछ। भेद्यता वेब अनुप्रयोग विकासमा सबैभन्दा महत्त्वपूर्ण पक्षहरू मध्ये एक हो। अमेरिकी संगठन OWASP फाउन्डेशन, defiप्रमुख सुरक्षा कमजोरीहरू जस्तै SQL इंजेक्शन, अनुरोध जालसाजी, स्क्रिप्टिङ, र यस्तै अन्य।

CRON: कन्फिगरेसन र व्यवस्थापन गतिविधिहरूको योजना

WEB एप्लिकेसनहरूलाई सधैं कार्य समयतालिका संयन्त्रहरूको आवश्यकता हुन्छ र समयमै कार्यहरू कार्यान्वयन गर्न। उदाहरणका लागि, कहिले सदस्यहरूलाई इमेलहरू पठाउने वा दिनको अन्त्यमा डाटाबेस तालिकाहरू सफा गर्ने। कार्यहरू अनुसूचित गर्न, विकासकर्ताहरूले प्रत्येक कार्यको लागि क्रोन प्रविष्टि सिर्जना गर्न आवश्यक छ, र Laravel आदेश अनुसूचक। defiआदेश योजना समाप्त हुन्छ।

Laravel परियोजना निर्माण

तपाइँको पहिलो Laravel परियोजना सिर्जना गर्न, तपाइँसँग हुन आवश्यक छ Composer स्थापित। यदि यो तपाईंको मेसिनमा अवस्थित छैन भने, हाम्रो लेखमा वर्णन गरे अनुसार यसलाई स्थापना गर्न अगाडि बढ्नुहोस् संगीतकार.

त्यस पछि तपाईको नयाँ Laravel प्रोजेक्टको लागि तपाईको प्रणालीमा नयाँ डाइरेक्टरी सिर्जना गर्नुहोस्। अर्को, तपाईंले नयाँ डाइरेक्टरी सिर्जना गर्नुभएको मार्गमा नेभिगेट गर्नुहोस्, र सिर्जना प्रोजेक्ट आदेश चलाउनुहोस् composer create-projectनिम्न आदेश टाइप गरेर:

composer create-project laravel/laravel myex-app

यो आदेश (संस्करण 9.x) नामको परियोजना सिर्जना गर्दछ myex-app

वा तपाईं नयाँ परियोजनाहरू सिर्जना गर्न सक्नुहुन्छ Laravel विश्वव्यापी रूपमा को स्थापनाकर्ता स्थापना गर्दै Laravel प्रक्रिया Composer:

नवाचार न्यूजलेटर
नवीनता मा सबैभन्दा महत्त्वपूर्ण समाचार नछुटाउनुहोस्। तिनीहरूलाई ईमेल द्वारा प्राप्त गर्न साइन अप गर्नुहोस्।
composer global require laravel/installer
laravel new myex-app

परियोजना सिर्जना गरेपछि, आदेश प्रयोग गरेर स्थानीय Laravel विकास सर्भर सुरु गर्नुहोस् serve डेल 'Artisan CLI को Laravel:

php artisan serve

विकास सर्भर सुरु गरेपछि Artisan, तपाइँको आवेदन तपाइँको वेब ब्राउजर मा पहुँच योग्य हुनेछ http://localhost:8000। अब, तपाईं प्रयोग गर्न तयार हुनुहुन्छ Laravel। निस्सन्देह, तपाइँ पनि एक डाटाबेस सेट अप गर्न चाहानुहुन्छ।

Laravel मा आवेदन संरचना

Laravel संरचना मूलतः फोल्डरहरू, सबफोल्डरहरू र परियोजनामा ​​समावेश फाइलहरूको संरचना हो। एक पटक Laravel मा परियोजना सिर्जना भएपछि, हामी Laravel मूल फोल्डर छविमा देखाइए अनुसार अनुप्रयोगको संरचना देख्न सक्छौं:

कन्फिगर गर्नुहोस्

कन्फिगरेसन फोल्डरले कन्फिगरेसनहरू र सम्बन्धित प्यारामिटरहरू समावेश गर्दछ, जुन Laravel अनुप्रयोगलाई राम्ररी काम गर्न आवश्यक छ। कन्फिगरेसन फोल्डरमा समावेश गरिएका विभिन्न फाइलहरू तलको छविमा सूचीबद्ध छन्। फाइल नामहरूले कन्फिगरेसन स्कोपहरू प्रतिनिधित्व गर्दछ।

डाटाबेस

यस डाइरेक्टरीले डाटाबेस कार्यक्षमताका लागि विभिन्न प्यारामिटरहरू समावेश गर्दछ। यसले तीन उपनिर्देशिकाहरू समावेश गर्दछ:

  • बीज: एकाइ परीक्षण डाटाबेसको लागि प्रयोग गरिएका कक्षाहरू समावेश गर्दछ;
  • माइग्रेसनहरू: यो फोल्डर अनुप्रयोगसँग DB संरचनाको उत्पादन र पङ्क्तिबद्धताको लागि प्रयोग गरिन्छ;
  • फ्याक्ट्रीहरू: यो फोल्डर ठूलो संख्यामा डाटा रेकर्डहरू उत्पन्न गर्न प्रयोग गरिन्छ।
सार्वजनिक

यो मूल फोल्डर हो जसले Laravel अनुप्रयोग सुरु गर्न मद्दत गर्दछ, अर्थात् अनुप्रयोगको सुरुवात। निम्न फाइल र फोल्डरहरू समावेश गर्दछ:

  • htaccess: सर्भर कन्फिगरेसन प्रदान गर्ने फाइल;
  • javascript र css: Laravel अनुप्रयोगको सबै स्रोत फाइलहरू समावेश गर्दछ;
  • index.php: वेब अनुप्रयोग सुरु गर्न आवश्यक फाइल।
संसाधन

रिसोर्स डाइरेक्टरीले वेब एपलाई बढावा दिने फाइलहरू समावेश गर्दछ। यस डाइरेक्टरीमा समावेश गरिएका सबफोल्डरहरू र तिनीहरूको उद्देश्य:

  • सम्पत्तिहरू: फोल्डरले कम र SCSS जस्ता फाइलहरू समावेश गर्दछ, जुन वेब अनुप्रयोगको शैलीको लागि आवश्यक हुन्छ;
  • lang: स्थानीयकरण वा आन्तरिककरणको लागि कन्फिगरेसन समावेश गर्नुहोस्;
  • दृश्यहरू: HTML फाइलहरू वा टेम्प्लेटहरू हुन् जसले अन्त प्रयोगकर्ताहरूसँग अन्तरक्रिया गर्दछ र MVC वास्तुकलामा प्राथमिक भूमिका खेल्छ।
भण्डारण

यो फोल्डर हो जसले सबै लगहरू र फाइलहरू भण्डारण गर्दछ जुन Laravel परियोजना चलिरहेको बेला आवश्यक पर्दछ। तल यस डाइरेक्टरीमा समावेश गरिएका सबफोल्डरहरू र तिनीहरूको उद्देश्य -

  • एप: यो फोल्डरले क्रमशः बोलाइएका फाइलहरू समावेश गर्दछ;
  • फ्रेमवर्क: सत्रहरू, क्यासहरू र दृश्यहरू समावेश गर्दछ जुन बारम्बार बोलाइन्छ;
  • लगहरू: रन-टाइम समस्याहरू ट्रेस गर्ने फाइलहरू समावेश गर्दछ, विशेष गरी सबै अपवाद र त्रुटि लगहरू।
परीक्षणs

सबै एकाइ परीक्षण केसहरू यस निर्देशिकामा समावेश छन्। परीक्षण केस वर्गहरूको नामकरण camel_case हो र कक्षाको कार्यक्षमतामा आधारित नामकरण प्रबन्धलाई पछ्याउँछ।

विक्रेता

Laravel व्यवस्थित निर्भरताहरूमा आधारित छ संगीतकार, उदाहरणका लागि Laravel सेटअप स्थापना गर्न वा तेस्रो पक्ष पुस्तकालयहरू समावेश गर्न, आदि।

विक्रेता फोल्डरले सबै निर्भरताहरू समावेश गर्दछ संगीतकार.

Ercole Palmeri

नवाचार न्यूजलेटर
नवीनता मा सबैभन्दा महत्त्वपूर्ण समाचार नछुटाउनुहोस्। तिनीहरूलाई ईमेल द्वारा प्राप्त गर्न साइन अप गर्नुहोस्।

भर्खरका लेखहरू

भविष्य यहाँ छ: कसरी शिपिंग उद्योगले विश्वव्यापी अर्थतन्त्रमा क्रान्ति गर्दैछ

नौसेना क्षेत्र एक साँचो वैश्विक आर्थिक शक्ति हो, जसले 150 बिलियन बजारमा नेभिगेट गरेको छ ...

1 मई 2024

प्रकाशकहरू र ओपनएआईले आर्टिफिसियल इन्टेलिजेन्सद्वारा प्रशोधित सूचनाको प्रवाहलाई विनियमित गर्न सम्झौतामा हस्ताक्षर गर्छन्

गत सोमबार, फाइनान्सियल टाइम्सले OpenAI सँग सम्झौताको घोषणा गर्‍यो। FT ले आफ्नो विश्व स्तरीय पत्रकारिता लाई लाइसेन्स...

30 अप्रिल 2024

अनलाइन भुक्तानीहरू: यहाँ कसरी स्ट्रिमिङ सेवाहरूले तपाईंलाई सधैंभरि भुक्तान गर्छ

लाखौं मानिसहरूले स्ट्रिमिङ सेवाहरूको लागि भुक्तानी गर्छन्, मासिक सदस्यता शुल्क तिर्छन्। यो आम धारणा छ कि तपाईं…

29 अप्रिल 2024

Veeam ले ransomware को लागि सुरक्षा देखि प्रतिक्रिया र रिकभरी को लागी सबै भन्दा व्यापक समर्थन को सुविधा दिन्छ

Veeam द्वारा Coveware ले साइबर जबरजस्ती घटना प्रतिक्रिया सेवाहरू प्रदान गर्न जारी राख्नेछ। Coveware ले फोरेन्सिक र उपचार क्षमताहरू प्रदान गर्दछ ...

23 अप्रिल 2024

आफ्नो भाषामा नवीनता पढ्नुहोस्

नवाचार न्यूजलेटर
नवीनता मा सबैभन्दा महत्त्वपूर्ण समाचार नछुटाउनुहोस्। तिनीहरूलाई ईमेल द्वारा प्राप्त गर्न साइन अप गर्नुहोस्।

हामीलाई पछ्याउनुहोस्