Yii構架特性
Yii幾乎擁有了當今Web 2.0應用發展的全部特性。下面是這些特性的一個簡短的清單。
模型-檢視-控制器(MVC)設計模式:Yii在WEB程式設計中採用這一成熟的技術從而可以更好的將邏輯層和表現層分開。
資料庫存取物件(DAO)和Active Record:Yii允許開發者模型資料庫中的資料物件,從而減少他們在寫很長和重複的SQL語句上的精力。
與jQuery整合:作為最流行的JavaScript框架之一,jQuery可以編寫高效而靈活的JavaScript介面。
表單輸入和驗證:YII使得收集表單輸入非常容易和安全。 Yii擁有一套確保資料的有效性的驗證器,它也有輔助方法和部件,顯示驗證失敗時的錯誤。
Web 2.0部件:由jQuery的支援,YII配備了一套Web 2.0的部件,如自動完成輸入欄位,TreeView等等。
身份驗證和授權:Yii具有內建的身份驗證支援。它也支援通過分層的基於角色的存取控制(RBAC)的授權。
主題:它能夠瞬間改變一個Yii應用的檢視。
Web服務:Yii支援自動生成複雜的WSDL服務規範和管理Web服務請求處理。
國際化(I18N)和在地化(L10N):Yii支援訊息轉換,日期和時間格式,數位格式和介面在地化。
分層快取方案:Yii支援資料快取,頁面快取,片段快取和動態內容。快取的儲存媒介,可以輕鬆地更改而不觸及應用程式程式碼。
錯誤處理和紀錄檔記錄:錯誤的處理很好的呈現出來,紀錄檔資訊可以分類,過濾並分配到不同的位置。
安全:Yii配備了許多安全的措施,以幫助安全的Web應用程式,以防止網路攻擊。這些措施包括跨站點指令碼(XSS)預防,跨站點請求偽造(CSRF)預防,Cookie篡改預防等。
符合XHTML:Yii的元件和命令列工具生成的程式碼符合XHTML標準。
自動程式碼生成:Yii提供了可以自動生成的程式碼的工具,根據你的需要,例如生成一個程式骨架,CRUD應用等等。
完全物件導向:Yii框架堅持嚴格的物件導向程式設計正規化。它沒有定義任何全域性函式或變數。而且,它定義的類層次結構允許最大的可重用性和客製化。
友好的使用第三方程式碼:Yii精心設計讓它第三方程式碼非常好的工作。例如,你可以在你的Yii應用程式中使用PEAR或Zend Framework的程式碼。
詳細的文件:每一個單一的方法或屬性都非常清楚的記錄著。同時提供了一個全面的教學和一些新手教學。
擴充套件庫:Yii提供了一個組成使用者提供元件的一個擴充套件庫,這使得上述功能列表是永無止境的。