Məqalələr

Laravel nədir, necə işləyir və WEB proqramları yaratmaq üçün əsas arxitektura

Laravel sadə, lakin güclü sintaksislərindən istifadə edərək yüksək səviyyəli veb proqramlar yaratmaq üçün PHP əsaslı veb çərçivədir.

Laravel PHP çərçivəsi möhkəm alətlər toplusu ilə gəlir və istehsal olunan tətbiqləri arxitektura ilə təmin edir. MVC arxitekturasından istifadə edən açıq mənbəli PHP çərçivəsidir:

  • Çərçivə: proqramçının istifadə etdiyi metodlar, siniflər və ya fayllar toplusudur və həmçinin öz kodundan istifadə edərək onların funksionallığını genişləndirə bilər.
  • Memarlıq: çərçivənin izlədiyi xüsusi dizayn nümunəsidir. Laravel MVC arxitekturasını izləyir.

mvc

Akronim üç hərfdən ibarətdir, mənası belədir:

  • M: Şablon. Model verilənlər bazası ilə məşğul olan bir sinifdir. Məsələn, bir tətbiqdə istifadəçilərimiz varsa, o zaman istifadəçilər cədvəlini sorğulamağa cavabdeh olan bir istifadəçi modelimiz olacaq, əgər bir istifadəçi modelimiz varsa, o zaman istifadəçilər cədvəlimiz də olacaq.
  • V: Baxın. Görünüş brauzerdə tətbiq haqqında görə biləcəyimiz hər şeyə diqqət yetirən bir sinifdir.
  • C: Nəzarətçilər. Nəzarətçi həm modelə, həm də görünüşə diqqət yetirən vasitəçidir. Nəzarətçi, modeldən məlumatları götürən və onu görünüş sinfinə göndərən sinifdir.

Faydaları və xüsusiyyətləri

Avtorizasiya və autentifikasiya sistemlərinin yaradılması

Hər bir veb proqram sahibi icazəsiz istifadəçilərin qorunan resurslara daxil olmadığına əmin olmalıdır. Laravel identifikasiyanı həyata keçirmək üçün asan bir yol təqdim edir. O, həmçinin avtorizasiya məntiqini təşkil etmək və resurslara girişi idarə etmək üçün asan bir yol təqdim edir.

Alətlərlə inteqrasiya

Laravel daha sürətli proqram yaradan bir çox alətlə inteqrasiya olunub. Təkcə proqram yaratmaq deyil, həm də daha sürətli proqram yaratmaq lazımdır. Keşləmə backend ilə inteqrasiya veb tətbiqinin işini yaxşılaşdırmaq üçün əsas addımlardan biridir.Laravel Redis və Memcached kimi bəzi məşhur keşləmə backendləri ilə inteqrasiya olunub.

Poçt xidmətinin inteqrasiyası

Laravel poçt xidməti ilə inteqrasiya olunub. Bu xidmət bildiriş e-poçtları göndərmək üçün istifadə olunur. O, yerli və ya bulud əsaslı xidmət vasitəsilə tez bir zamanda e-poçt göndərməyə imkan verən təmiz və sadə API təmin edir.

Test avtomatlaşdırılması

Məhsulun sınaqdan keçirilməsi proqram təminatının səhvlər, səhvlər və qəzalar olmadan işlədiyinə əmin olmaq üçün çox vacibdir - hər dəfə yeni versiya buraxıldıqda. Bilirik ki, avtomatlaşdırılmış test əllə sınaqdan daha az vaxt tələb edir, xüsusən qeyri-reqressiya testi üçün. Laravel də sınaqlar nəzərə alınmaqla hazırlanmışdır.

Biznes məntiq kodunun təqdimat kodundan ayrılması

