zendAPI 項目開發計劃

由於時間有限,開發在天天的上午6點到9點,晚上9點到12點以及週末,因此項目週期可能比正常的要長一點,個人計劃以下:html

#7月到8月完成對 zend engine 的一些核心數據庫的封裝

這個階段主要針對 zend engine 一些經常使用的數據接口作一些面向對象的封裝,好比用的最多的 HashTable, zendAPI 會爲其提供一個STL風格的迭代器進行數據訪問,常見的 HashTable 的訪問語義接口,方面開發者的平常調用, 避免用到類型不安全的宏調用。數據庫

#8月到9月初步完成函數與面向對象語義這部分接口的封裝

這部分主要讓開發者方便的往 zend engine 掛載本身定義的函數,變量和類等等,將一些平常的參數獲取以及返回值進行標準化,讓書寫自定義函數的時候只關心本身的業務邏輯,讓這部分代碼遠離 zend engine 底層的細節。在面向對象這一塊跟函數的思想也差很少,主要讓開發者建立本身的名稱空間,自定義的類更加的簡明,不用太關心底層一些繁瑣的細節, zendAPI 到時候會提供對 PHP 版本號的兼容,因此對之後的升級,可讓您的擴展最大限度的避免修改。小程序

#9月到10月完成全局資源的統一訪問接口的封裝

PHP 從最開始的時候帶入了一些很很差的全局變量和資源,其實這個並非很好,會讓程序維護性大大下降。可是歷史已經已經沒法改變,咱們只能以一種相對比較安全的方式去使用它,慢慢的淘汰它,在 zendAPI 中咱們將對其提供一些統一的訪問接口。api

#10月到11月完成 zend engine 啓動過程的封裝

擴展是不能脫離 zend engine 而存在的,咱們必須將咱們開發的擴展掛載到 zend engine 內核上去,zend engine 有本身的一套啓動流程,也有本身明確的生命週期的概念並對外提供了不少的鉤子函數和大量的宏去幫組咱們完成這個工做,可是相對來講仍是至關繁瑣和複雜的,而咱們有時候並不必定須要陷入這種細節之中浪費咱們的寶貴的開發時間,因此咱們在 zendAPI 中會對這個過程進行一些封裝,儘可能去以一種面向對象的方式去簡化整個啓動過程。安全

#11月到12月使用手冊與例子文檔的完善

我歷來都認爲,一個好的開源項目,文檔這部分很重要,甚至有時候比項目自己還重要,由於如今你們的節奏都比較快,沒有時間對研究代碼,一個項目若是有好的文檔支持,會大大下降入門門檻,讓更多的人去使用這個項目,才能讓其發揮出價值。若是 zend engine 內核這方面若是作得好的話,估計也沒有咱們這個項目了。zendAPI 的文檔主要在官網上進行提供,共有三個方面函數

  1. 使用手冊
  2. API接口文檔
  3. 開發博客

#12月到2018年1月完善軟件打包發佈流程

由於是暫時就我一我的開發,包括網站的維護,文檔的書寫,因此不少方面很欠缺,到這個階段初版的開發基本結束,我在這個階段基本是完成打包腳本的優化和一些小工具的開發,好比生成項目結構的小程序。規範化版本號與版本發佈流程,針對主流平臺進行測試,提供相應的二進制包(rpm, deb)等等。工具

總的來講,這個對我來講挑戰很是大,不少事情對我來講都是第一次,但願 zendAPI 能順利的跟你們見面,謝謝。測試

相關文章
相關標籤/搜索