我正在考慮爲我的公司建立一個代碼庫,以便持有由員工在內部開發並在不同應用程序中及時使用的圖書館,班級等。目的是及時編碼可重用性。我定位的平臺只有.NET - winForms,WPF,WEB,Silverlight等。 我正在考慮構建一個解決方案,該解決方案爲每個技術提供2個項目 - 其中包含代碼,另一個作爲該代碼的測試站點。處理所有這些不同技術和代碼的最佳解決方案是什麼?您如何看待?公司代碼庫
公司代碼庫
回答
這可能比您想象的要困難得多。這在很大程度上取決於你在哪種公司工作,他們從事什麼樣的工作,以及你的雄心壯志。
首先,你可能不想創建一個「框架」。您已經擁有.NET Framework。也許你想同意一套通用的自定義控件。有很多可供選擇的。我強烈建議您不要試圖編寫自己的一套自定義控件,這些控件將在許多項目中重複使用。開發一個連貫一致的自定義控制庫本身就是一項巨大的工作,當您嘗試將其轉移到其他項目時,針對特定項目工作的中途措施失敗了。
我見過一家諮詢公司(主要是爲客戶做自定義的.NET業務應用程序)嘗試重用代碼,而且大多數情況下它並不漂亮。將編寫的代碼寫入並在一個自定義應用程序中運行並將其移動到另一個自定義應用程序比聽起來更困難。很多時候,這個「一般」代碼會對整個應用程序做出假設,或者它依賴於某些特定於應用程序的代碼,並且消除該依賴性非常困難。
現在,如果您處於每個人都在處理處理相同類型數據的程序的環境中,那麼您可以利用一組通用的數據訪問和報告模塊以及一些常用算法。不過,請注意。任何共享代碼都必須具有儘可能少的依賴關係。否則,潛在客戶(即其他程序員)將傾向於自己推出,而不是「包含世界」。
你說你想建立一個代碼庫,它包含「由內部員工開發並在不同應用程序中及時使用的庫,類等」。對我來說,這表示你想在不同的項目之間共享代碼,或者至少需要爲一個項目編寫代碼並在另一個項目中使用它。這是一個值得稱讚的目標,但通常很困難。正如我上面所指出的那樣,編寫適用於單個項目的代碼和編寫可以被多個項目使用並具有最小依賴性的代碼之間存在很大差異。可能,但很難。耗時。
如果您在代碼重用之後,無論最終的UI是WinForms,WPF,Silverlight,WebForms還是其他任何東西,您都應該識別共同性。
例如,如果您有一個計算貸款還款的類,則不希望每種技術都有一個版本。你只需要一個你可以在任何地方使用並傳入請求並獲得結果的dll。
您可能還希望確保您的數據訪問更加以數據爲中心而不是以用戶界面爲中心,例如,確保只有一個「服務」與數據庫表交談,以確保沒有超出「服務」受到表格甚至數據庫的任何更改的影響。
本質上,我的觀點是將您的通用代碼基於不同的垂直切片功能,而不是將其基於顯示信息的最終用戶界面。如果你編寫了很好的代碼,你應該可以把任何UI放在頂層(甚至是頂層的多個UI)。
- 1. 提取一家公司,公司代碼串
- 2. 什麼是小公司的現代源代碼庫?
- 3. 公司數據庫
- 4. NetSuite公司的Restlet錯誤代碼:INVALID_RETURN_DATA_FORMAT
- 5. 石化公司PictureBox的代碼
- 6. Gradle公司的母公司
- 7. WHERE公司=(DISTINCT公司)
- 8. 多個公司倉庫
- 9. 母公司 - 替代邏輯
- 10. JSPM和GIT公司代理
- 11. Appcelerator Studio公司代理
- 12. 數據庫結構來存儲公司 - 分公司 - 員工
- 13. 訪問公司代理後的Nuget官方包源代碼
- 14. 公司範圍內的母公司pom
- 15. 我正試圖將我的代碼推送到公司的存儲庫
- 16. 複製我們的公司TFS源代碼管理在AWS
- 17. 沒有公司的代碼簽名證書
- 18. 英國廣播公司微位掛在代碼
- 19. GUI代碼不能運行 - 從Deitel公司賬面
- 20. 作爲公司而不是個人的iOS代碼簽名
- 21. 保護軟件公司知識產權的方法(代碼)
- 22. 與Cray公司的編譯器編譯OpenACC的Fortran代碼
- 23. SAS正則表達式的代碼從10-K公司文件
- 24. 比賽最長的航空公司代碼前綴
- 25. 將公司名稱轉換爲股票代碼
- 26. 從彭博的股票代碼中查找公司名稱
- 27. JetBrains公司PhpStorm代碼格式化器問題
- 28. 包括英美菸草公司代碼爲VBS
- 29. 獲取Combobox公司代碼的單個值列表
- 30. !航空公司代碼NOT FOUND上SABER ACS_CheckInPassengerRQ
+1很好回答!!! – 2010-09-27 14:37:37