2010-06-02 135 views
2

沒有獲得CS學位已經在我的編程相關知識中留下了大量漏洞。 特別是我真的很想學習一些我在CS學位獲得的計算機網絡。 我真正的問題是「不知道我不知道什麼」。 到目前爲止,我知道,我不知道下面的事情(只要計算機網絡concearned)學習網絡基礎知識

-sockets

-ports

-Internet協議(全IP堆棧我不斷聽到關於)。

任何人都可以添加更多的名單? 誰能提前

+5

我有CS學位,我對這些事情一無所知。他們是400級選修課(在UIUC),我選擇採取不同的選擇。我現在意識到我的選擇很差,不切實際。網絡會更聰明。 – Tesserex 2010-06-02 17:09:12

回答

0

我推薦閱讀Stevens的TCP/IP Illustrated,第1卷。這非常容易閱讀,並且最終你會學到很多東西,並且2)對你還不知道的東西有更好的瞭解。 :-)

至於優秀的項目,我建議先做一個玩具網絡客戶端。只需寫一些將下載網頁並將其保存到文件(如wget或curl)的東西。玩具網絡服務器是一個很好的第二個項目。

+0

謝謝你,我會檢查一下,我也喜歡你的想法。 TA! – bplus 2010-10-12 11:40:36

+0

感謝您的建議,但可以推薦過去5到10年內寫的東西嗎?這本書是從1993年開始的,這讓我覺得現代時代所用的東西很多。 – Azurespot 2016-04-19 00:25:15

+1

@NoniA。這本書的第二版(由Kevin Fall更新)於2014年發佈。ISBN 9332535957。 – 2016-04-21 20:48:37

1

這是一個很好的點,並瞭解更多的建議項目(寫一個玩具的Web服務器?)

由於通常是很有益的。但我會深入地說,網絡系統的知識確實只對特定類別的編程問題是必需的。大多數編程項目不需要這麼深刻的知識。本質程序員和網絡專家(微軟喜歡稱他們的IT專業人員)是兩種不同的職業(除少數情況外),他們甚至需要兩種不同的思維方式。

+0

IT專業人員需要了解很多關於配置網絡(路由器,服務器等)的知識,但原始海報正在詢問網絡編程。網絡編程在程序員的工具箱IMO中非常有用。顯然,這取決於您計劃編寫哪些類型的應用程序。 – 2010-09-18 16:55:25