2011-07-19 58 views
0

我有一個巨大的應用在這裏被稱爲HugeApp,它需要不同的庫(我已經編碼)和一些庫可能需要依賴(來自Internet的其他庫或特設的lib這裏developped )。不依賴建館

我想知道,如果這是可行的和/或一個好主意隱藏一些HugeApp這些依賴關係。

比方說,你讓一個庫負責在系統上進行加密通信,頂層應用程序是否關心和/或需要知道這個部分(comms)需要一些加密庫系統?這可能是實現特定的...或不...

謝謝

回答

0

有沒有必要爲它知道,如果你建立這些庫外部的DLL那麼外部庫是關心的唯一的事情依賴關係。如果添加一個參考預先建立的DLL然後HugeApp並不需要了解庫的依賴關係(只要他們是在圖書館或相應的DLL或LIB文件或者目前存在讓你的DLL可以利用它)。如果有什麼你的庫可完全是另一個項目,你可以包括對參考在這種情況下,你的HugeApp的項目只在乎這些主要參考和其他項目將處理一切。在連接優化它REF你會列出哪些(如果有的話)沒有在鏈接時由項目使用功能或數據庫:

+0

我不能使用DLL的這個特定的應用程序,規格告訴我們,我們需要有靜態庫。 – ALOToverflow

+0

然後您可以將庫乾脆轉移到另一個項目,包括從HugeApp該項目的引用。只要確保項目選項包含靜態庫和靜態庫的預編譯頭。 –

0

如果啓用/ OPT。然後,您可以將它們從項目設置中的依賴項列表和鏈接行中刪除。這將減少刪除靜態庫的可能性,該靜態庫是VS解決方案中存在/使用的靜態庫的依賴關係。