-
1 # 理性的現實主義者
-
2 # 大學生程式設計指南
從事嵌入式軟體開發十幾年,比較喜歡研究的書這麼基本,《高質量C/C++程式設計》,《TCP/IP詳解》,《資料結構和演算法導論》主要還是自身的開發經歷有關,主要是C/C++開發用的多,所以看這方面書看的相對比較多,現在就這幾本書看的背景拿出來分享給大家。
高質量程式設計指南開始入行寫程式碼用的C語言,由於開始計算機語感感覺不好,對於C語言的指標琢磨不投,有一次在網上搜到了一本我的程式設計十年的是一個叫西電畢業的叫林銳寫的,語言樸實而不失風趣,無心之中增加對程式設計的興趣,文章中提到自己傾家蕩產寫了一個軟體請教一個技術大拿,結果被這大拿說了一段,這產品完全是程式設計師思維製作的,根本沒有市場,最後賠的精光。後來才瞭解這位的技術大拿是現在360的掌門人周鴻禕。有時候這個圈子還是挺小的。
還是受文章的影響,就在網上下了電子檔學習起來,先把後面的題目做了由於基礎不咋樣得了40分,覺得差距太大,於是把這書一口氣看完了,這次算是把C語言的指標給搞明白了。所以講程式設計的學習,培養興趣是一個非常重要的過程,當然興趣的培養可能是因為一個小事情的發生導致的興趣一下子變得強大起來了。
很多程式設計師開始做程式就是覺得是個工作,相對來講工資還不低,最後玩的時間長了自然就容易產生興趣,有句經典的話叫,這玩意不但能掙錢還挺好玩,這本書整體來講對於學習C/C++值得一看。
TCP/IP詳解這本書算是網路協議的經典書籍,基本上學習網路都研究過這本書,之所以對這本書深刻,主要在入行第一份工作在一家公司呆了半個月,這家公司專門製作區域網網路監控軟體,就是研究各種網路協議,監控區域網內的qq,msn等聊天軟體,發現有人登陸直接就傳送模擬的伺服器密碼錯誤報文,這樣區域網內的聊天工具就完全登入不上,基本上大家都透過抓包工具研究協議內的格式,因為網路層傳輸協議是有規範的,所以研究規則成為網路監控的重中之重,在這裡面薰陶了半個月,還買了一本tcp/ip詳解,後來因為有個嵌入式的工作崗位更加有吸引力就果斷換了工作,但對於網路的熱情並沒有減少,平時就喜歡拿這本書作為補充知識來學習。
對於網路程式設計感興趣的這本書是必備的入門書籍。
資料結構和演算法分析這本書算是嵌入式開發的常備書籍,程式設計寫程式碼必然涉及到演算法,在學習演算法之前需要對資料結構有一個瞭解,資料結構是設計函式的基礎,一個功能模組的設計首先要考慮其資料機構內容,有了主的脈絡後面的功能實現起來就比較方便了。如果是C語言程式設計就是設計結構體的主要內容,C++程式設計的話就要涉及到類的內容設計。
資料結構就是常見的資料結構型別,連結串列,佇列,堆疊等等,稍微複雜點有二叉樹,樹等資料模型,複雜的演算法都是這些基本資料模型的基礎上衍化而來,先從基礎的演算法結構開始慢慢的滲透,在程式設計領域演算法無處不在,演算法就是程式設計邏輯最直接的體現,很多人講演算法能決定程式設計師的上限,雖然說得有點誇張但也存在一定的道理。
資料結構是一個程式設計師的必備基礎,演算法是程式設計的程式碼的靈魂。
-
3 # 極客宇文氏
書籍很多,程式設計師也很多,但是寶貝卻不多。
作為Java程式設計師,想必一定聽說過Java聖經。
那就是《Java程式設計思想》,毫無疑問是被所有Java程式設計師都在Java成長路上閱覽過的。《Java程式設計思想》據說是無論你是什麼水平的程式設計師,翻閱一次就會有新的收穫,也就是適合於任何Java水準的人去備上一份。
當然筆者自己親讀過,由於懶惰,也沒有全部看完,個人認為,Java程式設計思想不太適合完全不懂Java的朋友看,適合有一定Java基礎,甚至有一定工作經驗的朋友去讀。
而且也不贊同說從頭讀到尾,而應該覺得自己哪裡薄弱,就選擇那一塊進行細讀。
除此之外,還有很多程式設計師必讀,在這裡簡單提一下:
《演算法導論》《資料結構(C語言版)》《程式設計之美》《Linux鳥叔的私房菜》《Spring原始碼深度解析》 -
4 # 21活的漂亮
第一本《C語言程式設計》,這本書雖然很薄,但內容很精練,程式裡的語句都是英文。
第二本《資料結構與演算法分析》,剛開始學,借某位大神的話說,這本書呢就相當於泡妞的技巧與方式!哈哈哈
第三本《啊哈!演算法》,算是我的演算法啟蒙教材。
第四本《圖解tcp/ip》,這是一本圖文並茂的網路管理技術書籍,書中講解了網路基礎知識、TCP/IP基礎知識、資料鏈路、IP協議、IP協議相關技術、TCP與UDP、路由協議、應用協議、網路安全等內容。
第五本《駭客與畫家》,這本書呢!主要介紹優秀程式設計師的愛好和動機,討論駭客成長、駭客對世界的貢獻以及程式語言和駭客工作方法等所有對計算機時代感興趣的人的一些話題。書中的內容不但有助於瞭解計算機程式設計的本質、網際網路行業的規則,還會幫助讀者瞭解我們這個時代,迫使讀者獨立思考。每看一遍都有一遍的收穫,書中的一些想法很有前瞻性。
第六本《漫畫資料庫》,我看的是本電子書,用漫畫的風格介紹了資料庫的相關內容。
我的專業是微電子,程式設計算是我的興趣之一,或許以後會成為我的一個發展方向。
-
5 # 一個存在感小透明
CS專業曾經流傳這麼一句話,你在讀書期間花在計算機書籍上的金錢總和,就是你畢業後第一個月的工資。
這句話能說明一個事實,那就是計算機專業不僅僅是實踐敲鍵盤,同樣需要很多的書籍支撐。當然啦,老實講,我在讀書期間一本都沒買過,但是畢業後工資還是達到了5位數——因為我都是去圖書館借書看。
那麼我就給大家推薦幾本我認為可以作為程式設計師鎮宅之寶的書籍。
不分語言的基礎類
程式設計師的程式設計能力其實是以資料結構與演算法作為支撐的,因此,我先推薦幾本與程式語言無關的演算法與資料結構書籍。
《資料結構與演算法分析》
這本書有java,C和C++語言描述版。我在就業後,到鹹魚上花低價買了一本全新的放在家裡,個人推薦JAVA版,因為我還是覺得C語言比Java難。除去不同版本的語言差異,這本書內容有點深,需要你有相當的數學基礎。但是隻要你隨著它的思路解出一道題,都能獲得無與倫比的成就感。
《演算法(第四版)》
相比上一本,這本就友好多了,封面也是輕快的橘色,雖然整體大部頭了許多,但是講解方面要更容易理解,如果想要夯實自己的演算法基礎,這本絕對是很好的選擇。我在發現上一本書更適合被供著做信仰之後,果斷又去鹹魚買了這本。
JAVA類由於我是JAVA開發工程師,因此我專門推薦幾本java書籍。
《Thinking in Java》中文譯名《Java程式設計思想》
這一本絕對是JAVA開發工程師的寶典,從最基礎的概念介紹到後面負責的java web程式設計都有,適合各個層次的Java從業者。而這本書曾經取得的成就也在下圖中,我就不再整理文字版列出來了。
《Head first Java》
這本也是我很喜歡的JAVA書籍,它雖然達不到上一本那樣神聖,但是勝在接地氣。它用很幽默的方式,深入淺出的介紹了Java,並且善於藉助實際生活的例子來輔助理解,是一本對初學者十分友好的書籍。額外要說的一點,head first是一個系列,除了java 還有jsp,servlet等等,如果你想入門某種語言,不妨先試試有沒有《head first {你要學的語言}》這本書。
開發架構當你已經擺脫了初學者的身份,開始開發了,那麼不能逃過的一件事就是《重構》。這本書的核心是指導你改善既有程式碼的設計,相信我,你遲早會用到,因為就算你保證你的程式碼足夠優秀無須重構,也不能保證不去接手別人需要重構的程式碼。
-
6 # CrazyJin1988
如果想理解計算機是如何儲存資料和如何計算的,極度推薦《編碼》。《編碼的奧秘》的再版,豆瓣評分9.2。從小孩子間的暗號講到二進位制,從最簡單的幾個邏輯電路一步步構建儲存器和加法器,最終構成一臺最原始的計算機。閱讀這本書幾乎不需要任何基礎知識。讀完的感覺就是:計算機如此神奇的同時原理也如此的簡單。
如果想了解現代計算機的結構和原理的,推薦閱讀《計算機組成結構化方法》。
如果還想學點程式設計,那必須推薦C語言。當今程式語言中的那些當紅辣子雞幾乎都是C的直系後代或者多少繼承了C的一些基因。推薦閱讀《C語言程式設計》。
當你學完了C卻發現自己徒有絕技卻無法施展,那是因為你對江湖一無所知。作業系統就是這個江湖的主戰場。試試閱讀《現代作業系統》。
如果不想讓像養兒子一般開發出來的程式當一輩子單身狗,那你應該教會TA鴻雁傳書。你也不會?拜讀一下《計算機網路》吧。
好了,拜讀完那麼武功秘籍。你已經是一枚初級程式設計師了,但要想問鼎江湖。你還得繼續練功:《演算法導論》。
-
7 # AI科技猿
感謝閱讀!
作為C++程式設計師的我來分享一下我的那些寶貝兒們。對於北漂的我,每次搬家都會扔掉一些不用的衣服或者書籍。但是我已然對我這些寶貝們不離不棄!
這些書鑑證了我在程式設計師之路上的日日夜夜!
這些書也是我曾經有一頭烏黑亮麗的黑髮的鑑證!
為了寫這個回答,我又把他們從書架上拿下來,逐一擦拭,逐一給他們拍了個靚照。
01作為C++程式設計師,有關C++的書自然是不能少。對於C++程式設計師你來說,那可真是“一入侯門深似海”,C++語言特性複雜,有且還在不斷的更新。還記得我大學購買的第一本C++書是《C++ Primer》第四版,這本書真是前前後後看了四五遍。還有一本侯婕跟孟巖的工具書《C++標準程式庫》,雖然很厚,當時也硬著頭皮看了一遍。
02對於程式設計師來說設計模式更是不能少的,一個好的設計模式對於大型程式的後期升級維護都是至關重要的。由設計模式的四位大牛寫的《設計模式:可複用面向物件軟體的基礎》這本書自然是經典中的經典。
03作為一名程式設計師,學習時下新技術是生存下去的不二法則!在人工智慧發展如此興盛的時代,學習機器學習自然是首選。我買的第一本人工智慧的書是《深度學習:核心技術與實踐》,後來的學習就大部分看電子書或者影片了。
要學習人工智慧,學習Python的書當然是必備。我買了《Learning Python》的英文版,上下兩冊。雖然沒看完,但是一直視為寶貝。
04對於什麼都好奇的我,還特意買了兩本關於區塊鏈的書,不過這兩本書基本沒怎麼看。還真是應了那句“書非借不能讀也”的古語。它們是:《區塊鏈革命》和《區塊鏈技術指南》。
-
8 # 計算機視覺聯盟
本人中科院畢業,從大學開始學習程式語言,列舉一下本人在學習過程中覺得很好的程式設計書籍:
《The Pragmatic Programmer》,中文版本《程式設計師修煉之道》這本書直擊程式設計陳地,適用於所有程式語言,建立使用者樂於接受的、可工作和易維護的程式碼。它不僅會改變你的程式設計習慣,還會改變你的性格。
這本書對許多有趣的領域都提出了真知灼見,如各種探索性程式設計,在程式碼中編碼,從模型中分離的觀點,昂貴的工具並不產生更好的設計,開發一個偉大的團隊,管理預期,避免知識的重複等。
《The Mythical Man-month》,中文版本《人月神話》非常經典,被奉為軟體行業的聖經。
《Clean Code: A Handbook of Agile Software Craftsmanship》,中文版《程式碼整潔之道》這是一本關於軟體工藝史詩般的書籍。這本書不僅會告訴你如何編寫好的程式碼,而且還提供了軟體開發的高效途徑。照著去做的話,必將改變你的工作前景。
程式碼質量與其整潔度成正比。本書閱讀物件為一切有志於改善程式碼質量的程式設計師及技術經理,內容涵蓋從命名到重構的多個程式設計方面,雖然書中所有的例子都用的Java,但其經驗適用於任何程式語言。
《Working Effectively With Legacy Code》,中文版本《修改程式碼的藝術》作者世界級的面向物件技術專家,以豐富的軟體專案開發經驗著稱。他以獨到的洞察力,以及多年開發和指導軟體專案所積累的豐富經驗和深厚功力,針對大型的、無測試的遺留程式碼基,提供了從頭到尾的方案,讓開發者能夠更有效地應付它們,將遺留程式碼基改善得具有更高效能、更多功能、更好的可靠性和可控性。本書是一部里程碑式的著作,更是程式碼修改技術的集大成之作,可以大大提高對程式碼和軟體開發的領悟力。
《程式碼大全》真正的一本百科全書——960頁的最新修訂,解釋了軟體開發的每個方面。從程式碼結構,程式碼格式化,到變數、方法和類的命名,再一路說到管理一個團隊,對所有一切都提出了實用的建議。
C++ Primer中文版本書是久負盛名的C++經典教程,完美結合了C++大師Stanley B.Lippman豐富的實踐經驗和C++標準委員會原負責人Josée Lajoie對C++標準的深入理解,已經幫助全球無數程式設計師學會了C++。
-
9 # 機器學習前沿學生社群
我先不談哪些書是寶貝,我先放一張我的筆記截圖本人機器學習理論閱讀筆記
這個圖片是剛剛我從我桌上型電腦上截圖的。這是機器學習《西瓜書》的理論筆記,好記性不如爛筆頭,當然程式設計師如果只寫也不行,也要敲程式碼。我的很多筆記一方面是雲筆記記錄了,另一方面是用A4紙張手寫的然後掃描記錄的。我以前記錄了太多太多筆記,由於沒有好好整理,就直接扔了,所以最近將筆記掃描下來以作留存。
如果你有耐心學習,或者說不是簡簡單單的收藏,而是用心學習,請您繼續往下看推薦的書籍,如果沒有耐心,那就不必浪費這時間看我的回答了,直接去看部電影會輕鬆的多放一張程式設計師好友的書桌照片,實拍圖我就其中幾本不錯的書籍推薦一下:
《程式碼大全》《鳥哥的Linux私房菜》《C++Primer Plus》《演算法導論》《程式設計珠璣》《Effective C++》書中自有黃金屋書中自有顏如玉我先列這一部分書吧,列多了,不看也不管用
-
10 # 小波1457205
語言這塊,thinking in c++, thinking in java 這是十年前我們那時候比較經典的書籍
回覆列表
如果是剛入行的話可以看看《如何預防頸椎病》《如何預防脫髮》老程式設計師可以看《頸椎病康復治療》《脫髮再生治療》之類的