讀書筆記 2018 3 7

2022-08-21 04:30:10 字數 1461 閱讀 6420

《構建之法》讀書筆記

雖然因為上課的原因,並未能夠將這本書全部讀完,但讀過的一部分章節也給我留下相當深刻的印象。或者說,將我原來的對於軟工的印象完全顛覆。在選課之前,我本以為軟工就像是和原來的c語言還有資料結構上機實驗一樣,只要隨便寫個程式輸出乙個結果就可以,最多完成乙個類似於陣列運算器之類的大作業就好。但事實卻非如此,正如本書在第一章舉出的例子一樣,原本那些簡單的程式就像是折乙個紙飛機,而我們在這門課中需要學習的,卻是如何去建造一架真正的飛機。雖然可能並不能夠飛的多麼高、多麼快,但卻麻雀雖小五臟俱全,紙飛機即使折的再好,和真正的飛機比起來,二者已經從本質上完全不同了。

書中雖對詳細的開發技術講述不多,僅在第二章和第三章講述了一些必備的個人技能。但對我這樣乙個僅僅學過c語言的來說,幾乎所有的開發語言和軟體使用都要去學習了。好在第一節課上,老師所給的課程安排裡是有乙個月的個人水平提高期的,也會布置一些軟體優化的個人題目,也算是給我一點喘息的時間吧。其次,書中對於軟工學習也提出了一些看法。區別於傳統的理科科目的學習,頭等大事就是對於概念的深度剖析,是那種翻來覆去的一遍一遍講解練習記憶。反而在這門科目的學習上,只需要簡單的了解一下便可以上手了,就像老師上課時說的一句話一樣——「書是用來查的」。可能有點跑題,但也算在這裡給自己立乙個flag吧,爭取在乙個月內,也就是團隊專案正式開始前先了解(並不敢說掌握)一門新語言。

在讀過的幾章中,給我留下深刻印象的,一是乙份關於個人開發流程的綜述,二是對於團隊開發流程的講解。首先是對於個人開發流程的講述,本書將其分為三個部分planning(計畫),development(開發)和report(報告),而我最熟悉也是唯一經歷的過的coding僅僅是development中的一小部分,甚至在書中的統計資料中顯示,對於資深軟體工程師來說,這部分僅僅佔據21%的時間。說來也不是不能理解,就如我在去年的資料結構上機中,乙個huffman tree的程式,我嘗試先在紙上將所有的函式的邏輯關係畫出來,最後實際程式設計的過程的確很輕鬆。比起我剛剛學習c語言時,想讓寫出來的**編譯成功就需要不斷找錯半個小時來說,個人技術水平的確提高了不少。同理,當coding的水平達到一定程度之後,coding只是乙個照本宣科的步驟(前提是你做好之前的一系列工作)。而這一系列工作要做什麼,怎麼做,如何做快,也就是軟工中我們所需要學習的部分了。

而在團隊開發流程的講解部分中,本書則分別介紹了主治醫師、明星、社群等多種模式。其實說到底,個人認為無論是哪種模式,其中最為關鍵的一點就是各司其職,每個都做好自己分內的事情,無論是開發、測試還是程式管理。然而各司其職卻不意味著各自獨立,相互之間的交流同樣是至關重要的。就以書中提出的msf開發模式來說,幾乎每一條都離不開交流,書中第四章,兩人合作就對如何交流進行了深入討論,包括結對程式設計的訓練和**複審的講述,團隊開發,就是將這些任務從兩個人擴充到乙個團隊。看似簡單,但實際中往往會出現一些問題,這也是我們後續的任務中所需要注意到的。

最後,也就是對於我們的團隊專案,個人認為書中提及的漸進式交付開發模式極為適合。一開始先可以將目標僅僅集中於二手書的交易,後續維護中可以逐漸加入其餘二手物品交易、書籍的租借甚至是失物招領。

艾寅中 pb16061489

mysql運維 讀書筆記 Mysql 讀書筆記

mysql儲存時間有兩種型別 datetime和timestamp。分別說一下兩者的區別。datetime,以8位元組儲存時間,理論上可以從0000年儲存到9999年。並且沒有時區的概念,它儲存的就是乙個時間點的概念。timestamp和datetime最主要的不同就是,它是以4個位元組儲存,由19...

struts in action讀書筆記

struts in action 學習筆記 一 struts的控制流 因為web 應用是動態的,所以很難表現 乙個真正固定的控制流 取決於環境,不同的方式下有很多不同的事情發生 特別是在web 應用中。但是事情仍然有乙個通用的秩序。如果你是個struts,應用框架,甚至web 應用的新手,這些流程剛...

中 斷(讀書筆記)

裝置的中斷會打斷核心中程序的正常排程和執行,系統對更高吞吐率的追求勢必要求中斷服務程式盡可能地短小精悍。但是這個良好的願望往往與現實並不吻合。在大多數的系統中,當中斷到來時,要完成的工作往往並不是短小的,它可能要求進行較大量的耗時處理。為了在中斷執行時間盡可能短和中斷處理需要完成大量工作之前找乙個平...