آموزش آپدیت لاراول 10 به 11: راهنمای جامع

آموزش آپدیت لاراول 10 به 11

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

مزیت های استفاده از نسخه لاراول 11 نسبت به 10

کاملاً طبیعی است که تمام برنامه نویسان از آپدیت لاراول نسخه 10 به 11 انتظار ارتقا سطح قابلیت های موجود را داشته باشند. به همین دلیل در ادامه تعدادی از این برتریت ها بررسی خواهد شد:
  • بهبود عملکرد در کدنویسی
همان طور که می دانیم فریم ورک لاراول از کدنویسی های تکراری جلوگیری می کند. این عملکرد در نسخه 11 با کاهش زمان بارگذاری و پاسخگویی بیشتری مواجه است و بهینه سازی بهتری در پروژه های بزرگ را به ارمغان می آورد.
  • استفاده از ویژگی های جدید
قطعاً تجربه کدنویسی در نسخه 11 به واسطه ویژگی های جدید و بهبود یافته لاراول، راحتی و سرعت توسعه بالاتری را به همراه خواهد داشت. 
  • پشتیبانی از تکنولوژی روز
نسخه 11 لاراول در مقایسه با نسخه 10 امکان سازگاری بهتری با کتابخانه ها و فریم ورک های جدید برای برنامه نویسان PHP و زبان های دیگر فراهم کرده است.
  • امنیت بالا
از مهم ترین فاکتورهای ارتقا یافته در نسخه جدید از لاراول ویژگی های امنیتی سخت گیرانه تر کدهای نوشته شده در این پلتفرم می باشد.
  • افزایش منابع آموزشی
دسترسی بهتر به مستندات روز، کار را برای برنامه نویسی با لاراول را آسان تر و لذت بخش تر خواهد کرد که در نسخه 11 ملموس تر است.
  • رفع باگ های طاقت فرسا
به طور معمول پیش از انتشار نسخه های جدید، باگ های کشف شده در نسخه قبل در نظر گرفته شده و تجربه کاربری بهتر و توسعه دهنده ای روان‌ تری ارائه می شود.
  • امکانات جدید در ORM
ورژن نسخه 11 لاراول با ایجاد امکانات جدید در ORM (Eloquent) کار با پایگاه های داده را ساده تر می کند و به روند کار شما سرعت می بخشد.
  • جداسازی بهتر کد و توسعه ماژولار 
لاراول 11 با پشتیبانی از الگوهای جدید در طراحی نرم افزار گزینه های زیادی را برای جداسازی بهتر کد و توسعه ماژولار در اختیار کاربران خود قرار می دهد.

پیشنیازهای آپدیت نسخه در فریم ورک Laravel

  • حتماً باید نسخه 10 را داشته باشید، زیرا از لحاظ فنی ارتقا از نسخه 9 به 11 توصیه نمی شود.
  • PHP 8.2+ را با پسوندهای Ctype ،cURL ،DOM ،Fileinfo ،Filter ،Hash ،Mbstring ،Open SSL ،PCRE ،PDO Session ،Tokenizer ،XML ،Nginx یا Apache را ایجاد کنید.
  • در پایان مطمئن شوید که Third-party Composer packages شما از لاراول 11 پشتیبانی خواهد کرد.

مراحل آپدیت لاراول 10 به 11

در ابتدا باید دریافت کنیم که Third-party Composer packages از نسخه 11 پشتیبانی می کند، اما در غیر این صورت می توانید از دستور زیر استفاده کنید:

composer why-not laravel/framework 11.0
اگر بسته هایی ظاهر شود باید دستور زیر را اجرا کنید:

composer outdated --direct

در صورت تمایل می توانید بسته های غیر قابل اجرا را با بسته های دیگری جایگزین کنید. سپس کم ترین نسخه را برای Given Dependency در نظر بگیرید و در ادامه یک خط را در یک فایل مشخص شده ای تغییر دهید. اکنون یک Method یا مقدار بازگشتی تغییر داده شده است که می توانید تغییرات لازمه را اعمال کنید. این مرحله می تواند با توجه به حجم پایگاه کد، میزان تست و تعداد پروژه ها زمانبر باشد.
  • به روز رسانی Composer Dependencies در لاراول
موارد زیر را باید در لیست به روز رسانی های Composer.json قرار دهید:
  1. Framework به نسخه 11.0
  2. Nunomaduro/collision به نسخه 8.1
  3. Breeze به نسخه 2.0
  4. Cashier به نسخه 15.0
  5. Dusk به نسخه 8.0
  6. Jetstream به نسخه 5.0
  7. Octane به نسخه 2.3
  8. Passport به نسخه 12.0
  9. Sanctum به نسخه 4.0
