
眾所周知,解決代碼耦合問題的核心原則之一是信息隱藏址晕。即把所有客戶不需要關(guān)心的信息盡力隱藏起來莹妒,只暴露出僅需要被依賴的東西。這樣做不僅可以控制變化...
符號(hào)隱藏與依賴管理是軟件工程中關(guān)乎效率的關(guān)鍵能力。它的核心是“每個(gè)軟件模塊如何在隱藏好自己的同時(shí)算行,還能低成本的精準(zhǔn)獲取依賴”。做好了這件事苫耸,每個(gè)...
一個(gè)項(xiàng)目中州邢,除了非常底層的軟件模塊外,大多數(shù)模塊都需要其它的模塊的協(xié)助才能完成功能褪子,這需要借助模塊之間的依賴管理能力量淌。 依賴管理包含如何控制模塊...
前文談了代碼和庫的符號(hào)隱藏手段。在C/C++中嫌褪,無論我們?nèi)绾螌Ψ?hào)進(jìn)行隱藏呀枢,最后該暴露給客戶的API還是要聲明到頭文件中發(fā)布給別人使用。如何設(shè)計(jì)...
當(dāng)程序規(guī)模變大之后笼痛,人們會(huì)對軟件進(jìn)行模塊劃分裙秋,以便分而治之。有了模塊之后晃痴,就可以將其構(gòu)建成庫(靜態(tài)庫或者動(dòng)態(tài)庫)發(fā)布給別人使用残吩。 前文所述的符號(hào)...
C語言中全局變量和函數(shù)的符號(hào)是默認(rèn)外部可訪問的。 只要我們知道一個(gè)全局變量或者函數(shù)的聲明倘核,我們就可以在當(dāng)前的編譯單元中直接使用它泣侮,即使它定義在另...
由于工作原因,常常會(huì)在各種編程語言技術(shù)棧下切換紧唱。每次切回到C/C++技術(shù)棧下活尊,都會(huì)為C/C++語言缺乏一個(gè)好用的包管理器而不適應(yīng)好一陣。 包管理...
“C makes it easy to shoot yourself in the foot; C++ makes it harder, but...
代碼靜態(tài)分析 代碼靜態(tài)分析是指在不運(yùn)行代碼的情況下根據(jù)代碼的靜態(tài)信息漏益,對代碼的各個(gè)維度進(jìn)行分析蛹锰。 代碼靜態(tài)分析一般包括如下三個(gè)方面: 編碼規(guī)范檢...