تاريخچه و سير تحول لاراول

تيلور اوتول قصد داشت فريم ورکي ايجاد کند که بر پايه Code Igniter باشد، در حالي که امکانات پيشرفته‌تري نسبت به آن ارائه دهد. چرا که با رشد Code Igniter مشکلاتي براي برنامه نويسان به وجود آمده بود. در ادامه به شرح سير تکاملي لاراول مي پردازيم:

لاراول 1 (2011)

تيلور اوتول اولين نسخه ي لاراول را منتشر کرد که مکانيزم‌هاي model، session، view  و مسيريابي را ارائه مي‌داد، ولي اين نسخه در نبود کنترلر حالت MVC واقعي را از دست داده بود.

لاراول 2 (سپتامبر2011)

اوتول با انجام بهينه سازي‌هاي متعدد لاراول 2 را منتشر کرد که از مهم‌ترين تغييرات وجود کنترلرها بود که سبب مي‌شد لاراول رسماً به عنوان يک فريم ورک MVC شناخته شود. همچنين سيستم قالب بندي blade نيز در نسخه دوم به اين فريم ورک اضافه گرديد.

لاراول 3 (فوريه سال 2012) 

لاراول 3 با تغييرات جديدي وارد عرصه شد. انتشار لاراول 3 با معرفي سايت اين فريم ورک با آدرس laravel.com که

امکان استفاده از يک document قوي را براي کاربرانش فراهم مي‌کرد، همراه بود. از مهم‌ترين قابليت‌هاي اين ورژن استفاده از خط فرمان CLI به نام artisan بود. پشتيباني داخلي از مديريت سيستم بانک اطلاعاتي، migration ها، لايه‌هاي بانک اطلاعاتي، پشتيباني از رويدادها، همگام سازي لاراول با unit testing و همچنين سيستم پکيجينگ يا bundle  از ديگر قابليت‌هاي مهم لاراول در نسخه سوم لاراول بود که محبوبيت آن را دوچندان کرد.

 

لاراول 4 (مي سال 2013)

اکنون ديگر لاراول به جايگاه خوبي در بين کاربران دست يافته بود. پس از آن نسخه چهارم لاراول بر پايه کدهاي  Illuminate  منتشر شد. در نسخه 4 با بهره بردن از مديريت بسته‌ها(composer)  اين امکان فراهم شده بود که کاربران بتوانند از بسته‌ها و کامپوننت ‌هاي متعددي که توسط برنامه نويسان PHP در سراسر جهان نوشته شده بود، استفاده کنند. از قابليت‌هاي ديگر ارائه شده توسط نسخه 4 لاراول پشتيباني از database seeding، پشتيباني از صف‌هاي پيام، ارسال انواع مختلفي از ايميل و پشتيباني از soft deletion يا تاخير در حذف رکوردهاي پايگاه داده بود.

لاراول 5 (فوريه سال 2015)

سير تکامل لاراول ادامه داشت تا اينکه نسخه پنجم آن با تغيير نسخه 4.3 منتشر شد. برنامه‌ ريزي براي اجراي وظايف از طريق بسته‌اي به نام scheduler، بهينه سازي بسته‌هاي assets از طريق Elixir، ساده شدن عمليات احراز هويت از طريق بسته Socialite، همچنين ارائه ساختار درختي براي توسعه برنامه از قابليت‌هاي ارائه شده در نسخه 5 بود.

پس از آن، نسخه‌هاي مختلف لاراول 5 به ترتيب منتشر و در هر کدام از آن‌ها ويژگي‌هاي منحصربه فردي ارائه شد. اکنون لاراول به عنوان يک برنامه کامل و جامع براي برنامه نويسان PHP  به شمار مي رود که کاربرد آن نيز بسيار آسان است. اما شايد بپرسيد تفاوت نسخه هاي مختلف ورژن 5 لاراول چيست؟

لاراول 5.1 (ژوئن سال 2015)

باگ‌هاي زيادي در نسخه 5.1 لاراول برطرف شده بود. در عين حال مهم‌ترين ويژگي آن به صورت يک نسخه با پشتيباني طولاني مدت يا LTS بود. امکان پشتيباني رفع مشکلات تا 2 سال و پشتيباني امنيتي تا سه سال در اين نسخه فراهم گرديده بود.

لاراول 5.2 (21 دسامبر 2015)

تغييرات کوچکي در آن اعمال شده بود.

لاراول 5.3 (23 اوت 2016)

با پشتيباني 6 ماهه براي رفع مشکلات و پشتيباني يک ساله براي مشکلات امنيتي منتشر شد. از مهم‌ترين ويژگي هاي آن تمرکز بر بهبود سرعت توسعه براي برنامه نويسان با ايجاد بهبود‌هاي خلاقانه به جهت انجام کارهاي رايج بود.

لاراول 5.4 (24 ژانويه 2017)

اين نسخه بسياري از ويژگي‌هاي جديد لاراول از جمله Laravel Dusk، Laravel Mix، Blade Components and Slots، Markdown Emails، Automatic Facades، بهبود مسير يا route و ويژگي‌هاي ديگر را شامل مي‌شد.

