લેખ

લારાવેલ શું છે, તે કેવી રીતે કાર્ય કરે છે અને WEB એપ્લિકેશન બનાવવા માટે મૂળભૂત આર્કિટેક્ચર

Laravel એ તેના સરળ છતાં શક્તિશાળી વાક્યરચનાનો ઉપયોગ કરીને હાઇ-એન્ડ વેબ એપ્લિકેશન બનાવવા માટેનું PHP-આધારિત વેબ ફ્રેમવર્ક છે.

Laravel PHP ફ્રેમવર્ક સાધનોના નક્કર સંગ્રહ સાથે આવે છે, અને ઉત્પાદિત એપ્લિકેશનોને આર્કિટેક્ચર પ્રદાન કરે છે. તે MVC આર્કિટેક્ચરનો ઉપયોગ કરીને ઓપન સોર્સ PHP ફ્રેમવર્ક છે:

  • ફ્રેમવર્ક: એ પદ્ધતિઓ, વર્ગો અથવા ફાઈલોનો સંગ્રહ છે જેનો પ્રોગ્રામર ઉપયોગ કરે છે અને પોતાના કોડનો ઉપયોગ કરીને તેમની કાર્યક્ષમતાને પણ વિસ્તૃત કરી શકે છે.
  • આર્કિટેક્ચર: ફ્રેમવર્ક અનુસરે છે તે ચોક્કસ ડિઝાઇન પેટર્ન છે. લારેવેલ MVC આર્કિટેક્ચરને અનુસરે છે.

mvc

ત્રણ અક્ષરોથી બનેલું ટૂંકાક્ષર, અર્થ નીચે મુજબ છે:

  • M: ઢાંચો. મોડેલ એ એક વર્ગ છે જે ડેટાબેઝ સાથે વ્યવહાર કરે છે. ઉદાહરણ તરીકે જો અમારી પાસે એપ્લિકેશનમાં વપરાશકર્તાઓ હોય તો અમારી પાસે એક વપરાશકર્તા મોડેલ હશે જે વપરાશકર્તાઓના કોષ્ટકની ક્વેરી કરવા માટે જવાબદાર છે, જો અમારી પાસે વપરાશકર્તાઓનું મોડેલ છે તો અમારી પાસે વપરાશકર્તાઓનું ટેબલ પણ હશે.
  • V: જુઓ. દૃશ્ય એ એક વર્ગ છે જે બ્રાઉઝરમાં એપ્લિકેશન વિશે આપણે જોઈ શકીએ છીએ તે દરેક વસ્તુની કાળજી લે છે.
  • C: નિયંત્રકો. નિયંત્રક એ મધ્યસ્થી છે જે મોડેલ અને દૃશ્ય બંનેની કાળજી લે છે. નિયંત્રક એ વર્ગ છે જે મોડેલમાંથી ડેટા મેળવે છે અને તેને વ્યુ ક્લાસમાં મોકલે છે.

લાભો અને લક્ષણો

અધિકૃતતા અને પ્રમાણીકરણ પ્રણાલીઓની રચના

દરેક વેબ એપ્લિકેશન માલિકે ખાતરી કરવી જોઈએ કે અનધિકૃત વપરાશકર્તાઓ સુરક્ષિત સંસાધનોને ઍક્સેસ કરતા નથી. Laravel પ્રમાણીકરણને અમલમાં મૂકવાની સરળ રીત પ્રદાન કરે છે. તે અધિકૃતતા તર્કને ગોઠવવાની અને સંસાધનોની ઍક્સેસને નિયંત્રિત કરવાની સરળ રીત પણ પ્રદાન કરે છે.

સાધનો સાથે એકીકરણ

Laravel ઘણા ટૂલ્સ સાથે સંકલિત છે જે ઝડપી એપ્લિકેશન બનાવે છે. એપ બનાવવી જ જરૂરી નથી, પણ વધુ ઝડપી એપ બનાવવી પણ જરૂરી છે. કેશીંગ બેકએન્ડ સાથે સંકલન કરવું એ વેબ એપના પ્રદર્શનને બહેતર બનાવવાનું એક મુખ્ય પગલું છે. Laravel કેટલાક લોકપ્રિય કેશીંગ બેકએન્ડ જેવા કે Redis અને Memcached સાથે સંકલિત છે.

મેઇલ સેવા એકીકરણ

