當前位置:編程學習大全網 - 網絡軟體 - 《UNIX環境高級編程》這本書怎麽看?怎麽學習

《UNIX環境高級編程》這本書怎麽看?怎麽學習

W.Richard Stevens 先生所著之書比較適合有經驗的人進壹步深入學習

W.Richard Stevens 先生所著的UNIX 環境高級編程、UNIX網絡編程、TCP/IP詳解是難得的入門好書,但這裏的入門指得是研究生級別的入門。Stevens 先生所著之書多半是為了給研究生上課時用做教材,因此 Stevens 先生假設閱讀這些書的人至少已經接受過了系統的計算機技術本科教育,已經擁有了比較系統的計算機相關基礎理論知識。在書中 Stevens 先生假設讀者擁有了最基礎的操作系統理論,網絡技術理論,以及UNIX理論和實踐經驗,並擁有數種業界常用的UNIX系統作為學習環境(在國外的大學裏很容易獲得),這樣才能體會書中所述的細節。因此這些書剛接觸時看似通俗易懂,但在閱讀細節上卻對讀者要求甚高,如果沒有足夠的專業理論和系統實踐是很難真正讀進去的。

所以,對於沒有接受過系統的計算機專業教育的愛好者,或者主要以 linux 系統維護,或以linux 桌面應用為主的普通用戶,Stevens 先生的書並不是很合適的閱讀對象。

因此,就我個人的看法,掌握任何壹種知識都是需要投入的。我們需要花費金錢去得知識來源(花錢買書,花錢上網,花錢培訓),需要花費寶貴的時間去閱讀(人生匆匆幾十年,沒多少時間可以給我們去浪費),需要花費精力去理解書中的內容(基礎知識越紮實,理解所學內容越快,但累積基礎同樣需要大量時間和精力),需要找到合適的環境(光看不實踐心裏是不會有底的)去驗證自己掌握的東西。因此,如果在決定投入之前,先要摸清楚自己到底想要達到什麽樣的目標,這個目標是否切合自己的實際(相信壹個在流水線上辛苦勞作的普通工人,即使學會了計算機編程也是沒有用武之地的,除非他有機會離開流水線)。自己是否有足夠的資源承載自己的理想(如對於溫飽問題尚未解決之人,要他花上千上萬的錢去學MBA顯然是不現實的)。

同時,任何壹本書都會對讀者提出壹個基本的知識架構和程度上的要求,比方說即使是文學博士,讓他去讀高能物理學方面的書也會要他的命的。因此在選擇所讀之書前,先要對自己的實際能力做壹次詳細的評估,看自己目前到了哪種階段,是否有能力去掌握自己想要掌握的東西。千萬不要因為好高騖遠而勉力為之。選擇適合自己當前水平的書去閱讀並理解,遠好過拿著大師所著的神作幹瞪眼。

如果主要希望掌握UNIX下的編程技術,尤其是網絡編程技術的話,可以有兩條路走:

1、以實際需要完善知識架構:為自己做壹個項目,比方說自己寫個簡單的 Web 服務器,因為現在 Web 應用非常豐富,既有成熟的客戶端如瀏覽器可以配合,又有足夠全的文檔如 RFC文檔可供參考,再加上最基本的 socket 編程經驗,就可以開始做自己的 Web 服務器。壹步壹步的為 Web 服務器添加流行的功能,如支持後臺 FastCGI 接口,支持 WebDAV,支持流媒體等。在這個過程中不斷地學習和掌握相關的理論知識,有時在發覺設計上的不足時甚至需要推翻全盤重新架構。當最終壹個完全符合自己心意且足夠實用的 Web 服務器做成時,就擁有了可以由自己支配和修改的服務器,同時也掌握了相關的專業理論。這種方式比較適合有壹定專業基礎的人使用。優點是直觀,方向明確所以學習效率高。缺點是需求驅動,形成知識架構不容易完整。

2、系統掌握計算機專業理論:最好的書就是大學裏的理論教科書,這些書不會去講解過於具體的計算機應用,而是從概念開始講起,力圖使學習者獲得壹個完整的知識體系。只要以後碰到的工作和這個知識體系相關,自然就能很快學會。這種方式比較適合沒有基礎,或者希望深入學習的人使用,優點是知識架構會逐漸趨於完整,理論功底紮實,後勁足。缺點是花費時間長,方向不明確所以學習效率低,初期會因缺少實踐而進展緩慢。

  • 上一篇:香港有哪些福祿壽主演的電影
  • 下一篇:“紐約留學女”王意揚是個怎樣的人?
  • copyright 2024編程學習大全網