Framework (فریم ورک) در لغت به معنای «چارچوب» بوده و در معانی دیگری از جمله «کالبد»، «بدنه» و «استخوانبندی» نیز مورد استفاده قرار میگیرد.
در برنامه نویسی کامپیوتر، یک فریم ورک را میتوان مجموعهای از ابزارها، کتابخانهها، قراردادها و بهترین شیوهها تعریف کرد که برای یک یا چند زبان برنامهنویسی ایجاد شده و امکان برنامه نویسی را راحتتر میکند. همانند «دات نت فریم ورک مایکروسافت» که در محیط برنامهنویسی «ویژوال استودیو» برای زبانهای برنامهنویسی «سیشارپ»، «بیسیک» و حتی «سیپلاسپلاس» در نظر گرفته شده است.
به عبارتی دیگر، فریمورکها، چارچوب کاری مارا مشخص میکنند و به طوری که حجم عظیمی از کدما به آنها وابسته خواهد شد.
جهت مطالعه بیشتر اینجا کلیک کنیدبرای زبان برنامهنویسی PHP، فریم ورکهای متنوعی توسعه داده شده است؛ که لاراول، یکی از پراستفادهترین و مشهورترین این فریم ورکها میباشد. به نقل از ویکیپدیا:
لاراول (به انگلیسی Laravel) یک چارچوب متن باز پی اچ پی (PHP) است که توسط تیلور اوتول، برای توسعه نرمافزارهای وب بر پایه معماری MVC طراحی شدهاست. بعضی از ویژگیهای لاراول به صورت ماژولار و بستهبندی شده ارائه شدهاست. در مارس ۲۰۱۵، لاراول به عنوان معروفترین فریم ورک php شناخته شد، سایر فریم ورکهای محبوب شامل symfony2,Nette,CodeIgniter,Yii2 هستند. کدهای باز لاراول بر روی github میزبانی میشود؛ و تحت لیسانس MIT License ارائه شدهاست.
در واقع بایستی گفت لاراول دریچه جدیدی به دنیای برنامه نویسی است که میتوان توسعه برنامهها در آن را با کدهای زیبا و با صرفه جویی در زمان ایجاد کرد.
تاریخچه لاراول
تیلور اوتول (Taylor Otwell) برای این لاراول را ساخت تا تلاش کند یک راه حل پیشرفتهتر از فریم ورک CodeIgniter را ارائه کرده باشد. اولین نسخه آزمایشی لاراول در 9 ژوئن 2011 در دسترس قرار گرفت؛ و در یک ماه بعد، نسخه کامل شده لاراول منتشر شد. لاراول 1 شامل مکانسیمهای مدل، ویو، سشن، و مسیریابی بود؛ ولی فقدان وجود کنترلر در آن باعث شد تا حالت فریم ورک MVC واقعی خود را از دست بدهد.
لاراول 1
تیلور اوتول در سال 2011 اولین نسخه از لاراول را منتشر کرد که مکانیزمهای model، session، view و مسیریابی را ارائه میداد، ولی این نسخه در نبود کنترلر، حالت MVC واقعی را از دست داده بود.
لاراول 2
در سپتامبر 2011، اوتول با انجام بهینه سازیهای متعدد لاراول 2 را منتشر کرد. از مهمترین تغییرات نسخه 2، وجود کنترلرها بود که باعث میشد لاراول رسماً به عنوان یک فریم ورک MVC شناخته شود. همچنین سیستم قالب بندی blade نیز در نسخه دوم به این فریم ورک اضافه شد.
لاراول 3
در فوریه سال 2012، لاراول 3 با تغییرات جدیدی وارد عرصه شد. انتشار لاراول 3 با معرفی سایت این فریم ورک به آدرس https://laravel.com که امکان استفاده از یک داکیومنت قوی را برای کاربرانش فراهم میکرد، همراه بود. از مهمترین قابلیتهای لاراول 3، استفاده از خط فرمان CLI به نام artisan بود که در ادامه توضیح خواهیم داد. پشتیبانی داخلی از مدیریت سیستم بانک اطلاعاتی، migration ها، لایههای بانک اطلاعاتی، پشتیبانی از رویدادها، همگام!سازی لاراول با unit testing و همچنین سیستم پکیجینگ یا bundle، از دیگر قابلیتهای مهم لاراول در نسخه سوم آن بود؛ که محبوبیتش را فزونی بخشید.
لاراول 4
اکنون دیگر لاراول به جایگاه خوبی در بین کاربران دست یافته بود. پس از آن در می سال 2013، نسخه چهارم لاراول بر پایه کدهای Illuminate منتشر شد. در نسخه 4، با بهره بردن از مدیر بستهها یا composer، تحول بزرگی در چارچوب لاراول ایجاد شد. زیرا این امکان فراهم شده بود که توسط composer، کاربران بتوانند از بستهها و کامپوننتهای متعددی که توسط برنامهنویسان PHP در سراسر جهان نوشته شده بود، استفاده کنند. از قابلیتهای دیگر ارائه شده توسط نسخه 4 لاراول، پشتیبانی از database seeding، پشتیبانی از صفهای پیام، ارسال انواع مختلفی از ایمیل و پشتیبانی از soft deletion یا تاخیر در حذف رکوردهای پایگاه داده بود.
لاراول 5
سیر تکامل لاراول ادامه داشت تا اینکه در فوریه سال 2015، نسخه پنجم لاراول با تغییر در نسخه 4.3 منتشر شد. قابلیتهای مهم و ویژهای به این نسخه اضافه شده بود. برنامهریزی برای اجرای وظایف از طریق بستهای به نام scheduler، بهینهسازی بستههای assets از طریق Elixir، ساده شدن عملیات احراز هویت از طریق بسته Socialite، همچنین ارائه ساختار درختی برای توسعه برنامه از قابلیتهای لاراول 5 بود.
پس از آن، نسخههای لاراول 5 به ترتیب منتشر شدند و در هر کدام از آنها، ویژگیهای جدید و منحصر به فردی نیز ارائه شد. نتیجهی این تلاشها این بود که هم اکنون یک فریم ورک PHP با امکانات کامل و جامع در اختیار برنامهنویسان قرار دارد که تمام نیازهای یک برنامهنویس تحت وب را برطرف میکند. در عین حال، راحتی و سهولت استفاده از آن، مهمترین ویژگیش به شمار میآید. در ادامه نسخههای مختلف ورژن 5 لاراول را جهت درک بهتر تفاوت آنها بررسی میکنیم.
لاراول 5.1
لاراول 5.1 در ژوئن سال 2015 منتشر شد. باگهای زیادی در نسخه 5.1 لاراول برطرف شده بود. در عین حال مهمترین ویژگی نسخه 5.1، انتشار آن به صورت یک نسخه با پشتیبانی طولانی مدت یا LTS بود. امکان پشتیبانی رفع مشکلات تا 2 سال و پشتیبانی امنیتی تا سه سال در این نسخه فراهم شده بود.
لاراول 5.2
در 21 دسامبر 2015، لاراول 5.2 منتشر شد که تغییرات کوچکی در آن اعمال شده بود.
لاراول 5.3
لاراول 5.3 با پشتیبانی 6 ماهه برای رفع مشکلات و پشتیبانی یک ساله برای مشکلات امنیتی در 23 اوت 2016 منتشر شد. ویژگیهای جدید زیادی به این نسخه اضافه شده بود که مهمترین آن؛ تمرکز بر بهبود سرعت توسعه برای برنامهنویسان با ایجاد بهبودهای خلاقانه جهت انجام کارهای رایج بود.
لاراول 5.4
لاراول 5.4 در 24 ژانویه 2017 منتشر شد. این نسخه، بسیاری از ویژگیهای جدید لاراول از جمله Laravel Dusk، Laravel Mix، Blade Components and Slots، Markdown Emails، Automatic Facades، بهبود مسیر یا route و ویژگیهای دیگر را شامل میشد.
لاراول 5.5
تیم توسعه لاراول همواره درصدد توسعه و افزودن قابلیتهای جدید به آن هستند و در همین راستا، لاراول 5.5 را در 30 اگوست 2017 با پشتیبانی طولانی مدت و به صورت LTS منتشر کردند. این نسخه کامل، امکان پشتیبانی برای رفع مشکلات تا دو سال و پشتیبانی برای رفع مسائل امنیتی تا سه سال را ایجاد کرده است. این نسخه، ویژگیهای مهم و جدید بسیاری از جمله:
- قابلیتهای پیش فرض frontend (Frontend presets)
- گزینههای جدید مسیریابی (routing)
- دستورالعملهای Blade شرطی (Blade::if)
- Renderable mailable
- Renderable Exceptions
- رابط پاسخگو (Responsable interface)
- علانهای ناشناس (One-off Notifications)
- پیشرفت اعتبار سنجی(Validation improvements)
- TrustedProxy package
- Migrate:fresh
- ویژگیهای جدید مهاجرت (migration) در پایگاه داده
- WithoutExceptionHandling middleware
- Dusk improvements
- تغییرات Package auto-discovery
- Vendor:publish menu
- دستورات کنسول Auto-registered
- نجیره کاری یا Job chaining
- مدل missing بهتر برای کار با job
- Laravel Horizon
ویژگیها و مزایای لاراول
در ادامه دلیل رشد بسیار سریع لاراول و اینکه چرا در مدت زمان کوتاهی توانسته در رقابت با فریم ورکهای دیگر PHP، نظر جامعه برنامه نویسان را به خود جلب کند را بررسی میکنیم. مهمترین ویژگی لاراول سرعت بالا و همچنین سادگی و سهولت کار با آن است. لاراول قابلیتهای مهم فراوانی دارد که آن را به انتخاب اول برنامه نویسان PHP تبدیل کرده است. از جمله مهمترین قابلیتهای لاراول میتوان به موارد زیر اشاره کرد:
- استفاده از معماری MVC در لاراول: در تعریف معماری MVC و فریم ورکهای مبتنی بر آن میتوان گفت که این معماری تلفیقی از سه لایه model-view-controller است. کار با پایگاه داده از وظایف بخش model است. وظیفه ارتباط با کاربر نهایی بر عهده بخش view است. و وظیفه کنترل و ایجاد ارتباط بین دو لایه view و model برعهده بخش controller است. تقسیم بندی برنامه به این سه قسمت مزایای فراوانی دارد که از جمله مهمترین مزیتهای آن جداسازی منطق برنامه از بخش view سایت است که این امر باعث میشود؛ هنگام ایجاد تغییر در view، این تغییرات منطق برنامه را تحت تاثیر قرار ندهند. فریم ورک لاراول بر پایه معماری MVC است.
- انتشار به صورت متن باز: انتشار به صورت متن باز امکان تغییر این فریم ورک طبق چیزی که میخواهید را فراهم میکند.
- امکان تعریف RESTFUL controllers: منطقی برای سهولت استفاده از کنترلرها و کاهش کدها در آن بر پایه درخواستهای GET و POST است.
- استفاده از خصوصیت auto-loading: خصوصیت auto-loading در لاراول امکان لود اتوماتیک کلاسها و کامپوننتها را در صورت نیاز به آنها فراهم کرده است.
راحتی استفاده از پایگاه داده: با استفاده از سیستم ORM یا همان ابزار Elequent در لاراول میتوانید با انواع پایگاه دادهها ارتباط برقرار کرده و انواع کوئریها را در آن به کار بگیرید. - استفاده از ابزار unit testing: با استفاده از ابزار تست لاراول به راحتی میتوانید برنامههای خود را تست کنید.
- استفاده از قالب blade: میتوان از دادههای برنامه در view توسط قالب blade استفاده کرد.
- ایجاد پکیجها: در لاراول به راحتی میتوانید پکیجهای موردنظر خود را ایجاد کنید و از آن در برنامههای خود بهره ببرید، یا آن را با دیگران به اشتراک بگذارید.
- استفاده از خط فرمان آرتیزان (artisan): به خط فرمان لاراول (Artisan CLI) گفته میشود؛ که در لاراول ۳ با یکسری محدودیتها معرفی شد. لاراول بعدها به یک معماری بر پایه کامپوزر مهاجرت کرد که اجازه میداد آرتیزان با اجزا فریم ورک سیمفونی ترکیب شود، در نتیجه در لاراول ۴ ویژگیهای دیگر آرتیزان اضافه شد. استفاده از خط فرمان artisan این امکان را میدهد تا کارهای پیچیدهای را توسط چند خط کد ساده انجام دهیم.
- استفاده از migration: استفاده از این قابلیت این امکان را فراهم کرده است که تغییرات بانک اطلاعاتی به همراه سورس کد پروژه قابل انتقال باشد.
- نصب آسان: از مزیتهای لاراول این است که نصب این فریم ورک و کار با آن بسیار راحت است.
- استفاده از کامپوننتها: لاراول از پکیجها و کامپوننتهای زیادی بهره میبرد که به راحتی بر روی پروژه نصب و استفاده میشوند.
- امنیت: یکی از مهمترین مسائلی که برای یک برنامه نویس اهمیت دارد، امنیت برنامهی در حال ساخت است. لاراول از سطح بالایی از امنیت برخوردار است.
- مسیریابی: راحتی کار و قدرت مسیریابی لاراول از مهمترین ویژگیهای لاراول است.
چرخه انتشار لاراول
نسخه لاراول | تاریخ نشر | نسخه PHP |
---|---|---|
1.0 | June 2011 | |
2.0 | September 2011 | |
3.0 | February 22, 2012 | |
3.1 | March 27, 2012 | |
3.2 | May 22, 2012 | |
4.0 | May 28, 2013 | ≥ 5.3.0 |
4.1 | December 12, 2013 | ≥ 5.3.0 |
4.2 | June 1, 2014 | ≥ 5.4.0 |
5.0 | February 4, 2015 | ≥ 5.4.0 |
5.1 LTS | June 9, 2015 | ≥ 5.5.9 |
5.2 | December 21, 2015 | ≥ 5.5.9 |
5.3 | August 23, 2016 | ≥ 5.6.4 |
5.4 | January 24, 2017 | ≥ 5.6.4 |
5.5 LTS | August 30, 2017 | ≥ 7.0.0 |
5.6 | February 7, 2018 | ≥ 7.1.3 |
5.7 | September 4, 2018 | ≥ 7.1.3 |
5.8 | February 26, 2019 | ≥ 7.1.3 |
نظرات ثبت شده بدون دیدگاه