2010-12-01 14 views
12

這裏是我們店的設置:將Rails引入PHP商店?或者建立我們已經使用的?

  • 1非常大的PHP應用程序與 許多開發的和大量的基礎設施
  • 多(4-5和成長)小PHP 應用與1-(Kohana中2) 2開發對這些

問題的工作:

  • 沒有檢測
  • 沒有文件
  • 脆弱和繁瑣的部署 過程

我正在從單一的大型應用程序在移動與多個較小的應用程序房子的一側。在我們的商店缺乏測試和適當的部署過程讓我感到緊張,我會花更多的時間修復錯誤和部署修復程序,而不是實際編寫新功能的代碼。

解決方案A:

  • 介紹PHPUnit和Selenium進行
  • 在感動我們Phing和Dbdeploy

問題的答: 設置PHPUnit的已經比較容易,但功能用硒進行測試一直是一種痛苦。我們的虛擬機對dev很有用,但Selenium固定了這個針頭,再加上一些簡單的測試就可以永久使用。我不懷疑我可以讓所有這些技術在一起很好地發揮作用,但這一切似乎都是一團糟,而且這些合作的複雜性似乎很脆弱。

溶液B:

  • 轉爲滑軌
  • 使用集成測試和/或 Rspec的/黃瓜(所述 後者整合似乎簡單)
  • 使用集成DB遷移
  • 使用Capistrano的部署

基於主要問題o f測試,我開始研究Rails。根據我們管理的其他網站的性質,我認爲Rails可能是一個很好的解決方案。內置測試,卓越的社區,許多優秀的工具和快速開發。

問題與B: 每個應用程序我們現在的問題是對的Kohana 2(PHP框架),並沒有一個人在組織中知道的Rails。引入新技術的不利因素會破壞團隊。如果我將這些網站遷移到Rails,那麼我們可能會被公共汽車撞上,我們有點不爽。

底線:

基於我們的痛點(部署,測試,文檔,數據庫遷移),是否值得切換到Rails的成本是多少?或者我們應該留在Kohana,並繼續嘗試建立其他工具?

有什麼建議嗎?任何人經歷過類似的事情?管理層已經告訴我他們很樂意聽到關於Rails的信息,並且只是想盡可能使用最好的工具 - 無論如何。然而,如果我決定在我們的小型項目上切換框架,我們的首席架構師需要一些說服力。

+0

@closers:正因爲你對這個問題沒有什麼可說的,所以並不意味着對於一些被困在類似情況中的人們給出有用的答案,這是太主觀和有爭議的。 – markus 2010-12-01 04:00:51

+6

在我看來,正是這樣的問題使得它不僅僅是一個'sendmetehcodez'論壇。有了這樣的問題,每個人都可以瞭解更高級別的元決策的複雜性等。 – markus 2010-12-01 04:02:37

+0

@closers:如果我需要編輯我的問題,請告訴我。我認爲這是一個非常複雜的決定,我認爲很多其他開發者已經(或將要)會遇到這樣的決定。 – jmccartie 2010-12-01 04:06:48

回答

6

有很多因素會影響你的決定。

如果您切換到rails,請記住,您和您的團隊需要一段時間才能學習框架/語言,並且可能會在一段時間內輕鬆添加功能。這實際上只取決於你的團隊,時間限制和許多其他因素。

也許試試1個帶有rails的小項目,看看你和你的團隊是否真的喜歡rails(我不)。

每個團隊的答案都不一樣。我會召開一次小組會議並討論這兩個決定的優缺點。然後進行投票。

9

我想你可能會得到很多不同的答案,這取決於我們是什麼類型的開發者。我個人認爲你應該堅持PHP,但轉向Kohana 3.然後引入更好的管理和開發技術(文檔,測試等)。只是我的意見,並不是真正的解決方案。

5

移到鐵軌(或任何其他語言)可能會花費你在以下方式中的至少一個不少:

  1. 時間投資。您的整個團隊將不得不學習Rails,同時繼續使用PHP。
  2. 服務器成本。您將不得不爲Rails和PHP單獨設置一組服務器。
  3. 人力成本。你的一些團隊可能不想改變,你將不得不僱用新人。

我的建議是,你看看phpUnderControl並開始評論你的代碼。您不必編寫一堆文檔,但要確保每種方法都有評論。

最後,我完全偏見的意見是,你應該給Kohana 3一試。即使您無法遷移現有的應用程序,也可以爲您節省一些新應用程序的挫折。

相關問題