2011-08-02 27 views
1

我的工作幾乎完全是爲我的前任構建的遺留系統添加新功能。如何判斷升級代碼的位置

新功能都不是太大的問題,我可以複製粘貼從系統的一些編碼器和知道足夠知道如何使用它。

我的問題是565班我從來不知道我的新功能應該去,它應該繼承。沒有關於架構的文檔,到目前爲止,我不得不閱讀和閱讀源代碼,直到我可以跟蹤函數調用並找到放置我的代碼的合適位置。

讀到這裏的視線,很明顯,我認爲別人人民這樣的代碼工作是程序員的必要的技能,所以應該有一些專業的技術,我應該好好學習。

升級其他程序員代碼時有什麼提示和技巧?

該程序是一個服務器與數據庫,一個網站的圖形用戶界面。

+3

我會咬緊牙關,告訴老闆你需要花一週的時間記錄這個男人的工作。告訴老闆,如果你有一個很好的參考源代碼,它會讓你和每個追隨你的人都成爲生產力的兩倍。 – Patrick87

+0

@ Patrick87這是我的第一份編程工作,我只是實習生哈哈。一直在試圖記錄它,但我只是走出了我的聯盟:( – Skeith

+0

)如果你無法坐下來,並且在有限的時間內能夠理解到底發生了什麼,課程,方法,他們做什麼以及他們是如何相關的......你如何建議做比狩獵,啄食和獲得幸運更好的東西? – Patrick87

回答

1

與其他程序員討論代碼庫通常很有幫助。幸運的是,他們可能仍然與原始開發者保持聯繫。

儘可能多的文件;寫下你學到的知識將會幫助你記住它,並且這將有助於將來的參考 - 對你和其他開發者都是如此。

一件事時,用一個新的代碼庫面對我有時做的是畫的我找到的東西簡單的UML圖。我親自動手做這件事,因爲手工操作可以幫助我更好地理解事情。沒有必要做出完美正確的UML或者繪製一切圖表;只是畫出你試圖理解的東西,看看它是否有助於你理解正在發生的事情。 (當然,如果你決定使文件的這些圖的一部分,你應該確保他們也不含糊)

希望這有助於。祝你的項目好運!

0

三件事情應該幫助您決定應該進行哪些更改。

  • 設計良好的代碼應該清楚更改的位置(或至少需要更改的內容)。
  • 經驗。體驗編程將有助於選擇需要改變的部分。
  • 熟悉。即使代碼量很大,您也會熟悉代碼並知道下一次更改應該到哪裏(或者至少知道從哪裏開始尋找)。
+0

正在尋找更多我現在可以申請的東西。是不是一個真正的技術是它:) – Skeith

1

使用某種可視化工具來找出你有什麼樣的依賴模型。然後開始將變化添加到副作用最小的地方。記錄您添加它的位置以及原因。編寫單元測試和功能測試。然後要求檢查你的工作。然後,您可以慢慢開始宣傳和取消重複您的代碼。一些開發環境將幫助您查找代碼重複。重複會給你提示代碼應該放在哪裏。

如果使用Spring或某個DI框架,請查看組合模型。也許你需要將你的代碼和一些其他代碼提取到一個命名清晰的組件中。