我記得去年還是今年早些時候,garbageMan大俠寫系列文章《C解毒》的時候,我就說等他的書寫出來后,一定要買一本看看,這不前天晚上
在京東拍了一本書,沒想到今天下午就到了,花了幾十大洋,呵呵,下面是書的封面圖片:
還沒來的及細看,印刷質量很好,紙張質量還行。
為什么要現在買這本書呢? 這要從前段時間的園子里那篇文章說起: 程序員都不讀書,但你應該讀
上面的鏈接的文章中,提到的有些人認為不需要讀書的幾點理由總結起來可以概括為以下兩點:
1、現在互聯網在全球各地都可以輕易的獲取信息。
2、編程類書籍編寫的質量差,很多書都是些什么21天,什么幾天精通什么,還有就是一些什么從入門到精通系列的書籍。
誠然,現在從互聯網上獲取信息比較容易,但是也許那篇文章的作者可能忽略了一個事實,那就是不是所有的想要從事計算機這個行業的
人員都具有和作者一樣的計算機基礎知識功底(我不能准確的知道作者的水平,但是從他的書櫃里的書可以窺見一斑),下面是那個哥們的書櫃
,這里可以看到作者看的書也是很多的,有經典的《代碼帶全》等。
我們來分析一下這位哥哥說程序員不需要讀書的潛台詞: 那就是在遇到問題的時候,他知道怎么去網絡上搜集所需要的信息,他知道
需要搜素那些必須的信息;而要做到這兩點就必須有一定基礎,很明顯如果你沒有一點基礎,那么你將不可能從偌大的因特網上獲取你需要的信息。
(而且我可以肯定的說,雖然園子的都是IT界的高手,但是我敢肯定的說,園子里面還有很多人還真不會利用因特網這個無限的資源庫,很多人雖然
會“用”谷歌、度娘,但是肯定很多人沒有真正的掌握這些強大的搜索引擎,谷歌近些年因為一些不為人知的原因在國內已經不如以前那么好用了,現在
也只能用度娘了)。這里我可以說一個我身邊的故事,我有一個同事,比我工作早2年,這不昨天他要裝西門子的軟件,結果不會弄,也不知道怎么從互聯
網上搜索相關的信息,這不我現在正在就幫他安裝系統和軟件,哎,我真的很無語,不幫他弄嗎,面子上過不去;幫他弄吧,自己又覺得很無語。舉這個例
子的目的是為了說明一個問題,即使在現在網絡信息這么豐富的時候,怎樣找到自己的信息也是一個值得探討的問題。
很多時候,一些流行度很高的文章、文字、語言和話語會對一些認知不夠成熟的人造成很大的影響,甚至是一生的影響;這些影響有正面的,也有負面
的;比方坊間流傳很廣的老比同學在大學期間中途輟學了,還不是一樣成為了世界首富;還有就是現在在互聯網的風雲人物馬雲,坊間傳說他當年考北大的
時候數學得分為1分(這個不知道是不是真的,我沒有看過他自己在任何公開場合說過這個);且不論這些是個例,但就他們成功的背后的故事,有多少人清
楚,無論他們在公共場合怎么披露和表達自己的成功的經驗,我只能說:歷史會重演,但是成功不可復制。
如果您簡單的認為一些人的成功可以復制,那么你只能默默的祈禱自己不要摔的太重。
但是為什么現在整個市面上充斥了那么多的無用的信息呢? 這與現在的人的浮躁有關,所有的人都渴望一夜成名,都渴望一夜成功,因此市面上也就到
處是一些21天從入門到精通,到處鋪滿了所謂的成功學。
現在在計算機世界一個比較熱門的話題是:開源。開源好不好,這個東西還真要好好的探討,對於一些懶惰的人來說,開源是他們的救命稻草;而對
那些願意鑽研和學習的人來說,開源是他們的提高的基礎。stackoverflow這樣的網站上面有成千上萬的智者,這些人願意給其他人提供幫助,但這並不是
你可以不學習的理由或者說是你可以不自己動腦筋的理由。前幾年流行這樣一篇文章: 提問的智慧, 這個也許能對一些人提供一些參考,咱們的前輩們說
過一句話:盡信書不如無書。 這里這個提問的智慧也需要辯證的來看,至於到底怎么看,那就看各位仁者見仁、智者見智了。
現在還存在一個現象,就是很多人都成為了下載狂,我自己就是一個例子,我自己下載的各類計算機專業的的書籍,如果要是我從頭到尾看的話,我估計
看100年也看不完,我可以截個圖給大家看看我的C語言的書籍:
這些還只是我下載的C語言書籍的一部分,但是我真正看完的書沒有幾本,目前正在看的也就《K&R C》這本書。而我其他類的書籍資源也是
很多的。
這些還只是我收集的書籍的1/20 不到,我現在自己都不明白為什么要下載這么多的書籍,以我現在的精力就算不吃不喝不睡我也不可能在離開
這個世界之前將所有的書籍都看一遍。
這么多的資源怎么處理呢?也許這也是那位仁兄說這個世界不再需要書的原因,因為書太多了根本讀不完,也就是:“書非借不能讀也”。弄那么
多的大部頭,放在案頭,充門面,一般也就束之高閣;這也是前面那篇文章中說的:“如果你五年都不想清掃一下你的書架,那請相信我,你買錯了
編程書”。
讀了那篇文章后,對我觸動很深,我也對自己這段時間的學習做了一下反思,也就有了這篇文字。
很多人信奉: 用到什么,學什么;以前我對這個觀點不是很贊同,現在看來也不是沒有道理,因為在這樣一個信息海量的時代,如果不進行
信息的篩選,那么你不可能接受所有的信息,因此提取有用的信息是一件非常重要的事。但是這里也有一個問題,如果你是這樣的人的話,那么你永遠
也達不到登峰造極的狀態,什么原因,還是大家自己想吧。
原本討論的是,計算機的世界還需要書嗎? 結果說了一大堆,自己也不知道說了些什么。最后我想說的是: 計算機的世界在任何時候都需要書。
但是對於你和我來說,需要的是自己真正需要的書;而不是粗制濫造的書,不是東抄抄西抄抄的書;你需要的不僅是電子版的書,需要的紙質的書。
為什么需要紙質的書呢? 電子版的書看起來費勁,而且一般的人也沒有那個耐心從頭看到尾,更主要的是看電子書費眼;還需要認真的甄別書的偽劣,
不要被一些書誤導了,這個誤導,通常不是知識點的誤導,而是思想上的誤導,例如那些21天、7天什么類的書籍,他會讓你感到你要學習的東西只有那么
點東西,通常會讓你急功近利,而更有可能成為井底之蛙。
說到這里最后再給大家說說我自己對於C語言學習認為不錯的幾本書:
1、入門篇 《C Prime Plus》、《K&R C》 、《C和指針》 (個人認為 K&R C 比C Prime Plus難懂,適合有基礎的人看,三本我都有紙質的)
2、提高篇 《C專家編程》、《C陷阱和缺陷》、《C標准庫》、《C語言現代設計方法》
3、高級篇 《深入理解計算機系統》、Linux內核相關的書籍
上面僅代表自己的想法,可能說的不是特別的對,還是那句話見仁見智吧。
如果您要學習Linux下C編程的話,個人感覺《Linux 一站式編程》寫的不錯,可以看看,而那本《Unix環境高級編程》是多少人推薦的讀物,我
還沒有時間看這本書,大體瀏覽了一下,值得一看。
這里沒有將我新買的書放到這里面,我個人認為garbageMan寫的書注重的是實戰,而上面我提到的書注重的是理論,如果在學習過程中將《K&R C》
認真學習,再將C標准的(EN Edition)認真看一遍,garbageMan書中提到的問題,你也就能迎刃而解。如果你是一個注重效率的人,那么garbageMan寫
的這本書是一本不錯的選擇,我看了前面幾節,例如關於 “C++假C之名”這一篇,我估計很多人,可能不會注意VC++ 6 或者后面的版本關於文件擴展名對
編譯器的影響的(我習慣C工程建立時,自己填寫擴展名.c)。
亂七八糟的說了一大堆,自己也不知道說了些什么,主要是自己下階段打算進入這個行業,做自己喜歡做的事,也許明年我也會和各位一樣成為一個碼農,
下個月就離職了,園子里的前輩們有什么看法和建議呢? 歡迎指教。