UNIX系統程式設計的瑞士軍刀 --《UNIX環境高階程式設計》書評
這本書UNIX時候經常提到的,大名鼎鼎的APUE。在UNIX下程式設計同學,如果沒看過此書,就好比是科幻迷沒看過星球大戰。這本書的作者,W.Richard Stevens可以說是UNIX和網路的權威人士,他所著的《TCP IP詳解》被無數論文引用。
把這本書比喻成瑞士軍刀有幾個原因
1.【全面】這本書幾乎涵蓋了UNIX環境所有的程式設計主題,從UNIX的標準化,到檔案I/O,目錄操作,然後到程式控制,程式間通訊,訊號最後是網路可以說是一應俱全。同時這本書的章節安排也非常合理,總共21章,每章的長度基本相當,沒有那種頭重腳輕,某些章節大段敖述的情況,即使從頭到尾一個一個章節讀也不會感到乏味。
2.【精緻】書中的程式碼示例質量非常高,第一次讀的時候就有感慨,程式碼質量比我專案的程式碼還要高。可以看到作者對於每個函式的返回值都有精心的考慮和細心處理,而且作者對於程式設計時的細節也很嚴謹,在設計多程式的時候,都會對併發控制,臨界區域有非常深入的思考。
3.【均衡】如果你隨手翻一下這本書,你會發現這本書的例子非常多,但是和很多國人書籍的程式碼堆砌不同的,書中的例子都是精心挑選的,每個例子的程式碼都儘可能短卻又不失嚴謹。而且作者對於每個例子都會有講解,對於一些較難理解的底層原理都會圖文並茂的講解。
4.【權威】這本書裡幾乎所有的例子都符合POSIX標準,而且FREEBSD,LINUX,MAC作業系統上進行了測試,我自己是在FREEBSD實踐的,並沒有使用作者提供隨書原始碼,而是一行行敲進去編譯執行的。程式碼沒有一點問題,甚至連細小的編譯錯誤都沒有。而且這本書裡還提供了許多系統函式的POSIX標準實現,對我們理解UNIX程式設計是一個很大的幫助。
當然這不是一本簡單的書,要讀懂這本書,首先你要有過硬的C語言功底,瞭解GCC編譯,會用GDB來做DEBUG,再則你要對UNIX的一些常用命令和常識有了解,最後就是如果有一些作業系統的基礎知識會幫助你更好的理解其中一些比較難的主題,比如什麼程式間通訊,訊號等等。
相關文章
- unix環境高階程式設計(中)-程式篇程式設計
- 程式程式設計1 – Unix環境高階程式設計7章讀書筆記程式設計筆記
- 程式程式設計2 – Unix環境高階程式設計8章讀書筆記程式設計筆記
- UNIX訊號(signal)程式設計 - UNIX高階環境程式設計第10章讀書筆記程式設計筆記
- 程式程式設計3 - UNIX高階環境程式設計第9章讀書筆記程式設計筆記
- unix環境高階程式設計(上)-檔案篇程式設計
- UNIX環境高階程式設計——執行緒和fork程式設計執行緒
- unix環境高階程式設計(下)-高階IO和程式間通訊篇程式設計
- UNIX環境高階程式設計習題——第二章程式設計
- Unix環境高階程式設計——第一章-UNIX基礎知識程式設計
- Unix環境高階程式設計——開源的標準化努力程式設計
- 推薦一本技術類書籍:Unix環境高階程式設計程式設計
- 《unix環境高階程式設計》書中原始碼編譯問題解決程式設計原始碼編譯
- Unix除錯的瑞士軍刀:lsof除錯
- 《UNIX環境高階程式設計》apue原始碼Ubuntu下的編譯程式設計原始碼Ubuntu編譯
- 第一篇:《UNIX 環境高階程式設計》編譯環境的搭建程式設計編譯
- Unix高階程式設計學習筆記--系統呼叫簡介程式設計筆記
- unix環境多程式程式設計----用到的32個系統呼叫祥解(轉)程式設計
- 《UNIX環境高階程式設計》(APUE) 筆記第十一章 - 執行緒程式設計筆記執行緒
- 使用pthread庫進行多執行緒程式設計1 - UNIX環境高階程式設計第11章讀書筆記thread執行緒程式設計筆記
- 使用pthread庫進行多執行緒程式設計2 - UNIX高階環境程式設計第12章讀書筆記thread執行緒程式設計筆記
- DevToys Mac程式設計師神器,號稱開發者的瑞士軍 刀devMacC程式程式設計師
- Unix哲學(Unix程式設計藝術)程式設計
- Unix程式設計藝術,Unix哲學程式設計
- 程式設計師的瑞士軍刀DevToys推出vscode外掛程式設計師devVSCode
- Unix環境程式設計之定時、訊號與中斷程式設計
- 《Unix 網路程式設計》15:Unix 域協議程式設計協議
- 好書短評之《Linux/Unix設計思想》Linux
- UNIX系統程式設計常用庫函式說明(轉)程式設計函式
- UNIX環境程式設計-第四章檔案和目錄程式設計
- UNIX多執行緒程式設計執行緒程式設計
- C 語言程式設計(unix) (轉)程式設計
- unix系統環境檢查
- Unix/Linux環境C程式設計入門教程(30) 字串操作那些事兒LinuxC程式程式設計字串
- 每個程式設計師都應該讀《Unix程式設計藝術》程式設計師
- [微博活動]《UNIX網路程式設計》 卷1 轉發贈書程式設計
- 《LINUX與UNIX SHELL程式設計指南》讀書筆記(轉)Linux程式設計筆記
- 設定linux/unix的shell環境Linux