PHP 擴充開發檢測清單

來源:互聯網
上載者:User

這篇文章介紹的內容是關於PHP 擴充開發檢測清單,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

想要做出一個成功的 PHP 擴充包,不僅僅是簡單的將代碼放進檔案夾中就可以了,除此之外,還有非常多的因素來決定你的擴充是否優秀。以下清單的內容將有助於完善你的擴充,並且在 PHP 社區中得到更多的重視。

1. 為你的延伸選取一個正確合適的名字

  • 確保你的命名沒有被其他項目使用。

  • 擴充的名字需要和你的 PHP 命名空間保持一致。

  • 不要在你的命名空間中使用自己的姓名或者其他帶有個人色彩的東西。

2. 將你的擴充開源

  • GitHub 可以免費管理這一類公用的項目。

  • GitHub 非常有助於你來管理這個開源項目,並且方便他人擷取你的擴充。

  • 如果你不想使用,可以嘗試替代品: Bitbucket.

3. 對自動載入友好一些

  • 使用 PSR-4 相容的自動載入器命名空間。

  • 請將代碼放在 src 檔案夾裡。

4. 通過 Composer 發布

  • 確保可以通過 Composer 來找到你的類庫, Composer 是PHP的一個依賴管理工具

  • 發布在 Packagist上,Packagist 是一個主要的 Composer 包倉庫。

5. 不局限於架構

  • 不要局限於項目只能使用在一個架構上。

  • 通過服務提供器來給架構提供特殊支援。

6. 遵循一種編碼風格

  • 強烈建議你堅持使用 PSR-2 編碼風格。

  • 使用代碼自動格式化工具,比如 PHP Coding Standards Fixer 。

  • 使用代碼風格偵查工具,比如 PHP Code Sniffer 。

7. 編寫單元測試

  • 覆蓋大部分的代碼。

  • 使用 PHPUnit ,一個常用的 PHP 單元測試架構。

  • 其他可選: phpspec , Behat , atoum , Codeception。

8. 為代碼寫注釋

  • 將注釋當作內建文檔來看待。

  • 代碼注釋也可以改善 IDE 的代碼自動完成功能, 比如 PhpStorm 。

  • 可以自動轉換成 API 文檔, 查看 phpDocumentor 。

9. 使用語義化版本管理

  • 使用 語義化版本號碼 來管理版本號碼。

  • 遵循 主要版本.次版本.補丁版本 規範。

  • 讓開發人員安全的升級軟體,而不用擔心會產生破壞性的改動。

  • 請記得及時給發布版本打上標籤!

10. 保持定期更新日誌

  • 明確標記並展示出版本之間顯著的變化。

  • 考慮遵循 Keep a CHANGELOG 的格式進行編寫。

11. 使用持續整合

  • 使用服務來自動檢查編碼是否標準並且能否通過運行測試。

  • 在多個不同的 PHP 版本都進行運行測試會是個不錯的辦法。

  • 確保提交或者拉取的時候都可以自動運行。

  • 參考:Travis-CI,Scrutinizer, Circle-CI。

12. 編寫大量的使用文檔

  • 一份優秀的文檔對於擴充包來說至關重要。

  • 至少要確保庫中有詳細的 README (自述) 檔案。

  • 可以嘗試在 GitHub Pages 中託管文檔。

  • 可用參考: Read the Docs。

13. 包含一份授權(License)

  • 包含一份授權協議,能夠很有效地保護你的工作成果,並且很容易做到。

  • 參考 choosealicense.com。 大部分PHP 開源項目使用 MIT 協議。

  • 至少要在程式碼程式庫中包含 LICENSE 檔案。

  • 還可以考慮在 Docblocks 中加入你的授權協議。

14. 歡迎大家的貢獻

  • 想要大家輔助改進項目,那一定要多多請求大家的貢獻!

  • 有一份 CONTRIBUTING 檔案,列出貢獻者的名單。

  • 利用這份檔案解釋項目環境要求,例如測試環境。

更多現代化 PHP 知識,請前往 Laravel / PHP 知識社區

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.