Artikoli

X'inhu Laravel, kif jaħdem u arkitettura bażika għall-ħolqien ta 'applikazzjonijiet WEB

Laravel huwa qafas tal-web ibbażat fuq PHP għall-bini ta 'applikazzjonijiet web high-end, bl-użu tas-sintassi sempliċi iżda qawwija tiegħu.

Il-qafas Laravel PHP jiġi ma 'kollezzjoni solida ta' għodod, u jipprovdi l-arkitettura għall-applikazzjonijiet prodotti. Huwa qafas PHP ta' sors miftuħ, li juża l-arkitettura MVC:

  • Qafas: hija l-ġbir ta 'metodi, klassijiet jew fajls li juża l-programmatur, u jista' wkoll jestendi l-funzjonalità tagħhom billi juża l-kodiċi tiegħu stess.
  • Arkitettura: huwa l-mudell tad-disinn speċifiku li jsegwi l-qafas. Laravel isegwi l-arkitettura MVC.

mvc

Akronimu magħmul minn tliet ittri, it-tifsira hija kif ġej:

  • M: Mudell. Mudell huwa klassi li tittratta database. Pereżempju jekk ikollna utenti f'applikazzjoni allura jkollna mudell ta' utenti li jkun inkarigat li jfittex it-tabella tal-utenti, jekk ikollna mudell tal-utenti allura jkollna wkoll tabella tal-utenti.
  • V: Ara. Veduta hija klassi li tieħu ħsieb dak kollu li nistgħu naraw dwar l-applikazzjoni fil-browser.
  • C: Kontrolluri. Kontrollur huwa l-intermedjarju li jieħu ħsieb kemm il-mudell kif ukoll il-veduta. Kontrollur huwa l-klassi li ġġib id-dejta mill-mudell u tibgħatha lill-klassi tal-vista.

Benefiċċji u karatteristiċi

Ħolqien ta' sistemi ta' awtorizzazzjoni u awtentikazzjoni

Kull sid ta' applikazzjoni tal-web għandu jkun ċert li utenti mhux awtorizzati ma jaċċessawx riżorsi protetti. Laravel jipprovdi mod faċli biex timplimenta l-awtentikazzjoni. Jipprovdi wkoll mod faċli biex tiġi organizzata l-loġika tal-awtorizzazzjoni u tikkontrolla l-aċċess għar-riżorsi.

Integrazzjoni ma 'għodod

Laravel huwa integrat ma 'ħafna għodod li joħolqu app aktar mgħaġġla. Mhux biss meħtieġ li tinħoloq l-app, iżda wkoll li tinħoloq app aktar mgħaġġla. L-integrazzjoni mal-caching backend hija waħda mill-passi ewlenin biex tittejjeb il-prestazzjoni ta 'web app. Laravel huwa integrat ma' xi backends caching popolari bħal Redis u Memcached.

Integrazzjoni tas-servizz tal-posta

Laravel huwa integrat mas-servizz tal-posta. Dan is-servizz jintuża biex jintbagħtu emails ta’ notifika. Jipprovdi API nadifa u sempliċi li tippermettilek tibgħat email malajr permezz ta' servizz fuq il-post jew ibbażat fuq il-cloud.

Awtomazzjoni tat-test

L-ittestjar ta' prodott huwa importanti ħafna biex jiġi żgurat li s-softwer jaħdem mingħajr żbalji, bugs u ħabtiet - kull meta tiġi rilaxxata verżjoni ġdida. Aħna nafu li l-ittestjar awtomatizzat jieħu inqas ħin mill-ittestjar manwali, speċjalment għall-ittestjar mhux ta 'rigressjoni. Laravel ġie żviluppat bl-ittestjar f'moħħu wkoll.

Separazzjoni tal-kodiċi tal-loġika tan-negozju mill-kodiċi tal-preżentazzjoni

Is-separazzjoni tal-kodiċi tal-loġika tan-negozju u l-kodiċi tal-preżentazzjoni tippermetti lid-disinjaturi tat-tqassim HTML jibdlu d-dehra u t-tħossok mingħajr ma jinteraġixxu mal-iżviluppaturi. Bug jista 'jiġi ffissat mill-iżviluppaturi aktar malajr jekk tiġi pprovduta separazzjoni bejn il-kodiċi tal-loġika tan-negozju (Kontrollur) u l-kodiċi tal-preżentazzjoni (View). Aħna nafu li Laravel isegwi l-arkitettura MVC, għalhekk is-separazzjoni hija essenzjali.

