PHP 架構 CodeIgniter 4 新版開發路線圖是什嗎?

來源:互聯網
上載者:User
隨著 PHP 社區的日趨成熟和 PHP 7 正式發布以來,CodeIgniter 這個很多人喜愛的架構,也到了需要進行大變革的時刻了。今天為大家帶來一篇介紹下一代架構 - CodeIgniter 4 的文章。

預告一下,接下來將會繼續刊登詳細介紹 CodeIgniter 4 的文章,希望新一代的架構能給大家帶來不一樣的開發體驗。

PS: 截止目前 CI4 正在開發中,尚未發布。

回複內容:

CodeIgniter 4 建議路線圖

作者: Lonnie Ezell (CI 理事會成員)
翻譯: Hex
原文: CodeIgniter 4 Proposed Roadmap
原文發表於 2015 年 8 月 5 日,截止目前 CI 4 正在開發中,尚未發布

******************* 分割線 *******************

我們綜合考慮了社區的願望和意見後,也對什麼樣的未來對 CI 是最合適的做了一些思考,然後,CI 理事會對架構的未來做出了一些決策。預告一下,未來將會有重大變化,但我們相信他們不僅為我們的未來做準備,也會保持 CodeIgniter 的一貫特點 - 簡潔、快速和靈活。


這篇文章是對未來的一個簡單概述。請記住,這僅僅是最初的計劃。任何資訊都可能會隨著開發的進行而發生變化。


核心變化

從 CodeIgniter 第一版發布以來,PHP 社區發生了巨大變化。CodeIgniter 的許多核心要素在當時是必須的,但當 PHP5 發布後,CodeIgniter 的核心幾乎沒有任何變化。如果未來 CodeIgniter 想要繼續保持高水準並鞏固其在 PHP 架構中的地位,則必須進行大改變。


這意味著系統必須全部重寫。新的 CI 將在獨立的程式碼程式庫中開發以保持代碼的清晰。我們設想會複用一些以前的代碼,但重點是現代的清晰的代碼。


自從我們以 PHP 7 為目標以來,PHP 5.6 已進入安全維護模式,並將在幾個月後完全停止支援。CI 暫時不會為一個即將停止支援的 PHP 版本發布新版本。我們知道主機的環境千差萬別,那麼一些程式可能就無法完全支援 PHP 7,所以 3.x 分支將繼續維護一段時間 - 將遠遠長於 3.x 發布後的 2.x 分支的 EOL 時限。


application 和 system 目錄都將支援 PSR-4 自動載入。CodeIgniter 將使用自己的自動載入器,並將會整合 Composer。


我們將封裝一些組件,以便在大多數情況下可以用於 CodeIgniter 以外的項目。


包/模組

我們將丟棄應用程式套件組合和模組的概念。不必驚慌!因為你可以用名字空間來處理大多數情況 - 至少控制器和模型是這樣的。對於其他的例如視圖、設定檔和 Helper 等,我們相信可以讓這些東東支援名字空間。你也可以把所有包的功能和模組的路由能力放到任意目錄中,只需告訴自動載入器如何找到他們。


路由

路由功能將被更新。URI 直接映射到控制器/方法這個『魔術路由』功能將可關閉,以便讓你選擇自己喜歡的路由方式。在路由設定檔中你可以選擇使用『魔術路由』或者單獨指定每個路由。


改進的日誌系統

日誌系統將被改進,但具體細節尚未確定。


測試

我們將繼續使用 PHPUnit 做測試。這也意味著你需要自己測試應用程式,但我們將為你準備好所需的工具。


向後相容性

正如上面講到的那樣,這一定是一個和老版本不相容的版本。我們認為這應該是架構最好的未來。對於這次的重大變化,我們已經做了很多年的基礎工作,我們將儘可能的使過渡更平滑,但是對於我們能提供一個怎樣的現代化的基礎代碼仍有待觀察。


我們將盡最大努力保持讓 CodeIgniter 多年來流行的特性,即快速、簡潔和『優雅』。


開發時間表

整個開發過程將分為三個階段。


下列類庫將從核心刪除,改為按需下載:排版類、FTP 類、ZIP 類和 XML-RPC 類。


購物車類、Javascript 類、單元測試類和 Trackback 類將被刪除。


我們期望在一年內能完成一個核心基本成型的 Alpha 版本。之後,我們將把重點放在改進核心與開發剩餘軟體包的工作中。確切的時間表可能會有所不同,因為,與大多數開源項目一樣,這取決於社區貢獻的數量與品質,以及核心開發人員的時間和精力。


第一階段

第一階段將側重於抓住架構最重要的部分。這將是架構其他部分的基礎。他們包括:


  • 自動載入器
  • 依賴注入
  • 日誌
  • 異常處理
  • HTTP 要求/應答層(或輸入/輸出)
  • 路由
  • 控制器
  • 模型
  • 資料庫層
  • 配置
  • 安全

第二階段

第二階段的重點是完善一些 CodeIgniter 使用者喜聞樂見的類和特性。他們包括:


  • Helper
  • 語言/國際化特性
  • 緩衝
  • Email
  • 加密
  • 表單驗證
  • 影像處理類庫
  • 分頁
  • 上傳類
  • Session
  • 視圖
  • 調試和分析工具

第三階段 - 可選類庫

第三階段將主要用來擴充可選軟體包。在這個時間點,架構應該發行就緒了,不需要等到所有類庫都準備就緒。


  • FTP
  • XML-RPC
  • Zip
  • 排版類
  • 模板解析器

架構迎來了新的機遇使我們很興奮,並迫不及待的希望架構為新版邁出第一步。不要在一旁圍觀了,趕快來構築架構的未來吧。


******************* 分割線 *******************


關注 CodeIgniter 中國公眾號,搶先閱讀 CodeIgniter 4 最新文章。

Hex 作為中文社區的領路人,我看在眼裡,辛苦了。
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.