一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

【那些年,我們一起讀過的書】《“郵子書薦”(一)

 浪子不愿回頭 2014-09-22

本期導(dǎo)讀:

你是否還在為如何學(xué)習(xí)編程語言痛苦不堪?你是否還在為看哪本編程的書糾結(jié)不已?你是否還沒有找到合適的學(xué)習(xí)網(wǎng)站?本期我們特意邀請了黃超學(xué)長給我們推薦了一些平臺和開發(fā)方面的書目,另外還推薦了一些你所不知的資訊網(wǎng)站,千萬不要錯過?。?!

 

引言

很害怕說的不好,寫的不對,誤人子弟,那就罪過了。由于平時主要是用C/C++做一些圖像和視頻方面的處理,所以下面列的也主要是C/C++方面的內(nèi)容。

我們這個行業(yè)雖然技術(shù)更新非???,但是普遍認(rèn)為基本功才是最重要的。CPU體系結(jié)構(gòu)、匯編、C/C++、操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)和算法、計算機網(wǎng)絡(luò),永遠(yuǎn)都是程序員的護生法寶,就如同少林寺的《易筋經(jīng)》;學(xué)會了《易筋經(jīng)》,幾乎可以無所不能,任你創(chuàng)造武功。我們想想操作系統(tǒng)、編譯器、虛擬機都是怎么開發(fā)的就知道這些知識的重要性了。先推薦一本書《深入理解計算機系統(tǒng)》,這本書是需要不斷研究的一本經(jīng)典,每次看都會有新的收獲。這本書對計算機軟硬件體系結(jié)構(gòu)進行了深入淺出的介紹,涵蓋的內(nèi)容較多,值得反復(fù)研究。

對于編碼、程序最好還是深挖,更多的要去了解底層、了解程序背后的東西。要了解編譯器在背后為我們做了什么,鏈接器又做了什么,程序在加載的時候是怎么一個過程,程序在執(zhí)行的時候CPU、高速緩存、內(nèi)存、操作系統(tǒng)是怎么樣協(xié)作工作讓程序順暢的跑起來的。下面列出一些主題和書目,都是個人的一些想法和偏好,看完這些收獲確實很大,但是其中還有很多不理解的,可能還有理解不正確的,還需要再鉆研,也許需要在項目中或者到工作中才會有更深刻的體會和認(rèn)知。下面我會就C語言、C++、Linux、Windows、數(shù)據(jù)結(jié)構(gòu)、算法方面推薦一些我認(rèn)為值得看得書,并分享一下自己在編程時的一些感受,希望能對家有所幫助。

書目推薦篇

C語言

 

相信C語言都是學(xué)過的,基本的概念語法什么的應(yīng)該都是懂的,這里就直接推薦書了。

《C程序設(shè)計語言(第2版新版)》:這本應(yīng)該時刻放在手邊,經(jīng)常翻,超級大師的作品,字字珠璣,深刻透徹。這本書可以作為了解C語言思想的書籍,看過之后會對C有很大的了解。寫的很精練,但是內(nèi)容涵蓋又非常的廣,感覺是多一頁不多,少一頁不少的那種。由于是C語言設(shè)計者寫的,所以里面會提到函數(shù)的設(shè)計思路。

《C和指針》、《C陷阱與缺陷》、《C專家編程》:三本一起來,暫且稱其為C語言(進階書)三杰。如果你想成為一個嚴(yán)肅的程序員,這三本必須讀。起點有點高,但看某些內(nèi)容時頗有頓悟之感。C語言的精髓是指針,而這三本書對指針和數(shù)組,還有函數(shù)這些問題分析的相當(dāng)透徹。C語言之所以強大,以及其自由性,很大部分體現(xiàn)在其靈活的指針運用上。因此,說指針是C語言的靈魂,一點都不為過。要想學(xué)好C語言,那么指針是必須熟練掌握的。