Biznes məntiqi kodunun və təqdimat kodunun ayrılması HTML tərtibatının dizaynerlərinə tərtibatçılarla əlaqə yaratmadan görünüşü və hissi dəyişməyə imkan verir. Biznes məntiqi kodu (Controller) və təqdimat kodu (Görünüş) arasında ayırma təmin edilərsə, səhv tərtibatçılar tərəfindən daha tez düzəldilə bilər. Biz bilirik ki, Laravel MVC arxitekturasını izləyir, ona görə də ayrılma əsasdır.

Ən çox yayılmış texniki zəifliklərin aradan qaldırılması

Laravel təhlükəsiz çərçivədir, çünki o, veb tətbiqini bütün təhlükəsizlik zəifliklərindən qoruyur. Zəiflik veb proqramların hazırlanmasında ən vacib aspektlərdən biridir. Amerika təşkilatı OWASP Fondu, defiSQL inyeksiyası, sorğu saxtakarlığı, skript və s. kimi əsas təhlükəsizlik zəifliklərini aradan qaldırır.

CRON: konfiqurasiya və idarəetmə fəaliyyətlərinin planlaşdırılması

WEB proqramları həmişə tapşırıqları vaxtında planlaşdırmaq və yerinə yetirmək üçün bəzi tapşırıqların planlaşdırma mexanizmlərini tələb edir. Məsələn, abunəçilərə e-poçt göndərmək və ya günün sonunda verilənlər bazası cədvəllərini nə vaxt təmizləmək lazımdır. Tapşırıqları planlaşdırmaq üçün tərtibatçılar hər tapşırıq üçün cron girişi və Laravel əmr planlayıcısı yaratmalıdırlar defikomanda planlamasını bitirir.

Laravel layihəsinin yaradılması

İlk Laravel layihənizi yaratmaq üçün sizdə olmalıdır Composer quraşdırılıb. Maşınınızda yoxdursa, onu bizim məqaləmizdə təsvir olunduğu kimi quraşdırmağa davam edin bəstələmək.

Bundan sonra yeni Laravel layihəniz üçün sisteminizdə yeni bir kataloq yaradın. Sonra, yeni qovluğu yaratdığınız yola gedin və layihə yarat əmrini işə salın composer create-projectaşağıdakı əmri yazaraq:

composer create-project laravel/laravel myex-app

Bu əmr (versiya 9.x) adlı layihə yaradır myex-app

Və ya yeni layihələr yarada bilərsiniz Laravel -nin quraşdırıcısını qlobal olaraq quraşdırır Laravel vasitə Composer:

İnnovasiya bülleteni
Yeniliklərlə bağlı ən vacib xəbərləri qaçırmayın. Onları e-poçtla almaq üçün qeydiyyatdan keçin.
composer global require laravel/installer
laravel new myex-app

Layihəni yaratdıqdan sonra əmrdən istifadə edərək yerli Laravel inkişaf serverini işə salın serve dell 'Artisan CLI of Laravel:

php artisan serve

İnkişaf serverinə başladıqdan sonra Artisan, tətbiqiniz veb-brauzerinizdə əlçatan olacaq http://localhost:8000. İndi istifadə etməyə hazırsınız Laravel. Əlbəttə, siz də verilənlər bazası qurmaq istəyə bilərsiniz.

Laraveldə tətbiq strukturu

Laravel strukturu əsasən layihəyə daxil olan qovluqların, alt qovluqların və faylların strukturudur. Laravel-də layihə yaradıldıqdan sonra biz proqramın strukturunu Laravel kök qovluğu şəklində göstərildiyi kimi görə bilərik:

Config

Konfiqurasiya qovluğuna Laravel proqramının düzgün işləməsi üçün tələb olunan konfiqurasiyalar və əlaqəli parametrlər daxildir. Konfiqurasiya qovluğuna daxil olan müxtəlif fayllar aşağıdakı şəkildə verilmişdir. Fayl adları konfiqurasiya sahələrini təmsil edir.

bazası

