Why to choose laravel framework
-
Upload
bo-yi-wu -
Category
Technology
-
view
3.880 -
download
1
Transcript of Why to choose laravel framework
為什麼選擇 Laravel Framework
2016.03.03Bo-Yi Wu
關於我• Blog: https://blog.wu-boy.com/• Github: https://github.com/appleboy
PHP 這麼多套 Framework為什麼要選 Laravel
http://www.sitepoint.com/best-php-framework-2015-sitepoint-survey-results/
The Most Popular Framework of 2015
選框架就要看作者是誰
Laravel Framework
• 目前由 Taylor Otwell 負責開發及維護– 5.1 開始支援 LTS Release
• bug fixes are provided for 2 years
• security fixes are provided for 3 years
Open Source 最怕的就是後續無人維護
對於 Laravel Framework開發者不用擔心後續維護問題
PHP 有無套件管理系統
所有第三方套件都用 composer 來管理https://getcomposer.org
團隊 Coding Style 制定
2014/02/22 Apple iOS bugsgoto fail;低級 bugs
https://www.imperialviolet.org/2014/02/22/applebug.html
專案遵守 PHP-FIG 規範http://www.php-fig.org
PHP-FIG
• 建議開發前請先閱讀底下規範– Basic Coding Standard (PSR-1)– Coding Style Guide (PSR-2)– Autoloading Standard (PSR-4)
良好的 Coding Style可以讓同事減少 Review 時間
開發環境流程每次開發新專案前,都要浪費很多時間在建置環境
MySQL, Nginx, Redis, PHP, Node … 前端 , 後端都有
還有 OS 環境要解決Linux, Windows, MacOSX還沒處理完一天時間就過了
Laravel Homestead不用在個人電腦架設任何環境
Laravel Homestead• Ubuntu 14.04• Git• PHP 7.0• HHVM• Nginx• MySQL• Sqlite3
• Postgres• Composer• Node (With PM2, Bower,
Grunt, and Gulp)• Redis• Memcached• Beanstalkd
https://laravel.com/docs/5.2/homestead
Laravel Routing
• 所有 Routing Path 寫到同一檔案 ( 方便偵錯 )– CSRF Protection– Route Groups– Route Model Binding
Laravel ServiceLaravel 提供完整的第三方服務
Laravel Service• Authentication ( 帳號登入 )• Authorization ( 權限管理 )• Artisan Console ( 專案 command line tool)• Cache (Memcached and Redis)• Localization ( 多國語言 )• Mail (SMTP, Mailgun, Mandrill, Amazon SES)• Pagination ( 分頁管理 )
Laravel Service• Queues (database, Beanstalkd,
Amazon SQS, Redis, and synchronous (for local use) driver)
• Task Scheduling ( 排程管理 )• Testing ( 後端邏輯測試 )• Validation ( 資料驗證 )
Laravel Elixir前端與後端互相合作的好工具
Laravel Elixir
• Less, Sass, PostCSS, Plain CSS• Coffee Script, Browserify, Babel, Scripts• Versioning / Cache Busting• BrowserSync
Database Migration$ php artisan make:migration create_users_table
$ php artisan migrate$ php artisan migrate:rollback
Database Migration
• 不用寫任何 SQL 語法• 用日期記錄 SQL 操作• 不用管 DataBase 為 MySQL,
Postgres, MSSQL …
Laravel ORMsimple ActiveRecord implementation
for working with your database
Eloquent ORM
• 好用的 ORM 減少開發者寫 SQL 時間– One to One– One to Many–Many to Many
學習資源• 線上影音教學網站 : https://laracasts.com• 台灣線上文件 : https://laravel.tw/• 台灣 FB 討論區 : https://goo.gl/UwRLGu• 社群整理文件 : http://bit.ly/laraveltw-
resource