昨天優化API讓我們在錯誤的經驗中不斷的學習,但也因為這些經驗,可能讓我們猶豫不敢前進,這會是內心一個很大的阻力,但也是自然的保護機制!
今天會有更大的改變,建議在嘗試練習的專案中可以嘗試,或是測試環境上測試,若用於正式上線的系統,請深思熟慮!並做好備份的動作~
系統要越來越好的關鍵條件
- 足夠量的測試覆蓋率(核心為主的程式碼測試,例如:對Service的測試)
- 安全性的更新(現在的系統,功能越來越大,撰寫的過程,時常都會用到套件!使用Laravel 框架也是,每個版本都會有安全漏洞維護的期限,為了系統安全建議更新,但更新後肯定會有一些錯誤產生,確保無誤一定要有測試程式保護)
- 良好的撰寫習慣,符合規定的Coding Style
- 確認官方升級文件的項目,在目前系統可能影響到的地方,手動確認程式無誤!
- 在測試環境升級確認無誤,再運用在線上系統,升級前一定要備份
事前準備
推薦可以去看 Laravel 的 GitHub 查看版本之間的差異比較兩個版本分支的改變紀錄 https://github.com/laravel/laravel/compare/5.8...master 並且嘗試一一的去修改,盡可能跟最新版相同!
或者是參考官方升級手冊就好!官方文件有把最主要的變更列出來! https://laravel.com/docs/6.x/upgrade
開始升級Laravel
這邊的範例是由 5.8 -> 6.0
- 確認 PHP 版本 一定要 7.2 以上 ,因為7.1版本將於 2019年12月停止維護。利用
php -v
查詢看看
- 修改
composer.json
修改"laravel/framework": "6.0.*"
- 確認一下安裝的第三方套件!
- 一定要確認你安裝的第三方套件支不支援 Laravel 6
- 下指令
composer update
更新套件!
確認一下
- 重啟伺服器看看網站畫面還在不在
- 跑測試程式看看是否有誤!
- 確認官方的更新文件,思考哪些地方可能會被影響到
最後
因為每個人的系統狀態不一樣!但遵守以上的原則,還有一些預防措施!我相信升級花的時間,肯定值得!(系統還會持續賺大錢的條件下!)
這系列鐵人賽今天倒數第三天,明天預計把最後一個部分撰寫 API文件 介紹給大家,最後一天幫大家整理一下重點!
明天雙十節!預祝大家雙十連假快樂!