Laravel મેલ સેવા સાથે સંકલિત છે. આ સેવાનો ઉપયોગ સૂચના ઈમેલ મોકલવા માટે થાય છે. તે સ્વચ્છ અને સરળ API પ્રદાન કરે છે જે તમને ઑન-પ્રિમિસીસ અથવા ક્લાઉડ-આધારિત સેવા દ્વારા ઝડપથી ઇમેઇલ મોકલવાની મંજૂરી આપે છે.

પરીક્ષણ ઓટોમેશન

સૉફ્ટવેર ભૂલો, બગ્સ અને ક્રેશેસ વિના કાર્ય કરે છે તેની ખાતરી કરવા માટે ઉત્પાદનનું પરીક્ષણ કરવું ખૂબ જ મહત્વપૂર્ણ છે - જ્યારે પણ નવું સંસ્કરણ પ્રકાશિત થાય છે. અમે જાણીએ છીએ કે સ્વયંસંચાલિત પરીક્ષણ મેન્યુઅલ પરીક્ષણ કરતાં ઓછો સમય લે છે, ખાસ કરીને બિન-રીગ્રેશન પરીક્ષણ માટે. લારાવેલને પણ પરીક્ષણને ધ્યાનમાં રાખીને વિકસાવવામાં આવી હતી.

પ્રેઝન્ટેશન કોડથી બિઝનેસ લોજિક કોડને અલગ કરવું

બિઝનેસ લોજિક કોડ અને પ્રેઝન્ટેશન કોડનું વિભાજન HTML લેઆઉટ ડિઝાઇનર્સને વિકાસકર્તાઓ સાથે વાતચીત કર્યા વિના દેખાવ અને અનુભવને બદલવાની મંજૂરી આપે છે. જો બિઝનેસ લોજિક કોડ (કંટ્રોલર) અને પ્રેઝન્ટેશન કોડ (જુઓ) વચ્ચે વિભાજન પ્રદાન કરવામાં આવે તો વિકાસકર્તાઓ દ્વારા બગને ઝડપથી સુધારી શકાય છે. અમે જાણીએ છીએ કે Laravel MVC આર્કિટેક્ચરને અનુસરે છે, તેથી અલગ થવું એ મુખ્ય છે.

સૌથી સામાન્ય તકનીકી નબળાઈઓનું ફિક્સિંગ

Laravel એક સુરક્ષિત માળખું છે કારણ કે તે વેબ એપ્લિકેશનને તમામ સુરક્ષા નબળાઈઓથી સુરક્ષિત કરે છે. વેબ એપ્લિકેશન ડેવલપમેન્ટમાં નબળાઈ એ સૌથી મહત્વપૂર્ણ પાસાઓમાંનું એક છે. અમેરિકન સંસ્થા OWASP ફાઉન્ડેશન, defiએસક્યુએલ ઇન્જેક્શન, વિનંતી બનાવટી, સ્ક્રિપ્ટીંગ અને તેથી વધુ જેવી મુખ્ય સુરક્ષા નબળાઈઓને દૂર કરે છે.

CRON: રૂપરેખાંકન અને સંચાલન પ્રવૃત્તિઓનું આયોજન

WEB એપ્લીકેશનને હંમેશા સમયસર કાર્યોને સુનિશ્ચિત કરવા અને એક્ઝિક્યુટ કરવા માટે ટાસ્ક શેડ્યુલિંગ મિકેનિઝમ્સની જરૂર પડે છે. ઉદાહરણ તરીકે, સબ્સ્ક્રાઇબર્સને ઇમેઇલ્સ ક્યારે મોકલવા અથવા દિવસના અંતે ડેટાબેઝ કોષ્ટકો ક્યારે સાફ કરવા. કાર્યોને સુનિશ્ચિત કરવા માટે, વિકાસકર્તાઓએ દરેક કાર્ય માટે ક્રોન એન્ટ્રી અને Laravel આદેશ શેડ્યૂલર બનાવવાની જરૂર છે. defiઆદેશ આયોજન સમાપ્ત થાય છે.

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

પ્રોજેક્ટ બનાવ્યા પછી, આદેશનો ઉપયોગ કરીને સ્થાનિક લારેવેલ ડેવલપમેન્ટ સર્વર શરૂ કરો serve ડેલ 'Artisan ના CLI Laravel:

php artisan serve

