我想大多數開發人員都有多層架構的想法。我們有DAL(數據訪問層),我們有BLL(業務邏輯層),並且在我們擁有用戶界面的路的盡頭。如果你有一個項目遵循這些原則,你是否保留(或至少試着)保留/放置他們在概念上屬於的東西?我特別感興趣的是與其他許多人一起工作的大公司應用程序。顯然,你可以用你的私人玩具項目做任何你想做的事情,發明任何一種建築並堅持下去。大型項目中很多人對軟件或整體混亂做出貢獻並不容易。您是否嚴格遵循項目中各層之間的n層架構和關注點分離?
例如,我碰巧看到像UI組件直接到數據庫的東西,以獲取BL所不提供的一些「缺失的」額外數據,UI和BL都使用低級元素(如表格字段)意見,他們應該將這些操作委託給較低級別的DAL。在與高級開發人員討論這些事情後,我看到他根本沒有發現問題,這讓我感到特別難過。
我們當然可以認爲我和誰共享我的觀點的人都是完美主義者,但我清楚地看到了一個非常不利的後果,因爲我花了很長時間在我的一些任務中追蹤所有「平行「數據傳入和傳出數據庫的路線,並確定誰現在可能受到我實施的新功能的影響。就我看到的情況而言,當有人決定儘快破解並儘快完成任務時,這會增加進一步的開發/維護成本,從而超額節省一些存款。
您的項目是「純粹的」還是放棄了很久以前在圖層之間保持清晰界限的想法?如果你仍然保持正確,那麼你如何處理那些不瞭解這些事情的同事,或者不關心他們只是一直在建立「定製」解決方案和黑客入侵?或者在某個時候,你停止與風車戰鬥,並接受它作爲你的懲罰? 編輯:有點驚訝,沒有多少人對這個問題感興趣。這是最不關心的標誌嗎?
我要說的全部內容都包含在你的第一句話中。 +1 sir – annakata 2009-02-11 10:01:41