Think HY 讀《觀止-微軟》一書有感
8月中旬在豆瓣上有一本書吸引了我,這本書便是< > ,英文名<
與前幾年技術專家李維寫的<
書中的主人翁是David Cutler ,加入微軟之前,此公就職於DEC,設計了大名鼎鼎的VMS系統,因為在DEC的"稜鏡"取消了,一怒之下出走DEC,而被蓋茨慧眼識中收入麾下。 David Cutler加入微軟之後一直在考慮著設計一款全面超越那幫博士們設計的Unix,而當時蓋茨剛從Windows作業系統中嚐到了甜頭,雄心勃勃的正準備打造一款為21世界準備的作業系統 ,於是,兩個人為了這個共同的理想開啟了NT專案。
Culter最初為NT核心的設計制定了三個目標: 1 可移植性:創造出一個可以適合每一種硬體的作業系統。2 可靠性: 用“防彈”系統來結束不必要的崩潰。3 個性化:NT應該靈活十足,它將擁有不止一種使用者介面。面對可移植性的問題,Cutler決定用高階語言來實現NT系統,這意味著NT會很大,是的,最終釋出的NT版本是很大,但硬體行業的飛速發展幫了NT的忙。而對於可靠性和個性化的問題,Cutler大膽的在NT中採用了微核心設計方式,可這要付出速度的代價,Cutler和他的團隊最終用高超的程式設計技巧彌補了速度的不充。
90年,微軟與IBM在OS/2專案上分道揚鑣,OS/2專案的人馬加入到Cutler的團隊,微軟決定讓支援更美觀的介面和更好的易用性的 Windows與追求可移植性、可靠性的NT核心合流, 這次合流讓微軟能集中精力打造Windows NT這款改變世界的作業系統。
本書後面三章寫得比較草率,作者囉嗦著BUG的更改過程和團隊成員心理狀態,沒有站在更高的角度分析軟體工程的得與失,也沒有全面的介紹Windows NT對軟體業的影響,這樣的內容可能只能在布魯克斯 的< >找到,對文科背景的作 者勉為其難。
總的來說,這是本不錯的書,NT系統釋出一年,作者能將這項複雜的工程活動描述得如此傳神,實屬不易。感謝Pascal和中文版的譯者將本書帶給我們,讓我們能重歷那無比艱辛而又激昂的NT建立過程。
微軟的張亞勤博士評價此書:
“合上這本書的時候你會發現,軟體不僅是智慧的結晶,也是信仰、尊嚴和魅力的代名詞。“
而我,作為一個剛進入軟體行業的新人,從此書中看到的是軟體開發過程的複雜、艱辛和瘋狂,正如書中所述,研發軟體的過程是世界上最複雜的智力活動,而正是那些複雜才成就了Cutler們的偉大,我們應該向偉大的程式設計師致敬。
在軟體開發方面的,這本書帶給我以下幾點思考:
1. 吃你自己的狗糧 eating your own dog food,只有通過吃狗糧,創作者才能發現由軟體系統各個部分相互作用產生的問題。這一點與Unix的成功原因相似,The UNIX Time- Sharing System一文中曾提到Unix的開發者同是也是Unix系統的使用者,所以他們會不斷的改進系統。
2. 構建與測試的重要性,Cutler甚至親自駐紮在構建實驗室,這兩個環節決定了系統的最終質量。
3. 編碼質量、可讀性的重要性。 Cutler的程式碼風格,一行程式碼一行註釋,在Google Code上搜尋David Culter的大名可以欣賞到他寫的程式碼(發現他老人家60歲時還在編碼)。
4. 團隊的重要性。 Cutler在DEC組建了他的核心團隊,這些團隊成員性格各異,有著不同的專長。 NT每每到最關鍵的時候,Cutler的團隊總能有人挺身而出。
5. 市場因素是軟體專案成功的內因,技術頂天,市場立地。NT的經理穆格利亞反覆強調的是
“計算機軟體儘管一定是由程式設計師構思和創造出來的,但一定要反映當前的市場狀況和客戶需求“。
6. 偉大的工程作品總是來自偉大的公司,一來大公司牛人多,二來大工程專案要耗費大量人力、財力,非一般機構所能承受。
-------------------------
本文來自CSDN部落格,轉載請標明出處:http://blog.csdn.net/hzbooks/archive/2009/10/16/4679722.aspx
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15783504/viewspace-623583/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 讀《HTTP小書》有感HTTP
- 讀《大道至易:實踐者的思想》一書有感
- 書並不重要 -- 讀《黑客與畫家》有感黑客
- 讀《程式碼大全》有感
- 讀《大道至簡》有感
- 漫步人生路之Python旅途(一)探觀止矣Python
- 讀書筆記#五導家-設計觀筆記
- 【讀程式碼重構有感】
- 讀《Node Web開發》有感Web
- 《觀止--微軟建立NT和未來的奪命狂奔》第1章程式碼勇士(3)微軟
- 觀咆哮有感——系統升級的疼薦
- 讀 《HTML5 揭祕》有感HTML
- 讀《流暢的Python》有感Python
- 《如何有效閱讀一本書》讀書筆記筆記
- 閱讀React16原始碼有感React原始碼
- 讀《NoSQL精粹》前三章有感SQL
- 讀 do_while_true 退役記有感While
- 世界讀書日 | 機器學習必讀書籍一覽表(附閱讀地址)機器學習
- PMBook讀書筆記(一)筆記
- 讀書筆記之一筆記
- 《如何閱讀一本書》讀書筆記完整版筆記
- 《DON'T MAKE ME THINK》/《點石成金訪客至上的網頁設計祕笈》 讀書筆記網頁筆記
- 讀雷博部落格有感——加油程式猿
- 讀《許式偉的架構課》有感架構
- 讀《mysql是怎樣執行的》有感MySql
- 讀《大資料時代》開頭部分有感大資料
- 圖靈讀者群線上辯論有感圖靈
- 讀《程式設計人生》有感:如何學習一門新的語言程式設計
- 《軟體工程》第一週作業,閱讀別人部落格有感軟體工程
- 我為什麼把think in java 讀了10遍(轉載)Java
- 易觀分析&噹噹網:讀書破萬“卷” | 國民閱讀洞察2022
- TIJ讀書筆記(一) (轉)筆記
- 微軟今天公告將正式對Windows Vista終止一切支援微軟Windows
- [譯] 三個歎為觀止的ES6 Array hack
- 管理是什麼?——讀《管理的實踐》有感
- 讀 《CSharp Coding Guidelines》有感CSharpGUIIDE
- 讀《程式設計師的思維修煉》有感程式設計師
- 《Web應用安全權威指南》讀後有感Web