通讀了下《構建之法》這本書,內容給我一種愉快的閱讀體會,讓人更加的快速去接受裏面的內容,並吸取爲本身所用。而且裏面的內容都舉例生活中的例子,而且在一些容易有疑惑的地方,以問答形式解答,形象生動,語言通熟易懂,令人感受其實軟件工程就在咱們的身邊,並無那麼遙遠。
在閱讀的過程當中有幾個疑問:函數
在第一章中看到一句話:「軟件行業也有一句著名的笑話:這不是缺陷,這是一個功能!(It‘s not a bug,It‘s a feature!)不少人認爲有Bug就是質量不合格,沒有Bug就是完美,真的是這樣嗎?市面上有不少不完美的產品,軟件團隊爲何還要把這些不完美的軟件發佈出來呢?爲何不能等到它們完美以後再發布?」,那麼怎樣肯定一個完美的軟件,怎樣肯定一個產品呢是否能發佈出去呢?軟件的每個版本都是上一個版本的更新,完善,改進。軟件的缺陷是永遠改不完的,正是不斷有用戶使用發現新的缺陷,軟件才能作到不斷完善,產品才越來越好。 那麼軟件工程師如何保證在新的改進上保持著原來軟件的完整性呢?
在第二章中有一段小飛和阿超的對話說到「也許由於他們沒有在一開始就寫單元測試,因此後來有不少問題要處理。不少調查顯示,在軟件開發後期出現的Bug,修復起來要花費更多的時間。」那麼我有一個疑問「是否是每一步只要有新的功能出來就要弄一個單元測試,像C語言中一個單元就指一個函數,Java裏一個單元就指一個類,若是是一個十分龐大的項目,有不少函數,有不少類,它不就須要許多個單元測試,這麼繁雜的工序,有什麼方法能夠提升單元測試的效率嗎?「
在第五章中做者提出了十種軟件團隊的模式,分別是「主治醫師模式」、「明星模式」、「社區模式」、「業餘劇團模式」、「祕密團隊」、「特工團隊」、「交響樂團模式」、「爵士樂模式」、「功能團隊模式」、「官僚模式」。不一樣的模式有不一樣的優缺點,那麼咱們要怎樣知道本身適合哪一種模式呢?一個團隊定下使用一種模式以後能夠隨着狀況的改變而更改模式嗎?仍是從頭至尾貫穿一種模式比較好?
但願我在從此的學習中能慢慢探索出這些問題的答案!單元測試