Laravel Framework

Laravel یکی از فریم ورک های معروف زبان برنامه نویسی PHP است که نسبت به سایر فریم ورک های این زبان شهرت بیشتری کسب کرده است. در این مقاله قصد داریم تا با یک معرفی اجمالی، امکانات این فریم ورک را برای شما شرح دهیم و از مزایای استفاده از لاراول بگوییم. با ما همراه باشید!

نسخه های متعدد فریم ورک Laravel

اگر بخواهیم مختصری در مورد تاریخچه لاراول صحبت کنیم باید گفت در ژوئن سال 2011 بود که نخستین نسخه آزمایشی Laravel  عرضه شد و یک ماه بعد نسخه کامل آن در دسترس عموم قرار گرفت.

نسخه اولیه این فریم ورک شامل مکانیزم های Session، View،Model  وNavigation   بود. اما فقدان Controller باعث شد تا از معماری MVC پشتیبانی نکند. این ایراد در نسخه های بعدی برطرف گشت.

در سپتامبر سال 2011 نسخه دوم Laravel انتشار پیدا کرد. با افزودن controller به این نسخه، پشتیبانی از MVC سرانجام محقق شد و بهینه سازی های متعدد نیز در ساختار این فریم ورک صورت گرفت. ویژگی دیگری که در این نسخه اضافه شد ارائه موتور قالب بندی Blade بود.

با انتشار نسخه 3 لاراول در سال 2012 امکان استفاده از خط فرمان CLI که با نام artisan شناخته می شد نیز ممکن شد. پشتیبانی داخلی از مدیریت سیستم پایگاه داده و ابزارهای migration و پشتیبانی از Packaging از دیگر مواردی بود که در این نسخه به فریم ورک Laravel اضافه شدند.

نسخه 4، 5، 6، 7 فریم ورک Laravel به ترتیب در سال های 2013، 2015، 2019 و 2020 منتشر شدند و آخرین نسخه آن اواخر سپتامبر 2020 در اختیار برنامه نویسان قرار گرفت. شما در حال حاضر می توانید با مراجعه به سایت لاراول این نسخه را دریافت کنید.

آنچه در Laravel طی این مدت تغییر پیدا کرد به طور خلاصه شامل پشتیبانی از سیستم Composer ، پشتیبانی از سیستم برنامه ریزی اجرای وظایف با پکیج Schedular بود و ساده شدن عملیات احراز هویت. علاوه بر آن بهینه سازی هایی برای assets نیز انجام گرفت و ویژگی Laravel Vapor نیز به آن افزوده شد.

امکانات Laravel Framework

Laravel Framework

آنچه شاید بیش از موارد دیگر برای یک برنامه نویس، از دیدگاه تخصصی مهم باشد، ویژگی های یک Framework است. آشنایی با امکانات Laravel است که باعث می شود شما نسبت به یادگیری آن اقدام کنید. یا شاید هم به این نتیجه برسید که چنین فریم ورکی برای کار شما مناسب نیست.

بعضی از امکانات و ویژگی های Laravel به شرح زیر هستند:

Queues

در فریم ورک Laravel با تعریف صف این امکان به وجود می آید تا در انجام اموری که به زمان زیادی احتیاج دارند وقفه هایی ایجاد کنید و تصمیم گیری در خصوص زمان انجام آن را به بعد موکول کنید. لاراول با داشتن یک Api متمرکز امکان مدیریت صف را برای شما فراهم می کند.

رابط کاربری Laravel

یکی دیگر از ویژگی های برجسته فریم ورک Laravel رابط کاربری و محیط راحت آن است. این رابط کاربری با امکاناتی که در اختیار برنامه نویس قرار می دهد تاثیر زیادی بر سرعت انجام کار می گذارد.

امنیت

یکی از فاکتورهای مهم در طراحی سایت، امنیت است. مکانیزم hashed سبب می شود تا پسورد (Password) هرگز به عنوان متن رمز نشده در پایگاه داده ذخیره نشود. در کنار این مورد، الگوریتم Bcrypt Hashing کار تولید پسورد رمزگذاری شده را انجام می دهد. علاوه بر این ها چارچوب توسعه وب PHP که از عبارات آماده SQL استفاده می کند مانع حملات Injection SQL می شود.

قابلیت sync با ایمیل ها

در دنیای امروز افراد زیادی از سرویس های ایمیل استفاده می کنند. فریم ورک Laravel با دانستن این نکته، قابلیت استفاده آسان از این سرویس ها را فراهم کرده است. امکاناتی مانند: SparkPost ، SendMail ، PHP mail و SMTP همگی برای راحت تر شدن کار با سرویس های ایمیل هستند.

Validation

برای برنامه نویسان نوشتن دستی همه کدهای اعتبار سنجی (Validation) بی شک کار خسته کننده ای خواهد بود. فریم ورک Laravel با در اختیار داشتن یک سیستم اعتبار سنجی قوی شرایطی را مهیا می کند تا با مشخص کردن هر فیلد از فرم، نوع و کارکرد اعتبار سنجی مورد نظر، قوانین مربوط تبیین شود و سپس اعتبار سنجی ها به صورت خودکار صورت بگیرد.