Iffissar tal-vulnerabbiltajiet tekniċi l-aktar komuni

Laravel huwa qafas sigur peress li jipproteġi l-applikazzjoni tal-web mill-vulnerabbiltajiet kollha tas-sigurtà. Il-vulnerabbiltà hija waħda mill-aktar aspetti importanti fl-iżvilupp tal-applikazzjoni tal-web. L-organizzazzjoni Amerikana Fondazzjoni OWASP, definishes vulnerabbiltajiet kbar tas-sigurtà bħal injezzjoni SQL, falsifikazzjoni talba, scripting, eċċ.

CRON: ippjanar ta' attivitajiet ta' konfigurazzjoni u ġestjoni

L-applikazzjonijiet tal-WEB dejjem jeħtieġu mekkaniżmi tal-iskedar tal-kompiti biex jiġu skedati u teżegwiti l-kompiti fil-ħin. Pereżempju, meta tibgħat emails lill-abbonati jew meta tnaddaf it-tabelli tad-database fl-aħħar tal-ġurnata. Biex tiskeda l-kompiti, l-iżviluppaturi jeħtieġ li joħolqu l-entrata Cron għal kull kompitu, u l-iskedar tal-kmand Laravel defijispiċċa l-ippjanar tal-kmand.

Ħolqien tal-proġett Laravel

Biex toħloq l-ewwel proġett Laravel tiegħek, jeħtieġ li jkollok il- Composer installati. Jekk ma tkunx preżenti fuq il-magna tiegħek, ipproċedi biex tinstallaha kif deskritt fl-artiklu tagħna dwar kompożitur.

Wara dan oħloq direttorju ġdid fis-sistema tiegħek għall-proġett Laravel il-ġdid tiegħek. Sussegwentement, innaviga lejn il-mogħdija fejn ħloqt id-direttorju l-ġdid, u mexxi l-kmand tal-ħolqien tal-proġett composer create-projectbilli ttajpja l-kmand li ġej:

composer create-project laravel/laravel myex-app

Dan il-kmand (verżjoni 9.x) joħloq il-proġett imsemmi myex-app

Jew tista 'toħloq proġetti ġodda Laravel globalment tinstalla l-installatur ta Laravel proċedura Composer:

Newsletter dwar l-innovazzjoni
Titlifx l-aktar aħbarijiet importanti dwar l-innovazzjoni. Irreġistra biex tirċevihom bl-email.
composer global require laravel/installer
laravel new myex-app

Wara li toħloq il-proġett, ibda s-server lokali ta 'żvilupp Laravel billi tuża l-kmand serve dell "Artisan CLI ta' Laravel:

php artisan serve

Wara li tibda s-server tal-iżvilupp Artisan, l-applikazzjoni tiegħek tkun aċċessibbli fil-web browser tiegħek fuq http://localhost:8000. Issa, inti lest biex tużah Laravel. Naturalment, tista 'wkoll trid twaqqaf database.

Struttura tal-applikazzjoni f'Laravel

L-istruttura Laravel hija bażikament l-istruttura ta 'folders, subfolders u fajls inklużi fi proġett. Ladarba jinħoloq proġett f'Laravel, nistgħu naraw l-istruttura tal-applikazzjoni kif muri fl-immaġni tal-folder tal-għeruq ta 'Laravel:

Config

Il-folder tal-konfigurazzjoni jinkludi konfigurazzjonijiet u parametri assoċjati, li huma meħtieġa biex applikazzjoni Laravel taħdem sew. Il-fajls differenti inklużi fil-folder tal-konfigurazzjoni huma elenkati fl-immaġni hawn taħt. L-ismijiet tal-fajls jirrappreżentaw ambiti tal-konfigurazzjoni.

DataBase

Dan id-direttorju jinkludi diversi parametri għall-funzjonalità tad-database. Jinkludi tliet sottodirettorji:

  • Żrieragħ: fih il-klassijiet użati għad-database tat-test unitarju;
  • Migrazzjonijiet: dan il-folder jintuża għall-ġenerazzjoni u l-allinjament tal-istruttura tad-DB mal-applikazzjoni;
  • Fabbriki: Dan il-folder jintuża biex jiġġenera numru kbir ta 'rekords tad-dejta.