《C語言深度解剖》:這個是已出版的書,作者之前在網(wǎng)上放了電子版的,叫《C語言深度剖析》,比較深入的研究了C語言。 其實這本書中,很多都是《C專家編程》、《C和指針》、《C陷阱與缺陷》中的內(nèi)容,作者用自己的理解寫出來,讓人更容易理解和接受,而且對于知識點的講解都配有相關(guān)例子。但是書中有一些錯誤需要自己辨別。而且所有的分析都基于VC6.0,太依賴特定的編譯器了,所以里面說到的結(jié)論對不對還需要我們自己深思。總的來說還是一本值得看的書。

《高級質(zhì)量程序設(shè)計指南》:林銳的書,順便也可以了解一下林銳是何許人也。其實這本書講C++的東西更多一點,比較強調(diào)編程規(guī)范、編程習(xí)慣等方面的問題。提的東西比較廣、很重要,可惜講的不太深,看完這本書以后建議找更多的讀物來深入理解。據(jù)說有些公司的面試筆試題就選上面的,所以找工作的看看會很有幫助的。

C++

如果沒有學(xué)過C++,那么先找本傻瓜一點的教材翻起來,《C++Primer》。

C++Primer》:一本久負(fù)盛名的C++經(jīng)典教程,這本書幾乎包含了有關(guān)C++的所有基礎(chǔ)知識,包括一些基礎(chǔ)的語法,常見的錯誤解析和最為基礎(chǔ)的編程案例以及一些在C++中很經(jīng)典的實例,這些知識能夠使初學(xué)者很容易地掌握有關(guān)的知識,以最快的速度進入C++學(xué)習(xí)的“門檻”。但是內(nèi)容相當(dāng)多,要全部消化不容易,可以作為工具書放在手頭翻。

另外,如果大家想對C++有更深入的了解的話,建議大家看看下面幾本書。

《Effective C++》、《More Effective C++》:對C++中各類知識點的總結(jié),主要都是實際編程中的一些經(jīng)驗。

《C++對象模型》:第一代C++編譯器開發(fā)主管所寫,看這本書,他為你講述了編譯器在處理各種語法時在“后臺”所做的事。對C++有較深入了解的同學(xué)會在讀后有恍然大悟之感,侯捷翻譯,質(zhì)量還是不錯的。但內(nèi)容較深,涉及到標(biāo)準(zhǔn)和編譯器的東西比較多,很多東西標(biāo)準(zhǔn)沒有明確定義,留給廠商一些自由發(fā)揮的空間,對于這些我們不能想當(dāng)然,要自己去辨別哪些是和編譯器相關(guān)的。作者所使用的編譯器較老,現(xiàn)代編譯器是不是還是這樣實現(xiàn),需要自己上機練習(xí),結(jié)合匯編代碼看。

《C++反匯編與逆向分析技術(shù)揭秘》:這個對程序調(diào)試還是很有幫助的。

Linux

至于Linux,由于在現(xiàn)在的學(xué)習(xí)中用的比較少,了解的也不是很深,就推薦幾本網(wǎng)絡(luò)上公認(rèn)的好書吧。

《鳥哥的Linux私房菜》:相信這個應(yīng)該是最好的教材了吧,作者完全顧及了初學(xué)者的感受,它懂得從哪里講,以及如何講才能讓所有人都看得懂。從硬件講起,為安裝做鋪墊,然后講到文件的操作,編排得非常有序,內(nèi)容也非常全了。

另外大家可以看一下《Unix環(huán)境高級編程》、《Unix網(wǎng)絡(luò)編程卷一、卷二》。要是有興趣還可以研究研究Linux內(nèi)核,對于理解操作系統(tǒng),C/C++的學(xué)習(xí)會有很大的幫助。

Windows

《Windows核心編程》:原書名為Programming Applications for Microsoft Windows,但是這個Windows核心編程貌似是夸大了一點啊。這不是一本W(wǎng)indows編程的入門讀物,而是進階讀物。沒有它,你也可以寫出各種Windows程序。但是有了它,你的視野一下子就打開了??梢哉J(rèn)為是操作系統(tǒng)的延伸,從OS理論到OS實現(xiàn)。由于WINDOWS代碼是不可見的,而這本書已經(jīng)盡最大努力讓你在API層上窺探一些系統(tǒng)底層的一些知識。對于Windows平臺下的開發(fā),這個最好認(rèn)真研讀。

