Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Why to choose laravel framework

5,538 views

Published on

為什麼我選擇 Laravel Framework

Published in: Technology

Why to choose laravel framework

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

×