軟體的藝術之美源於權衡(Trade off)

2021-04-01 11:48:29 字數 515 閱讀 4365

(1)time or space  時間 vs. 空間

犧牲記憶體換取時間或犧牲時間以節省記憶體是我們常用的伎倆。  

(2)elegancy or efficiency  優雅 vs. 效率

比如,多型很優雅,卻是以效率為代價,而醜陋的函式指標卻正好相反。

(3)fashion or familiarity  不熟悉的新技術 vs. 熟練的舊技術

是採用最新、能提高開發效率卻我們不熟悉的新技術,還是繼續使用我們很熟練的但是開發效率低下的陳舊技術了?

(4)revolution or evolution  革命 vs. 繼承

對於遺留系統,我們是推翻重來,還是在其基礎上進行改良重構並增強了?

(5)under-design or over-design  輕度設計 vs. 過度設計

設計,需要細化到何種程度、需要多長時間?

架構設計的限制始終圍繞了軟體質量的11要素:正確性、可靠性、有效性、完整性、可用性、可維護性、靈活性、可測試性、可移植性、可重用性、可互操作性。

軟體測試的藝術

作為一個應屆本科畢業生,我深知自己的經驗不足,甚至在找工作的過程中才聽說軟體測試這個新名詞,很幸運我有機會做一個軟體測試工程師,也因此我接觸到了 軟體測試的藝術 這本經典的測試書籍。在此書中形象的講述了什麼是軟體測試?軟體測試的分類,以及各個測試階段的特徵,軟體測試的幾種經典的方法,包括邊界值法,等...

軟體產品的藝術之美 老吳說產品

今天要與大家談的是藝術,現在藝術這個詞已經走近了平常百姓家了,家裡有孩子的都知道誰家孩子不學習個舞蹈 畫畫 樂器什麼的,舊時王謝堂前燕,飛入尋常百姓家 生活質量的提高讓大家欣賞美的水平也提高了,80年代的相聲現在聽起來已經索然無味,更多的視覺衝擊和聲音衝擊已經給我們開啟了更多的想像空間,再也不是中國...

《軟體測試的藝術》筆記一

這個程式從一個輸入對話方塊中讀取三個整數值,這三個整數值代表了三角形三條邊的長度。程式顯示提示資訊,指出該三角形是何種三角形 不規則三角形 等腰三角形還是等邊三角形。是否有這樣的測試用例,代表了一個有效的不規則三角形?注意,如1 2 3和2 5 10這樣的測試用例並不能確保 是 的答案,因為具備這樣...

《軟體測試的藝術》學習記錄

軟體測試的藝術 測試是發現錯誤而執行程式的過程 一.端正自己的態度 測試是為了發現錯誤而執行程式。而不是證明軟體不純在錯誤。黑盒測試 資料驅動測試或輸入 輸出驅動測試 不太可能實現,1.經濟學2.邏輯上 窮舉輸入測試 將可能的輸入條件當測試用。白盒測試 邏輯驅動測試 不太可能實現1.邏輯路徑太多2....

讀書筆記 《修改軟體的藝術》

最近讀了 修改軟體的藝術 一書,這本書講述了作者對關於如何寫比較容易維護 的的經驗,並把他們整理成了 9 條實踐方式。它們分別是 這9條實踐可以隨意跳著看,雖然它們有前後順序,但是不按順序看,不影響對他們的理解。總的來說,這本書對有幾年程式設計經驗的人有一定的啟發。裡面有的有些實踐可以在日常編碼的過...