વિકાસ સર્વર શરૂ કર્યા પછી Artisan, તમારી એપ્લિકેશન તમારા વેબ બ્રાઉઝરમાં પર ઍક્સેસિબલ હશે http://localhost:8000. હવે, તમે ઉપયોગ કરવા માટે તૈયાર છો Laravel. અલબત્ત, તમે ડેટાબેઝ પણ સેટ કરવા માગી શકો છો.

Laravel માં એપ્લિકેશન માળખું

લારાવેલ માળખું મૂળભૂત રીતે પ્રોજેક્ટમાં સમાવિષ્ટ ફોલ્ડર્સ, સબફોલ્ડર્સ અને ફાઇલોનું માળખું છે. એકવાર લારાવેલમાં પ્રોજેક્ટ બની ગયા પછી, આપણે લારાવેલ રૂટ ફોલ્ડર ઈમેજમાં બતાવ્યા પ્રમાણે એપ્લિકેશનનું માળખું જોઈ શકીએ છીએ:

રૂપરેખા

રૂપરેખા ફોલ્ડરમાં રૂપરેખાંકનો અને સંકળાયેલ પરિમાણોનો સમાવેશ થાય છે, જે Laravel એપ્લિકેશનને યોગ્ય રીતે કાર્ય કરવા માટે જરૂરી છે. રૂપરેખા ફોલ્ડરમાં સમાવિષ્ટ વિવિધ ફાઇલો નીચેની છબીમાં સૂચિબદ્ધ છે. ફાઇલ નામો રૂપરેખાંકન સ્કોપ્સનું પ્રતિનિધિત્વ કરે છે.

ડેટાબેઝ

આ ડિરેક્ટરીમાં ડેટાબેઝ કાર્યક્ષમતા માટે વિવિધ પરિમાણોનો સમાવેશ થાય છે. તેમાં ત્રણ સબડિરેક્ટરીઝ શામેલ છે:

  • બીજ: યુનિટ ટેસ્ટ ડેટાબેઝ માટે વપરાતા વર્ગો સમાવે છે;
  • સ્થળાંતર: આ ફોલ્ડરનો ઉપયોગ એપ્લિકેશન સાથે ડીબી સ્ટ્રક્ચરની જનરેશન અને ગોઠવણી માટે થાય છે;
  • ફેક્ટરીઓ: આ ફોલ્ડરનો ઉપયોગ મોટી સંખ્યામાં ડેટા રેકોર્ડ બનાવવા માટે થાય છે.
જાહેર

તે રૂટ ફોલ્ડર છે જે લારાવેલ એપ્લિકેશનને શરૂ કરવામાં મદદ કરે છે, એટલે કે એપ્લિકેશનની શરૂઆત. નીચેની ફાઇલો અને ફોલ્ડર્સનો સમાવેશ થાય છે:

  • .htaccess: ફાઇલ કે જે સર્વર રૂપરેખાંકન પ્રદાન કરે છે;
  • javascript અને css: Laravel એપ્લિકેશનની તમામ સંસાધન ફાઇલો ધરાવે છે;
  • index.php: વેબ એપ્લિકેશન શરૂ કરવા માટે જરૂરી ફાઇલ.
સંપત્તિ

સંસાધન નિર્દેશિકામાં એવી ફાઇલો છે જે વેબ એપ્લિકેશનને વધારે છે. આ નિર્દેશિકામાં સમાવિષ્ટ સબફોલ્ડર્સ અને તેમનો હેતુ:

  • અસ્કયામતો: ફોલ્ડરમાં LESS અને SCSS જેવી ફાઇલોનો સમાવેશ થાય છે, જે વેબ એપ્લિકેશનની શૈલી માટે જરૂરી છે;
  • lang: સ્થાનિકીકરણ અથવા આંતરિકકરણ માટે રૂપરેખાંકન શામેલ કરો;
  • દૃશ્યો: એ HTML ફાઇલો અથવા નમૂનાઓ છે જે અંતિમ વપરાશકર્તાઓ સાથે ક્રિયાપ્રતિક્રિયા કરે છે અને MVC આર્કિટેક્ચરમાં પ્રાથમિક ભૂમિકા ભજવે છે.
સંગ્રહ