《Windows程序設(shè)計(上下冊)》:也是經(jīng)典,當(dāng)然不一定要所有內(nèi)容都搞透,用的時候翻就行了。

不過Windows下寫程序最好的東西應(yīng)該還是MSDN,電腦上裝個安裝版的,不懂的時候就到里面搜,肯定能找到你要的東西,同時還能練英文。

數(shù)據(jù)結(jié)構(gòu)、算法

《算法導(dǎo)論》:這個要啃下來不容易,數(shù)學(xué)的東西比較多;

《數(shù)據(jù)結(jié)構(gòu)與算法分析:C++描述》

《編程之美:微軟技術(shù)面試心得》

《編程珠璣》、《編程珠璣(續(xù))》

對于像設(shè)計模式這種需要大量經(jīng)驗才可以領(lǐng)悟到的知識,如果你從來沒獨立寫過一個上萬行的程序,基本上理解不了設(shè)計模式在講什么。其實這種時候能做的也就是背下來,理解什么的都是扯淡。諸如此類,學(xué)習(xí)程序,如果要加速那個過程,肯定要花大量的時間寫代碼。當(dāng)你把項目做得越大、越復(fù)雜、算法越扭曲、界面越華麗、尺寸已經(jīng)大到你覺得不學(xué)習(xí)新的方法論就肯定會讓代碼失控的時候,這個時候你來看設(shè)計模式的書,保證是每看到一個模式都覺得人家說到你心坎里去了。那你不僅可以迅速理解,而且以后還可以不由自主的想起來使用它。所以前期的話還是把基本功練扎實了,更高級的主題到我們需要的時候自然而然會去學(xué)。

個人經(jīng)驗分享篇

 1.程序出錯了怎么辦

程序錯了很正常,程序越大調(diào)試占用的時間會越多。調(diào)程序要有耐心,千萬不能浮躁,要靜心定性。有時候我們會有這樣的想法,認(rèn)為我們的程序肯定是對的,是不是編譯器有問題,這個概率很小啦,碰到錯誤,我們應(yīng)該告訴自己肯定是我們的程序有問題。調(diào)程序要充分利用好工具,現(xiàn)在一般都是使用IDE,怎么樣利用好IDE,不管是Windows平臺還是linux平臺都要熟練使用開發(fā)環(huán)境。怎么樣調(diào)試,跟蹤變量、觀察內(nèi)存、甚至是看相應(yīng)的匯編代碼。另外最好熟悉調(diào)試的相關(guān)快捷鍵,效率會更高一點。注意編譯器鏈接器給出的出錯信息,一般同一類錯誤給出的提示信息基本都是一樣的,解決完錯誤后想想是怎么原因造成的,再結(jié)合錯誤的提示信息,那么下次碰到相同的出錯信息就能知道大概是什么原因了,這樣就找到了排錯的大致方向,不至于盲目、下不了手。我們也不能盲目相信編譯器給出的錯誤提示,有時候不一定準(zhǔn)。這里推薦兩本書《程序員的自我修養(yǎng)》(這本書感覺有點亂,但是內(nèi)容還是很多的,而且講的也不錯,看下來收獲還是蠻大的)、《Linkers and loaders》(這本書有中文版的,但是本來英文的就寫的比較晦澀,中文版的翻譯的也不怎么樣,所以看下來會有點壓力)。

2.閱讀源代碼,撰寫文檔很重要

