
章淼
本書是作者圍繞軟件工程能力所做的系列培訓的內容彙編。這些內容來源於作者20 多年以來對軟件工程的學習體會和項目實踐,以及對中國工業界軟件工程師的觀察和教育實踐。 全書共8 章,第1 章說明了什麼是軟件工程能力,闡述了軟件工程能力中的素質要求。第2~8 章分別從代碼、文檔、項目管理這三個方面講解了提升軟件工程能力素質的實踐方法。 對於代碼,第2 章"代碼的藝術”對其進行了總體說明,第3 章重點說明了代碼評審,第4 章以Mini-spider 爲例說明了方法如何運用。 對於文檔,第5 章說明了如何寫好項目文檔,第6 章說明了做研究的基本方法。對於項目管理,第7 章簡要說明了如何做好項目管理,第8章重點說明了如何做好項目溝通。
本書的前幾章,包括幾篇推薦序尤其精彩,建議精讀。正如《CLean Code》用大量的大師名言闡述什麼是好代碼,本書用七篇推薦序討論工程師文化。這非常必要,軟件在中國經過幾十年的野蠻生長,到了需要做沉澱的時候了。 “科學和藝術總在山頂重逢”,這就是章老師試圖傳遞的境界吧。說到這點了,btw:@章老師真的無需和張老師辯論,我所看過的那些經典,無一例外都會談經歷,談理想,談感悟。 對於管理者,看完至少能明白怎麼區分碼農加班是真心還是被迫。其實《湯姆·索亞歷險記》裏那個孩子已經講的明明白白:“如果不是出於自己內心所願,而是被迫要做的事情,就成爲一種“工作”;而隨心而樂的事,則是一種娛樂。” 對於碼農,看完至少能明白自己的方向在哪,而不是每天庸庸碌碌,否則隨着時間的推移,工作了十個一年的人會發現“在我們經歷了很多問題之後,可能會發現自己從未深刻理解問題,沒有深入思考,沒有沉澱經驗,沒有獲得成長。”//來自《性能之巔:洞悉系統、企業與雲計算》 而如果不是胸懷着藝術的激情,亨德爾無法在中風後奇蹟般地復活,譜寫出《彌賽亞》。
以下爲我在2022年底爲兩本書平裝版出版新寫的序言。希望能夠對大家有幫助。 《代碼的藝術》(平裝版)& 《軟件開發的201個原則(中譯本)》(平裝版) 序 2021年10月,《軟件開發的201個原則》(中譯本)正式出版,距今已是一年。距離2022年3月《代碼的藝術》的出版,也已經超過半年時間。 《201個原則》原書出版於1995年。《代碼的藝術》雖然和《201個原則》出版相隔近30年,但是兩本書的目的是相同的:做好教育,提升軟件工程師的水平。 軟件是人類智慧的結晶,軟件的水平取決於軟件工程師的水平。在提升軟件水平方面,雖然可以優化軟件研發過程和軟件研發工具,但是起決定性作用的仍然是軟件工程師的水平。 軟件研發之難,不僅僅在於編程語言和算法,更在於它綜合了科學、技術、工程、人文等多學科的知識、方法和意識。理解和掌握軟件研發的方法,不僅僅需要理論的學習,也需要實踐的鍛鍊,需要不斷的重複“學習、思考、實踐”的閉環。而軟件研發的根本目的,並不是構造出一個複雜的軟件以自娛或炫技,而是“爲人而服務”。脫離開“以人爲本”的思想,軟件的研發會步入歧途,軟件工程師自己也不會獲得快樂。 軟件工程師學習軟件研發的方法,需要多看書。時至今日,書仍然是人類智慧的最大寶藏。《代碼的藝術》和《201個原則》都是希望通過一本小書,爲希望學習的軟件工程師提供正確的意識,並希望軟件工程師從這兩本書出發去閱讀更多的相關書籍。 相比而言,《201個原則》的語言更加精煉,文字不多,卻引人深思;《代碼的藝術》希望能夠更多的說明軟件研發的“常識”,而很多軟件研發的失敗恰是因爲常識的欠缺。 在兩本書出版後,我也曾經閱讀過一些讀者評論。一些讀者的差評竟然是因爲“書的文字太少”!一本書的價值從來不是由文字的數量來決定,而是決定於“信息量”。讀懂這兩本書,需要讀者有一定的實踐經歷,否則恐怕難以產生共鳴;也需要讀者能夠放下對於軟件研發的狹隘認識,希望各位讀者能夠看到軟件的研發不止於代碼! 軟件工程師在通過軟件改變世界,也在通過軟件研發的過程來改變自己。生命的重要意義恰恰在於去認識這個豐富多彩的世界。 透過軟件和代碼,希望我們每個人都能看見更多! 章淼 BFE開源項目發起人 《代碼的藝術》作者
有點太泛了,什麼都想講一些,什麼都講的不夠
總的來說,還是有一點東西的,給一個推薦吧。
和標題還是有一些出入的,感覺更適合代碼實踐,項目全週期管理之類的題目。 雖然有些出入,但是也是能夠得到一些收穫的,包括一些小知識點,項目週期各個階段的注意事項之類的。 最後讓我覺得這本書有意思的點在於,這是我見過最多推薦序,最多引用他人句子的書,無論是知名還是不知名都能記住實在厲害,可能是作者極強的版權意識?
我在百度上查詢: 如何成爲一名優秀的軟件工程師? 從前我認爲好好寫代碼就完事了,而且對於我這麼一個計算機專業出身的人來說,簡直不算難事。 可我後來發現自己思路上大錯特錯了。 我看到一篇文章,標題是這樣的: 三板斧,助你成爲優秀軟件工程師。 光聽這個標題,我感覺像是標題黨,我認認真真看完整篇文章,對於作者給出的成爲一名優秀軟件工程師的修煉方法我聽起來覺得很服氣,他是這麼說: 1)學習-思考-實踐 2)知識-方法-精神 3)基礎乃治學之根本 對於第三點, 他說,打下那些基礎至少需要5-8年之功。 而成爲一名優秀的軟件工程師至少需要8-10年的積累。 我不知道是不是真的要這麼久,不過我認爲打好基礎急不得,需要日積月累。 那篇文章的作者叫章淼,也就是這本書的作者,他當時在文末提到了這本書,我就過來拜讀一番。 我還在繼續學習中,我深感自己在軟件領域的“飢餓”和“愚笨”。
整本書第二章就開始水,到第六章已經沒有一點人話了。工程師就幹工程,科學家就搞學術,你研究做人幹啥?你搞政治搞多了麼?整本書裏有用的內容基本來自軟件開發的201個原則。作者除了引經據典外,就只剩下畫蛇添足了。
書具備一定可操作性,但部分章節和段落有水的成分,不算經典。大學低年級可細看,高年級及以上可1-2個小時快速看完。
挺好的,很理想化。無聊看看靜靜心
寫得都有道理,但是很水。不過水也比干得咽不下的好。