天天看點

Symfony2淺析

一.什麼是Symfony

特性: 嚴謹,複雜,靈動的PHP架構

版本差別:

  1. 1.x 05-12(停止維護)
  2. 2.x至今
    1. 遵循PSR-0自動載入
    2. 遵循比較新的web開發最佳實踐
    3. 啟用composer第三方包管理工具
    4. LTS與非LTS
      1. LTS:版本 維護周期比普通版長,适用:企業開發 , 大型項目開發
      2. 非LTS版本:維護周期短(半年及以上),适用:研究項目,個人學習
  3. 為什麼使用它盡行開發
    1. 快速開發健壯,可持續更新
      1. 初期-快速上線
      2. 中期,需求變化,功能優化
      3. 後期不改動代碼的基礎上進行優化
    2. 使開發過程更加關注業務邏輯
      1. 資料庫的設計
      2. 表單驗證
    3. 通過使用更加深入了解冰應用網站開發領域中的最佳實踐
      1. 管理css和js
      2. 戰略部署
      3. 管理模闆
      4. 服務的統一管理
  4. 優勢
    1. 開放性(開源)
    2. 可擴充性(單元模組的集合,composer管理安裝)
    3. 持續更新性(有商業背景和支援性)
    4. 被廣泛使用性(引領PHP領域最佳實踐性)
  5. 性能(速度)
    1. 影響網站的速度有哪些
      1. 靜态化
      2. 緩存
      3. 資料操作合并處理
    2. symfony優勢
      1. 通過Annotation注釋做業面緩存
      2. Annotation可以通過不改變任何程式代碼
      3. 可以對Action進行緩存或通過配置
  6. 如何使用symfony開發網站應用
    1. 第一步上線
      1. 初始化
      2. 環境設定
      3. 部署規則設定
    2. 第二步網站更新
      1. 資料處理
      2. 舊資料轉義
      3. 相容問題
  7. 資料來源
    1. symfony官網
    2. symfony官方IRC頻道
    3. Stackoverflow.com問答社群
    4. github.com/Symfony
  8. 環境搭建
    1. 使用php cli-server搭建簡易開發環境:适用于個人開發者
    2. 使用Vagrant搭建完整開發環境: 适用于需求複雜,運用較多第三方元件或者插件的項目,需要同時開發多個項目的情況下
    3. 搭建共享開發伺服器:适用于多人團隊
  9. 路由
    1. url–請求–程式方法=路由
    2. 配置路由
      1. Annotation:

        允許你在方法的上面用注釋功能定義方法運作狀态的功能

      2. router.yml

        常用的配置格式

      3. router.xml
      4. PHP
    3. 差別

      Annotation路由定義和方法都在注釋裡,開發起來比較友善

    4. URL定義
      1. 靜态URL

        保持url連接配接不變的情況

      2. 動态URL

        url參數會改變例如分頁

  10. 什麼是服務
    1. 程式的架構方式

      作用:把特定的事情的類或方法獨立于目前代碼單獨存在并通過Service進行調用

      SOA:Service Oriented Architecture 面向服務架構

繼續閱讀