همچنین در نظر داشته باشید که اگر برنامه شما از Laravel Cashier Stripe، Passport، Sanctum، Spark Stripe یا Telescope استفاده می کند، باید Migrations آن ها را به Application به اصطلاح Publish کنید. پس باید دستور زیر را اجرا کنید:

php artisan vendor: publish --tag=cashier-migrations
php artisan vendor: publish --tag=passport-migrations
php artisan vendor: publish --tag=sanctum-migrations
php artisan vendor: publish --tag=spark-migrations
php artisan vendor: publish --tag=telescope-migrations

برای بررسی بیشتر می توانید راهنماهای مربوط به Package ها را مطالعه کنید تا از جزئیات اطلاع داشته باشید:
  1. Laravel Cashier Stripe
  2. Laravel Passport
  3. Laravel Sanctum
  4. Laravel Spark Stripe
  5. Laravel Telescope
علاوه بر این باید در حالتی که Laravel installer را به صورت دستی اجرا کرده اید، از به روز رسانی نصب کننده از طریق Composer اقدام کنید:

global composer requires laravel/installer:^5.6

اما چنانچه از قبل در برنامه ها Laravel installer را داشتید، پس باید Doctrine/dbal Composer را حذف کنید. 
  • به روز رسانی احراز هویت در لاراول
چنانچه Work Factor در الگوریتم Hash سیستم شما از آخرین زمان Password Hash به روز شده باشد، این مرحله به صورت کاملاً خودکار انجام خواهد شد، اما در حالتی که این رفتار موجب به ریختگی در برنامه های شما شود می توانید از اضافه کردن غیر فعالسازی Rehash_on_login به فایل Config/hashing.php این قابلیت را حذف کنید. 

'rehash_on_login' => false,

  • به روز رسانی قرارداد User Provider در لاراول
در مراحل به روز رسانی به یاد داشته باشید که قرارداد Illuminate\Contracts\Auth\UserProvider روش جدیدی از RehashPasswordIfRequired دریافت کرده است. در واقع این روش زمانی به کار گرفته می شود که ضریب الگوریتم Hash تغییر کند. در این حالت قرارداد User Provider می تواند وظیفه Hash کردن مجدد و ذخیره رمز عبور کاربر در فضا مناسب برای ذخیره سازی را بر عهده خواهد گرفت. پس در صورتی که Application و Package اجرا شده توسط شما این رابط را پیاده سازی می نماید، باید RehashPasswordIfRequired را به Class موجود اضافه کنید:

public function rehashPasswordIfRequired (Authenticatable user, array credentials, bool force = false);

  • به روز رسانی قرارداد Authenticatable در لاراول

همچنین با دانش اینکه قرارداد Illuminate\Contracts\Auth\Authenticatable یک روش جدید از getAuthPasswordName دریافت کرده است که می توانید متد جدید getAuthPasswordName را به implementation اضافه کنید:


public function getAuthPasswordName()
{
return 'password';
}



چه زمان باید از Laravel Shift برای ارتقا نسخه استفاده کرد؟ 


فراموش نکنید چنانچه توسعه دهنده حرفه ای هستید و Client زیادی برای لاراول 11 بهره می برید، باید از Laravel Shift استفاده کنید، زیرا این کار می تواند چالش های زیادی را از پیش رو شما بردارد. بنابراین در ادامه مطالب به مراحل این فناوری نیز اشاره شده است:

  • ابتدا باید با GitHub ،BitBucket وارد GitLab شوید.
  • یک Shift انتخاب کرده و جزئیات Repository را وارد کنید.
  • Pull Request هایی همراه با Atomic commits برای بررسی های بیشتر داشته باشید.
نحوه استفاده از Laravel Shift برا ارتقا لاراول 10 به 11

سخن آخر

از اینکه همراه یکی دیگر از مقاله های آموزشی ما بودید از شما سپاسگزاریم و امیدواریم که توانسته باشیم قدمی در ارتقا سطح حرفه برنامه نویسی شما و در نحوه استفاده از فریم ورک لاراول ایجاد کنیم. هم اکنون می توانید برای انتقال راهنمایی و اشتراک گذاری منابع بیشتر از ارسال کامنت برای ما استفاده کنید.
چقدر این پست مفید بود؟ روی یک ستاره کلیک کنید تا به آن امتیاز دهید!
پست های پیشنهادی
php چیست
متوسط

php چیست و چه استفاده ای دارد: بررسی جامع

مفهوم کامل زبان php و مزیت های آن نسبت به سایر زبان ها!
تیم محتوا
1403/03/02
پیش نیازهای لازم برای طراحی سایت با لاراول
حرفه‌ای

پیش نیازهای لازم برای طراحی سایت با لاراول

بررسی آموزش پیش نیازهای لازم طراحی سایت با لاراول را به طور ...
تیم محتوا
1403/03/21
آموزش نصب npm در لاراول
حرفه‌ای

آموزش نصب npm در لاراول

دد
تیم محتوا
1403/03/23