2010-05-01 31 views
3

因此,我與一家創業網站開發公司簽約成爲分包商。他們正在爲需要支持多層次本地化的公司組建一個龐大複雜的用戶/產品管理系統。我簽了3個月的合同,看着他們的代碼,希望我沒有。本地化作爲事後的想法 - 擰緊?

他們選擇編寫他們自己的MVC框架(我猜客戶公司不想使用預先編寫的框架),而且寫得非常糟糕。幾乎所有的模型視圖和控制器都有SQL分佈(沒有基於參數的查找方法,它們都是SQL),他們甚至都沒有對本地化進行思考 - 這對幾乎所有查詢都會產生影響。

截止日期是4個月,我真的認爲我們將取得好的進展,把所有的東西都拿出來,用CakePHP。你們有沒有遇到類似的情況,你做了什麼?

PS:這是用PHP/MySQL編寫的。

回答

2

重寫從零開始幾乎總是錯誤的想法(閱讀喬爾的文章Things You Should Never Do -- Part 1)。但是你必須開始實施小的改變(在你的情況下很大)。越早獲得代碼清理,就越能夠開發...獲得一個理智的數據訪問層,並首先嚐試對特定的MVC進行分類。另外,當你在戰鬥時,開始計劃需要發生的事情,並讓高級黃銅習慣於某些功能可能無法實現的想法。我不知道你的代碼庫,或者大的或者如何凌亂不堪......但如果它真的很糟糕,那麼他們應該準備發運一種產品減去一些功能,而不是一半的解決方案。

對這些問題負責,你(像我們其他人一樣)獲得繼承代碼庫以前所有者罪的樂趣。他們是否有機會延長合同或爲加入的額外工作支付加班費?

0

當你爲某人工作時,你按他們的規則玩耍。我已經在使用Expression Engine的幾個網站上工作過。我討厭它的每一分鐘,我強烈建議每次它與我的客戶談到它時,但除了在完成工作之前仔細研究,你還能做什麼?

隨意提供有關CakePHP的建議,但如果沒有人想聽到它,我會放棄它。快樂,你只有3個月。