2010-04-24 43 views
1

有很多編碼MVC Web應用程序的框架。編碼php庫的框架?

這次我要用一堆類文件編碼一個庫(想一想Doctrine或Solr)。你只需包含一個引導程序或一個類文件,你就可以使用我的類了。

我從來沒有試過編寫一個庫,並打算編寫一個用於學習的目的,以便我可以使用我學到的各種設計模式。

是否有任何偉大的框架,我應該如何組織不同的類文件,我可以把配置文件等?

教程或其他信息也會很好。

感謝

更新:它只是一般,沒有一些具體的事情。即時通訊想知道是否有一個「模式」就像Web應用程序(MVC):它應該是一個文件,他包括和該文件將包括所有其他類文件?它應該是他包含的類文件還是所謂的引導文件?總之,我需要知道如何編碼一個庫,以便每個開發人員都可以使用它的開源方式。

+0

有關您的圖書館功能的更多信息將對asjie有所幫助。 – BenTheDesigner 2010-04-24 19:37:50

+0

我更新了我的文章。 – 2010-04-24 19:41:38

回答

2

圖書館代碼涵蓋了很多不同的領域,很難想象圖書館發展的一般框架。

一般來說,你應該努力創造一個庫,(除其他事項外):

  • 一致 - 磁帶庫的API應該儘量保持一致。例如:你是否將標準參數列表傳遞給構造函數,或者是一個包含名稱/值對的$ config數組?如果您偏愛工廠方法,請在整個庫中一致地實施它們。

  • 高效 - 避免加載不需要的類。弄清楚如何管理依賴關係 - 不要只從一些中央引導腳本加載每個類。考慮一下PEAR或Zend Framework使用的目錄結構。這可以幫助您與用戶可能已經使用的各種自動加載器集成。

  • 可測試 - 一個包含好測試的庫比沒有測試更有價值。

  • 記錄 - 使用PHPDocumentor獲得舒適感,並準備編寫額外的文檔,這些文檔在示例客戶端代碼上很重要。

+0

有關於如何創建一個庫的好教程? – 2010-04-25 17:53:29

2

沒有通用的庫框架。如果您正在開發其他軟件,您會找到插件API或類似的插件。在這種情況下,使用它們。否則,就圖書館應該如何工作沒有任何假設,因此除了編程語言外,沒有任何框架可以用來存放它。

儘管包含所有其他基本文件,但所有庫都有引導程序。其他類和文件可能通過註冊的自動加載器加載。