Pubblika

Huwa l-fowlder ta 'l-għeruq li jgħin biex jinizjalizza l-applikazzjoni Laravel, jiġifieri l-bidu ta' l-applikazzjoni. Jinkludi l-fajls u folders li ġejjin:

  • .htaccess: fajl li jipprovdi l-konfigurazzjoni tas-server;
  • javascript u css: fihom il-fajls tar-riżorsi kollha tal-applikazzjoni Laravel;
  • index.php: fajl meħtieġ biex tiġi inizjalizzata applikazzjoni tal-web.
riżorsi

Id-direttorju tar-Riżorsi fih fajls li jtejbu l-applikazzjoni tal-web. Is-subfolders inklużi f'dan id-direttorju u l-iskop tagħhom:

  • assi: folder jinkludi fajls bħal LESS u SCSS, li huma meħtieġa għall-istil tal-applikazzjoni tal-web;
  • lang: inkludi konfigurazzjoni għal lokalizzazzjoni jew internalizzazzjoni;
  • fehmiet: huma l-fajls HTML jew mudelli li jinteraġixxu mal-utenti finali u għandhom rwol primarju fl-arkitettura MVC.
Ħażna

Dan huwa l-folder li jaħżen ir-zkuk u l-fajls kollha li huma meħtieġa meta jkun qed jaħdem proġett Laravel. Hawn taħt jinsabu s-subfolders inklużi f'dan id-direttorju u l-iskop tagħhom −

  • app: dan il-folder fih il-fajls li jissejħu wara xulxin;
  • qafas: fih sessjonijiet, caches u fehmiet li jissejħu ta' spiss;
  • Zkuk: Fih fajls li jsegwu l-problemi tal-run-time, speċjalment ir-reġistri kollha tal-eċċezzjonijiet u tal-iżbalji.
Tests

Il-każijiet kollha tat-test unitarju jinsabu f'dan id-direttorju. L-ismijiet għall-klassijiet tal-każ tat-test huwa camel_case u jsegwi l-konvenzjoni tal-ismijiet ibbażata fuq il-funzjonalità tal-klassi.

Vendor

Laravel huwa bbażat fuq dipendenzi ġestiti kompożitur, pereżempju biex tinstalla setup ta 'Laravel jew biex tinkludi libreriji ta' partijiet terzi, eċċ.

Il-folder tal-Bejjiegħ fih id-dipendenzi kollha ta' kompożitur.

Ercole Palmeri

Newsletter dwar l-innovazzjoni
Titlifx l-aktar aħbarijiet importanti dwar l-innovazzjoni. Irreġistra biex tirċevihom bl-email.

Artikoli riċenti

Il-Futur qiegħed Hawnhekk: Kif l-Industrija tat-Tbaħħir qed tirrivoluzzjona l-Ekonomija Globali

Is-settur navali huwa qawwa ekonomika globali vera, li navigat lejn suq ta’ 150 biljun...

1 Mejju 2024

Il-pubblikaturi u l-OpenAI jiffirmaw ftehimiet biex jirregolaw il-fluss tal-informazzjoni pproċessata mill-Intelliġenza Artifiċjali

It-Tnejn li għadda, il-Financial Times ħabbret ftehim mal-OpenAI. FT tagħti liċenzja għall-ġurnaliżmu ta’ klassi dinjija tagħha...

April 30 2024

Ħlasijiet Online: Hawn Kif Is-Servizzi ta' Streaming Jagħmel Inti Tħallas Għal Dejjem

Miljuni ta 'nies iħallsu għal servizzi ta' streaming, iħallsu miżati ta 'abbonament ta' kull xahar. Hija opinjoni komuni li inti...

April 29 2024

Veeam għandu l-aktar appoġġ komprensiv għar-ransomware, mill-protezzjoni għar-rispons u l-irkupru

Coveware minn Veeam se jkompli jipprovdi servizzi ta' rispons għal inċidenti ta' estorsjoni ċibernetika. Coveware se joffri forensiċi u kapaċitajiet ta' rimedju...

April 23 2024