當(dāng)我們了解了語法,寫了一些代碼后可以閱讀一些他人的代碼,有很多開源代碼都是很好的選擇,甚至是一些庫的源代碼(TCP/IP卷二:實現(xiàn)、glibc)??粗跋认胂肴绻屇阕约簩崿F(xiàn)你會怎么寫,然后再去看人家是怎么寫的,為什么人家會寫的這么簡潔,效率這么高。當(dāng)然還可以看看基本的語法是怎么樣用到實際的代碼中的,比如宏定義、內(nèi)聯(lián)、const,這些是在哪些地方用的,以后自己寫的時候也可以學(xué)著用。我接觸的主要是多媒體通信方面的,X.264、WebRTC(這個比較新,Google的)都是可以研究的。拿到別人的代碼,第一步要先把代碼跑通,然后熟悉程序的流程,最好能畫出流程圖來,再看類之間的依賴關(guān)系、函數(shù)之間的調(diào)用關(guān)系,最后才去研究相關(guān)函數(shù)的具體實現(xiàn)。這里提醒一下,我們寫代碼的時候要盡量寫好注釋,學(xué)會寫文檔。不管是參加比賽還是將來工作都會要求我們有撰寫文檔的能力,平時盡量能學(xué)著寫起來,我知道很多寫程序的人很排斥這個(包括我自己),但是還是要強迫自己去寫,自己懂了不代表別人也能懂,把自己的想法表達出來也是一種能力。

3.書看不懂怎么辦

很多時候看書感覺像是在看天書,這個不懂,那個也不懂??吹枚囊屑?xì)看,爭取看出更多東西,看不懂的要硬著頭皮往下看,不可能是一遍就能看懂的。當(dāng)然這其中有一些問題,有很多東西看不懂是因為需要先修知識,那么我們就應(yīng)該把先修的那部分先看懂再回來接著看。還有的情況是我們理解的角度不對,那我們可以求教Google,搜索相關(guān)知識點,先看看別人是怎么理解的,然后再回去看。很多時候我們會在不同的書上看到同一知識點,千萬不能不看,每個作者對同樣問題的理解角度不一樣,我們看多了就能從不同的角度去理解,可以對其有立體性的認(rèn)識。另外些好的作品是要反復(fù)研讀的,隨著知識的積累,回過頭再去看的時候會有新的收獲。如果能找到三兩同伴一起研究,那就最好不過了。

4.我推薦的網(wǎng)站博客

要在CSDN、weibo等社交網(wǎng)絡(luò)關(guān)注技術(shù)大牛,訂閱RRS。及時了解新語言,對技術(shù)要有深入研究而不是僅僅停留在只會調(diào)用API的層面上。技術(shù)是要靠實力說話的,光忽悠沒用,所以盡可能早的去深入了解。另外對他們的關(guān)注會了解到更多的業(yè)界動向,出現(xiàn)了哪些新技術(shù),作為致力于IT發(fā)展的我們應(yīng)該要有一個全局的認(rèn)識。對于IT行業(yè)、IT企業(yè)的發(fā)展感興趣的,可以翻翻吳軍老師的《浪潮之巔》,寫的很好,值得一讀。

網(wǎng)站:

http://blog./,一個資訊類網(wǎng)站吧,閑來可以看看;

http://www.csdn.net/,這個網(wǎng)站應(yīng)該不用多介紹;

http://www./,Linux環(huán)境下開發(fā)的好去處;

http://www.cnblogs.com/,里面總結(jié)性的東西比較多。

博客:

http://blog.csdn.net/DL88250

http://blog.csdn.net/byxdaz

http://blog.csdn.net/v_JULY_v,算法必看。

 

上面列的這些網(wǎng)站和博客隔三岔五就上去看看,碰到好的文章保存下來,經(jīng)常翻出來研究下,學(xué)習(xí)了一段時間再看又會有新的認(rèn)識和收獲。去論壇里面、博客上面看人家有什么問題,你有沒有意識到有這些問題,你能不能解決人家提出的問題,你準(zhǔn)備怎么解決,回復(fù)者里面是不是有比你更好的解決方案。試著去回答他人的問題,不要怕出錯,相互交流才會有更大的提高??偟膩碚f就是向他人學(xué)習(xí),和他人探討問題。通過閱讀他人代碼提高自己的水平,同時盡可能去幫助他人,用一種開放地思維接受和分析他人的解決方案以及思想。

5.注意關(guān)注熱點