Bu kataloq verilənlər bazası funksionallığı üçün müxtəlif parametrləri ehtiva edir. Buraya üç alt kataloq daxildir:

  • Seeds: vahid test verilənlər bazası üçün istifadə olunan sinifləri ehtiva edir;
  • Miqrasiyalar: bu qovluq DB strukturunun tətbiqi ilə yaradılması və uyğunlaşdırılması üçün istifadə olunur;
  • Fabrikalar: Bu qovluq çoxlu sayda məlumat qeydləri yaratmaq üçün istifadə olunur.
Ictimai

Bu, Laravel proqramını işə salmağa kömək edən kök qovluqdur, yəni tətbiqin başlanğıcıdır. Aşağıdakı fayl və qovluqları ehtiva edir:

  • .htaccess: server konfiqurasiyasını təmin edən fayl;
  • javascript və css: Laravel tətbiqinin bütün resurs fayllarını ehtiva edir;
  • index.php: veb tətbiqini işə salmaq üçün lazım olan fayl.
Resources

Resurslar kataloqu veb tətbiqini təkmilləşdirən fayllardan ibarətdir. Bu qovluğa daxil olan alt qovluqlar və onların məqsədi:

  • aktivlər: qovluğa veb proqramın üslubu üçün zəruri olan LESS və SCSS kimi fayllar daxildir;
  • dil: lokalizasiya və ya daxililəşdirmə üçün konfiqurasiya daxildir;
  • views: son istifadəçilərlə qarşılıqlı əlaqədə olan və MVC arxitekturasında əsas rol oynayan HTML faylları və ya şablonlarıdır.
saxlama

Bu, Laravel layihəsi işləyərkən lazım olan bütün qeydləri və faylları saxlayan qovluqdur. Aşağıda bu kataloqa daxil olan alt qovluqlar və onların məqsədi verilmişdir

  • proqram: bu qovluq ardıcıl olaraq çağırılan faylları ehtiva edir;
  • çərçivə: tez-tez çağırılan sessiyalar, keşlər və görünüşləri ehtiva edir;
  • Qeydlər: İş vaxtı problemlərini, xüsusən də bütün istisna və xəta qeydlərini izləyən faylları ehtiva edir.
Sınaqs

Bütün vahid test nümunələri bu kataloqda var. Test işi sinifləri üçün adlandırma camel_case-dir və sinfin funksionallığına əsaslanan adlandırma konvensiyasına əməl edir.

Satıcı

Laravel idarə olunan asılılıqlara əsaslanır bəstələmək, məsələn, Laravel quraşdırmasını quraşdırmaq və ya XNUMX-cü tərəf kitabxanalarını daxil etmək və s.

Satıcı qovluğunda bütün asılılıqlar var bəstələmək.

Ercole Palmeri

İnnovasiya bülleteni
Yeniliklərlə bağlı ən vacib xəbərləri qaçırmayın. Onları e-poçtla almaq üçün qeydiyyatdan keçin.

Articoli recenti

Catania Poliklinikasında Apple tamaşaçısı ilə Artırılmış Reallığa innovativ müdaxilə

Kataniya poliklinikasında Apple Vision Pro kommersiya görüntüləyicisi ilə oftalmoplastika əməliyyatı həyata keçirilib...

3 May 2024

Uşaqlar üçün Boyama Səhifələrinin Faydaları - bütün yaşlar üçün sehrli bir dünya

Rəngləmə yolu ilə incə motor bacarıqlarının inkişafı uşaqları yazı kimi daha mürəkkəb bacarıqlara hazırlayır. Rəngləmək üçün…

2 May 2024

Gələcək buradadır: Gəmiçilik Sənayesi Qlobal İqtisadiyyatda Necə inqilab edir

Dəniz sektoru 150 milyardlıq bazara doğru irəliləyən əsl qlobal iqtisadi gücdür...

1 May 2024

Nəşriyyatçılar və OpenAI süni intellekt tərəfindən işlənmiş məlumat axınını tənzimləmək üçün müqavilələr imzalayırlar.

Keçən bazar ertəsi Financial Times OpenAI ilə müqavilə elan etdi. FT dünya səviyyəli jurnalistikasına lisenziya verir...

30 Aprel 2024