لاراول 5.5 (24 اگوست 2017)

اين نسخه از لاراول را نيز با پشتيباني طولاني مدت و به صورت LTS منتشر کردند. اين نسخه کامل، امکان پشتيباني براي رفع مشکلات تا دو سال و پشتيباني براي رفع مسائل امنيتي تا سه سال را ايجاد کرده است.

 

مزاياي استفاده از فريم ورک لاراول

مهم‌ترين ويژگي‌ لاراول سرعت بالا و همچنين سادگي و سهولت کار با‌ آن است. لاراول قابليت‌هاي مهم فراواني دارد که آن را به انتخاب اول برنامه نويسان PHP تبديل کرده است. اما چه قابليت هايي؟

استفاده از معماري MVC در لاراول: اين معماري تلفيقي از سه لايه model-view-controller است. کار با پايگاه داده از وظايف بخش model به شمار مي رود. وظيفه ارتباط با کاربر نهايي بر عهده بخش view است. و وظيفه کنترل و ايجاد ارتباط بين دو لايه view و model برعهده بخش controller است. از جمله مهم‌ترين مزيت‌هاي اين برنامه ريزي، جداسازي منطقي برنامه از بخش view سايت است؛ که اين امر باعث مي‌شود هنگام ايجاد تغيير در view، اين تغييرات منطق برنامه را تحت تاثير قرار ندهند.

انتشار به صورت متن باز:  انتشار به صورت متن باز امکان تغيير اين فريم ورک مطابق با ميل برنامه نويس را فراهم مي‌کند.

استفاده از خصوصيت auto-loading : اين خصوصيت امکان لود اتوماتيک کلاس‌ها و کامپوننت‌ها را در صورت نياز به‌ آن‌ها فراهم کرده است.

راحتي استفاده از پايگاه داده:  با استفاده از سيستم ORM يا همان ابزار Elequent در لاراول مي‌توان با انواع پايگاه داده‌ها ارتباط برقرار کرده و انواع کوئري‌ها را در آن به کار گرفت.

استفاده از ابزار :unit testing با استفاده از ابزار تست لاراول به راحتي مي‌توانيد برنامه‌هاي خود را تست کنيد.

استفاده از قالب blade : مي‌توان از داده‌هاي برنامه در view توسط قالب blade استفاده کرد.

ايجاد پکيج‌ها : در لاراول به راحتي مي‌توانيد پکيج‌هاي موردنظر خود را ايجاد کنيد و از آن در برنامه‌هاي خود بهره ببريد، يا آن را با ديگران به اشتراک بگذاريد.

استفاده از خط فرمان artisan : استفاده از خط فرمان artisan اين امکان را مي‌دهد تا کارهاي پيچيده‌اي را توسط چند خط کد ساده انجام دهيم.

استفاده از :migration اين قابليت اين امکان را فراهم کرده است که تغييرات بانک اطلاعاتي به همراه سورس کد پروژه قابل انتقال باشد.

نصب آسان:  از مزيت‌هاي آن، اين است که نصب اين فريم ورک و کار با آن بسيار راحت است.

استفاده از کامپوننت‌ها:  لاراول از پکيج‌ها و کامپوننت‌هاي زيادي بهره مي‌برد که به راحتي بر روي پروژه نصب و استفاده مي‌شوند.

امنيت :از مهم‌ترين مسائلي که براي يک برنامه نويس اهميت دارد، امنيت برنامه‌ي در حال ساخت است. لاراول از سطح بالايي از امنيت برخوردار است.

مسيريابي : راحتي کار و قدرت مسيريابي لاراول از مهم‌ترين ‌ويژگي‌هاي لاراول است.

لاراول 5.6 (فوريه ي 2018)

نسخه ي جديد لاراول يعني 5.6 در فوريه سال 2018 منتشر خواهد شد. آخرين اطلاعاتي که درباره برخي تغييرات اين نسخه از لاراول در دست است به شرح زير است:

دستورات جديد Form Blade: اين نسخه از لاراول شامل دو دستور جديد براي form blade خواهد بود. اين دو دستور درمورد درخواست هاي جعلي (CSRF) و متد ورودي HTTP هستند.

حذف دستور Artisan Optimize:  دستور Artisan Optimize از نسخه ي 5.5 لاراول منسوخ مي شود و يک commit در شاخه اصلي آن را از نسخه ي 5.6 حذف کرده است. تا انتشار نسخه ي 5.6 شما وقت داريد تا فايل هاي اسکريپتي و composer.json را با توجه به ويژگي هاي جديد بروز کنيد.

از لاراول 5.5 ديگر فايل composer.json عمل optimize را در post-install-cmd و post-update-cmd ارجاع نمي دهد. دستور Optimize هم چنان تعريف شده است.

لاراول 5.6 که در آينده نزديک منتشر مي شود از الگوريتم هش پسورد Argon2i پشتيباني ميکند. همچنان روش قديمي bcrypt پشتيباني مي شود و به عنوان پيش فرض باقي مي ماند و ... .