2012-12-31 79 views
2

我正在與一組4人一起工作PHP項目。我想知道什麼是開發該項目的最佳方式。與團隊開發PHP的最佳方式?

我們有一個版本控制系統。

我很困惑每個開發人員如何編寫和測試代碼。每個開發者都應該擁有他/她自己的測試環境嗎?測試環境最好是本地的嗎?等等。

感謝

回答

2

每個開發人員應該有自己的機器上自己的本地環境上做開發。一旦開發人員實現了特殊功能,他應該將其提交給版本控制系統。

您應該使用持續集成工具自動構建從版本控制系統到臨時環境的最新代碼。我使用beanstalk進行版本控制和自動部署。

一旦您對暫存環境中的代碼感到滿意,您可以手動將其構建到生產環境中。

這是一個簡單而靈活的系統,適用於4人小組

0

答案完全取決於你的需求。

我通常在小團隊中做的事情是爲每個開發人員提供本地測試環境。更好的辦法是,如果您有一個好的測試服務器的虛擬機映像,可以定期更新並分發給每個開發人員進行測試,以便您的測試與您的生產環境緊密匹配。

+0

像傀儡或廚師這樣的工具非常適合配置一致的開發VM –

+0

@MarkBaker,很高興知道!我以前沒有用過......我會研究它。謝謝。 – Brad

+1

傀儡和廚師可與Vagrant一​​起使用,使開發人員更容易擁有開發人員和生產之間一致的開發環境。 例如,如果您想要升級PHP的版本或添加對新擴展的依賴關係,則不必分發新的VM映像。您只需將puppet/chef配置更改提交到您的版本控制系統。 –

1

兩件建議:

首先,每個人都應該明白組編碼標準。通常,人們在大小寫,下劃線使用和變量命名方面存在差異;當與多人合作項目時,這往往會令人困惑。確保標準化。

每個開發者都應該在他們的本地環境中進行測試。如果測試工作正常,他們會提交詳細說明更改的更改日誌。確保你是否在兩個以上的團隊中工作,每個人都提供詳細的更新日誌。否則,找出哪些修訂改變了什麼是不可能的。

1

這裏是事情的清單在一個團隊中工作時(排名不分先後)記住:

  1. 確保每個開發者都有當地發展相同的環境。

  2. 像git這樣的版本控制系統是必須的。每個成員都應定期推動提交。你不希望有人推動10次提交,只會在別人的本地設置上導致一些合併衝突。

    此外,請確保您有效地使用版本控制。保持master(或任何其他)作爲您的生產分支,始終可部署。在其他分支中工作以獲取其他功能。

  3. 在開始工作之前,請徹底討論應用程序體系結構。你甚至可能想要看看MVC,以便代碼的不同部分是完全分離的,並且工作分工更容易。

  4. 爲您開發的每個功能編寫嚴格的單元測試。 Test-driven development通常是團隊中最有效的開發方法。

  5. 此外,像@Telthien指出的,保持(供參考Github的和Google的)共同的風格指南。這涉及諸如使用空格/製表符縮進,使用下劃線啓動函數名稱,標題 - 套管類名稱等等。

+0

還要考慮一個配置項設置,每次推送到版本控制系統以執行lint檢查,運行單元測試,執行phpdepend和phpmd,使用codesniffer驗證代碼是否符合定義的標準,生成API文檔(以確認所有文檔塊是定義和正確)等等 –