لیست کردن تمامی امکانات و ویژگی های فریم ورک Laravel کار زمانبری خواهد بود و نیاز به یک مطلب مفصل دارد که در این مقاله مختصر نمی گنجد. در صورت علاقه مندی به مطالعه بیشتر می توانید با مراجعه به سایت رسمی لاراول از ریز جزئیات مطلع شوید. اما آنچه در ادامه به آن خواهیم پرداخت موضوع مزایا و معایب Laravel است که از لحاظ اهمیت کم از مواردی که تا اینجا مطالعه کرده اید ندارد.

مزایا و معایب فریم ورک Laravel

فریم ورک لاراول

با هر به روز رسانی طبیعتا بر مزایای Laravel افزوده می شود و کاستی های آن نیز برطرف خواهد شد. شاید در وهله اول بتوان همین به روز رسانی آسان و پشتیبانی را مزیت بزرگ این فریم ورک دانست.

Easy to learn

در گام بعدی موضوع درک و یادگیری لاراول حائز اهمیت خواهد بود. باید گفت که سهولت در یادگیری مزیتی است که در برخی از زبان های برنامه نویسی و فریم ورک ها یافت نمی شود؛ خوشبختانه در این زمینه فریم ورک Laravel جزو دسته آسان به حساب می آید چرا که در آن مستندات کاربر کامل است و در ساده ترین شکل ممکن قرار دارد. جالب است بدانید که در دنیای برنامه نویسی اکثر فریم ورک ها حتی مراحل نصب و فعالسازی پیچیده ای دارند. از این نظر لاراول جزو معدود مواردی به حساب می آید که مراحل نصب آن نیز بسیار ساده بوده و نیاز به دانش تخصصی ندارد.

ORM

ابزار مهمی چون ORM که برای برقراری پل ارتباطی بین پایگاه داده (Database) و اجرای Query مورد استفاده قرار می گیرد از مهم ترین مزیت ها و دلایل استفاده از فریم ورک Laravel به شمار می رود. این ویژگی امکانات بسیاری در اختیار شما قرار می دهد که مهم ترین آن ایجاد برخی محدودیت ها بین اشیا ساخته شده توسط شما و database است.

Auto-loading

وجود خاصیت auto-loading در لاراول برای کلاس ها زمانی به کار می آید که می خواهید تمامی classها و componentهای خود را به صورت خودکار لود کنید. با این خاصیت دیگر نیازی به include کردن دستی کتابخانه ها و فایل ها نیست.

Library

صحبت از کتابخانه ها شد؛ بد نیست بدانید که فریم ورک Laravel مجهز به کتابخانه های از پیش تعریف شده و ماژولار هم هست که در بسیاری از چارچوب های دیگر PHP قابل دسترسی نیست. برای مثال به یک کتابخانه تایید هویت می توان اشاره داشت که به راحتی قابل اجرا است و امکان چک کردن کاربران فعال، هک کردن Bcrypt، بازنشانی پسورد و رمزگذاری را دارد. این فریم ورک همچنین به ماژول های فردی تقسیم می شود که توسعه برنامه های وب ریسپانسیو و ماژولار را آسان تر می کند.

با اینکه مزیت های لاراول به اینجا ختم نمی شود و خیلی بیشتر از موارد فوق است اما بهتر است به همین مقدار بسنده کنیم و کمی از معایب فریم ورک Laravel  نیز بگوییم که اگرچه نسبت به مزایای آن خیلی کمتر هستند و برخی از آنها نیز به تازه کار بودن برنامه نویسان ارتباط دارد، اما وجود دارند و ذکر آنها دارای اهمیت است.

معایب Laravel

  • لاراول به عنوان یک فریم ورک جدید به اندازۀ دیگر فریم ورک ها بالغ نیست. 
  • Laravel در مقایسه به Django و Ruby از پشتیبانی کمتری برخوردار است که البته این مشکل با ادغام ابزارهای خارجی حل می شود. به دلیل همین پشتیبانی کمتر، کارها برای سایت های بزرگ یا سفارشی پیچیده و خسته کننده خواهد بود.
  • توسعه دهنده های تازه کار برای گسترش کدها و کلاس ها با مشکلاتی رو به رو می شوند.
  • برای سیستم های قدیمی، مهاجرت به Laravel ممکن است چندان ساده نباشد.

این بود مختصر مطلبی در جهت آشنایی با فریم ورک Laravel که امیدواریم مورد توجه شما قرار گرفته و مفید واقع شده باشد. گروه شاخه در تلاش است تا با ارائه مقالات ارزشمند دید شما نسبت به دنیای وب را تغییر دهد و گامی در جهت افزایش اطلاعات شما در مورد فناوری اطلاعات برداشته باشد.