現(xiàn)在很fashion的詞——云計算、物聯(lián)網(wǎng),吸引了很多人的眼球,其實這只是一個概念,落實到實處還是要有相關(guān)的應(yīng)用、產(chǎn)品推出來。所以包括多核多線程編程、海量數(shù)據(jù)處理、機器學(xué)習(xí)等這些都是值得研究的,會有大量的應(yīng)用用到這些技術(shù),感興趣的可以深入研究。前面都沒有提到數(shù)據(jù)庫,對于數(shù)據(jù)庫還是建議大家要有所了解的,相信將來不管是服務(wù)器端、桌面、還是手持終端上的開發(fā),對數(shù)據(jù)庫的要求都會越來越高。

6.關(guān)于提問題和網(wǎng)絡(luò)資源的使用

對于不懂的問題或者自己沒法解決的問題,先上網(wǎng)搜,現(xiàn)在網(wǎng)絡(luò)資源這么豐富,絕對不能浪費了。怎么搜、選擇什么關(guān)鍵詞、到哪邊去搜,這又是一門學(xué)問了。這樣在網(wǎng)上看了一圈、學(xué)習(xí)了相關(guān)知識后再去請教別人就能有更好的認(rèn)識了,不至于別人講的一些術(shù)語或是基本知識都聽不懂。向別人提問題,不管是當(dāng)面還是在網(wǎng)上發(fā)帖,一定要把問題講清楚,什么平臺、什么背景都要說,另外把自己已經(jīng)理解了多少、或是自己是怎么理解的也最好要說明,這樣別人才能針對性的作答。

后記

大家也要學(xué)會忙里偷閑。多參加娛樂、體育活動、多接觸大自然。身體是革命的本錢,你的身體和大腦需要休息,經(jīng)常站起來活動活動,切忌一直坐著盯著屏幕。

什么事情都怕你堅持,堅持下去總會成功的。對于軟件、對于開發(fā)才剛上路,要時刻學(xué)習(xí)、堅持學(xué)習(xí)。另外前面有什么不對的,不足的地方,希望得到指正,更希望能當(dāng)面交流,共勉!

 

黃超學(xué)長的郵箱:hc.huangch@gmail.com

 

作者為2010級通信與信息工程學(xué)院研二學(xué)長黃超,保研通院董育寧老師

2011.12        獲第八屆全國研究生數(shù)學(xué)建模大賽二等獎;

2011.11        獲中國移動二等獎學(xué)金;

2010.06        獲南郵優(yōu)秀畢業(yè)生;

2007.11-2009.11 連續(xù)三年獲南郵?!叭脤W(xué)生”;

2007.11-2009.11 連續(xù)三年獲南郵二等獎學(xué)金;

2009.11        獲南郵單科成績優(yōu)秀獎;

 1

Good Books Worth Sharing ,Ideas Worth Spreading!

 

 

本篇文章約稿by :周丹

 編輯by :周丹 魏浩

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    伊人天堂午夜精品草草网| 91午夜少妇极品福利| 一区二区三区欧美高清| 综合久综合久综合久久| 欧美日韩综合在线第一页| 视频一区日韩经典中文字幕| 好吊日在线观看免费视频| 午夜免费精品视频在线看| 欧美日本道一区二区三区| 成人三级视频在线观看不卡| 日本精品中文字幕在线视频| 亚洲高清一区二区高清| 日韩免费国产91在线| 国产又粗又硬又长又爽的剧情| 欧美日韩精品久久亚洲区熟妇人| 91熟女大屁股偷偷对白| 精品久久av一二三区| 不卡一区二区高清视频| 精品久久av一二三区| 日本av在线不卡一区| 国产户外勾引精品露出一区| 免费国产成人性生活生活片| 爱草草在线观看免费视频| 欧美一级黄片欧美精品| 成人你懂的在线免费视频| 小草少妇视频免费看视频| 国产精品久久久久久久久久久痴汉 | 亚洲国产成人精品一区刚刚 | 黑人粗大一区二区三区| 精品日韩视频在线观看| 精品人妻精品一区二区三区| 99国产高清不卡视频| 亚洲一区二区久久观看| 午夜视频成人在线观看| 久久99一本色道亚洲精品| 色哟哟国产精品免费视频| 久久re6热在线视频| 国产精品久久久久久久久久久痴汉| 91免费一区二区三区| 一区二区欧美另类稀缺| 99久久精品一区二区国产|