2009-01-26 68 views
2

這裏工作中我們有一個非常大的應用程序和多個子應用程序。 (500名+的dll)構建/維護/部署大型應用程序

作爲開發商這是非常令人沮喪,所有這些DLL和相關工作。您創建一個新項目並添加5個以上的dll以使系統的核心部分可以工作(記錄,審計,安全,消息傳遞等)。我們添加的每個新的子應用程序,我們都會創建一個Web項目,一個業務層,一個數據層以及其他需要在3之間共享對象的項目,因此我們的列表不斷擴展。

我的問題是管理這個最好的方法是什麼?我似乎無法想象什麼是最好的......模塊化方法似乎對於重用性和熱補丁項目而言都很好,而無需爲一個應用程序取下系統。但管理500個DLL的頭痛是一場噩夢。

每個子系統是否真的需要3-4個項目,並參考其他5個核心項目?

什麼是管理大型項目保持管理/開發和部署記其他的方式?

+0

這並不回答你的問題,但它隱約相關。而且 - 我感到你的痛苦。 http://stackoverflow.com/questions/152053/structuring-projects-dependencies-of-large-winforms-applications-in-c – Benjol 2009-09-29 09:04:11

回答

1

我有一個在所有類型的項目命名規則(目前我在250+的dll項目的工作)非常不錯的體驗。 如果您(或任何其他人)選擇了良好的命名約定,您首先會看到「它」是什麼,您知道如何命名是您需要的。

不要擔心項目中引用的數量。如果你每次都添加X引用感到沮喪,你可以創建一個宏來代替你。或者您可以根據您的特殊要求創建模板VS解決方案/項目/項目(文件)。

大的項目規模大,所以它不會感到驚訝,如果你必須使用大量的DLL,類等等的工作......

-1

這是一個持續的爭鬥。我們的系統有大約100個不同的項目:主要是C#,以及一些用於低級別的C++項目。如果我們添加一個新的C#項目,我們必須添加對其他六個項目的引用,以獲得基本功能。

在你的例子中,你會說每個子應用程序都會創建三個或更多的項目(web項目,業務層,數據層等)。儘管我們創建了這些圖層,但我們儘可能地嘗試將它們保留在同一個項目,專門避免添加不必要的項目。我們不會將子應用程序分解到不同的項目中,除非它將分散在多個進程中,或者我們知道整個系統的其他部分需要與該子系統進行通信。

很可能每個子系統確實需要引用核心部分。它是否需要3-4個項目取決於你如何構建它。我們發現,將新項目創建限制爲與其他項目進行通信或被多個子系統使用的項目已大大減少了我們必須應對的項目數量。

+0

如果你不把圖層分解成不同的項目,你怎麼知道你不是無意中創建了循環引用,從而摧毀了在需要時將它們分開的能力? – 2009-01-26 20:43:30

相關問題