આ તે ફોલ્ડર છે જે લારેવેલ પ્રોજેક્ટ ચાલી રહ્યું હોય ત્યારે જરૂરી તમામ લોગ અને ફાઈલોને સ્ટોર કરે છે. નીચે આ નિર્દેશિકામાં સમાવિષ્ટ સબફોલ્ડર્સ અને તેમનો હેતુ છે −

  • એપ્લિકેશન: આ ફોલ્ડરમાં એવી ફાઈલો છે જેને ક્રમિક રીતે બોલાવવામાં આવે છે;
  • ફ્રેમવર્ક: સત્રો, કેશ અને દૃશ્યો ધરાવે છે જેને વારંવાર બોલાવવામાં આવે છે;
  • લૉગ્સ: રન-ટાઇમ સમસ્યાઓ, ખાસ કરીને તમામ અપવાદ અને ભૂલ લૉગ્સ ટ્રેસ કરતી ફાઇલો ધરાવે છે.
ટેસ્ટs

આ નિર્દેશિકામાં તમામ યુનિટ ટેસ્ટ કેસો સમાયેલ છે. ટેસ્ટ કેસ વર્ગો માટે નામકરણ કેમલ_કેસ છે અને વર્ગની કાર્યક્ષમતા પર આધારિત નામકરણ સંમેલનને અનુસરે છે.

વેન્ડર

Laravel વ્યવસ્થાપિત અવલંબન પર આધારિત છે રચયિતા, ઉદાહરણ તરીકે Laravel સેટઅપ ઇન્સ્ટોલ કરવા અથવા XNUMXજી પાર્ટી લાઇબ્રેરીઓનો સમાવેશ કરવા વગેરે.

વિક્રેતા ફોલ્ડરમાં ની તમામ નિર્ભરતાઓ શામેલ છે રચયિતા.

Ercole Palmeri

ઇનોવેશન ન્યૂઝલેટર
નવીનતા પરના સૌથી મહત્વપૂર્ણ સમાચારને ચૂકશો નહીં. તેમને ઇમેઇલ દ્વારા પ્રાપ્ત કરવા માટે સાઇન અપ કરો.

તાજેતરના લેખો

બાળકો માટે રંગીન પૃષ્ઠોના ફાયદા - તમામ ઉંમરના લોકો માટે જાદુની દુનિયા

રંગ દ્વારા સુંદર મોટર કૌશલ્ય વિકસાવવાથી બાળકોને લેખન જેવી વધુ જટિલ કુશળતા માટે તૈયાર કરવામાં આવે છે. રંગ કરવા માટે…

2 મે 2024

ભાવિ અહીં છે: શિપિંગ ઉદ્યોગ વૈશ્વિક અર્થતંત્રમાં કેવી રીતે ક્રાંતિ લાવી રહ્યો છે

નૌકાદળ ક્ષેત્ર એ સાચી વૈશ્વિક આર્થિક શક્તિ છે, જેણે 150 અબજના બજાર તરફ નેવિગેટ કર્યું છે...

1 મે 2024

પ્રકાશકો અને OpenAI આર્ટિફિશિયલ ઇન્ટેલિજન્સ દ્વારા પ્રક્રિયા કરાયેલ માહિતીના પ્રવાહને નિયંત્રિત કરવા માટે કરાર પર હસ્તાક્ષર કરે છે

ગયા સોમવારે, ફાઇનાન્શિયલ ટાઇમ્સે OpenAI સાથેના સોદાની જાહેરાત કરી હતી. FT તેના વિશ્વ કક્ષાના પત્રકારત્વને લાઇસન્સ આપે છે...

30 એપ્રિલ 2024

ઓનલાઈન ચુકવણીઓ: સ્ટ્રીમિંગ સેવાઓ તમને કાયમ માટે કેવી રીતે ચૂકવણી કરે છે તે અહીં છે

લાખો લોકો સ્ટ્રીમિંગ સેવાઓ માટે ચૂકવણી કરે છે, માસિક સબ્સ્ક્રિપ્શન ફી ચૂકવે છે. સામાન્ય અભિપ્રાય છે કે તમે…

29 એપ્રિલ 2024

તમારી ભાષામાં ઇનોવેશન વાંચો

ઇનોવેશન ન્યૂઝલેટર
નવીનતા પરના સૌથી મહત્વપૂર્ણ સમાચારને ચૂકશો નહીં. તેમને ઇમેઇલ દ્વારા પ્રાપ્ત કરવા માટે સાઇન અપ કરો.

અમને અનુસરો