《Code: The Hidden Language of Computer Hardware and Software》在豆瓣與亞馬遜上的評分與贊譽都極高流译。封面上赫然表明:永不褪色的計算機科學經典著作纹腌。
為了讓贊譽與批評取得平衡,讀后想表達的觀點如下:
《Code》是一本解釋計算機工作原理的通俗讀物吻育,非教材,非科技專著,是科普著作瞒滴。因為是科普父晶,以前不曾是诗充、以后也不會是“大學計算機組成原理的替代品”,更不要拿它來與CSAPP并列對比诱建。因為它是科普蝴蜓,所以,用它來佐證“大學的教材思路全錯”是不正確的判斷,即使大學的教材思路確實全部都是錯的茎匠。
《Code》講解了若干計算機入門理論格仲,這些理論內容并不充分,遠不足以包含計算機專業(yè)大一新生的《計算機科學導論》課的知識點诵冒。換句話說凯肋,即使你把《Code》讀懂讀透,《計算機科學導論》考試還是不及格汽馋,就更別提《數字邏輯電路》或者《計算機組成原理》了侮东。作者為了保持該書的通俗性、可讀性豹芯,在若干知識點上做了許多無效的努力悄雅,包括:第19章微處理器,第22章操作系統(tǒng)铁蹈,第24章程序設計語言宽闲,第25章圖形。對于這些重要的知識點握牧,該書的講述既不充分也不清晰容诬。
《Code》同時也花了大量的篇幅講解了許多非計算機理論知識,包括:摩斯碼沿腰、盲文览徒、手電筒的結構、電流電壓安培瓦特......當然颂龙,還有算盤习蓬。這些內容以大概率不會出現(xiàn)在大學課堂。值得注意的是厘托,這些內容在《Code》這本書占據了大量篇幅(第1章到第9章)友雳,也是作者的通俗表達可以高度發(fā)揮作用的章節(jié)。因為要保持通俗性铅匹、可讀性押赊,該書到第9章才講到二進制。之前講了什么包斑?第1章講兩個小朋友希望開展“夜談會”的故事流礁、第2章講摩斯碼、第3章講盲文罗丰、第4章講手電筒(電池電線電流)神帅、第5章燈泡加電線、第6章講電報萌抵、第7章講十進制......用全書1/5的篇幅講解這些內容找御,確實很通俗元镀,以下這幅圖(第10章第一頁)多少可以說明其通俗的程度:
可惜的是,我看不出這種通俗能對專業(yè)學生有任何的裨益霎桅,更納悶的是栖疑,這樣的書要怎么樣才能如某些讀者聲稱的那樣“讀出高潮”?這兩句非常不客觀滔驶,讀者可以忽略遇革。
最后,也許還可以苛責《Code》有一個重大的缺陷:沒有任何一本參考文獻揭糕。也就是說萝快,這是一本自包含的書,而且從這本書出發(fā)著角,你的求知欲沒辦法延伸開來揪漩。你看了這書,依然不知道計算機組成原理雇寇、操作系統(tǒng)氢拥、程序設計應該怎么學蚌铜,應該看什么書锨侯,這些知識點的重點難點是什么......當然,這與其定位有關冬殃,它是一本科普書囚痴,非專業(yè)書。
我給計算機專業(yè)讀者的建議是审葬,任何時候都不要閱讀這本書深滚。要入門,隨便找一本教材涣觉,比如:CSI 痴荐,或者CSO。要找樂子官册,可以看其他科普生兆,不就此獻丑,擺手膝宁!
--
20180502晨鸦难,陰有雨