1. 程式人生 > 實用技巧 >從零開始自學Linux,一篇文章帶你快速找準學習方向

從零開始自學Linux,一篇文章帶你快速找準學習方向

學習Linux系統程式設計,採用視訊和書籍的方式進行比較好。不管是視訊還是書籍,一定要看最經典的。市面上有太多良莠不齊的視訊和書籍,如果選擇了一個質量不好的材料來看,不僅會浪費很多時間,而且有可能還會被誤導。對於視訊的選擇,可以去各大培訓機構,裡面通常有一些免費視訊資料供我們下載。

對於Linux應用的學習,主要有六部分:1. 環境搭建;2. 基本操作;3. 系統程式設計;4. 網路程式設計;5. 資料庫程式設計,6. Shell程式設計。下面一一詳細介紹。

1. 環境搭建

作為Linux工程師,毋庸置疑一定需要Linux環境。對於Linux環境的獲取,我們通常有兩種方式:

將電腦整體安裝為Linux系統;

在電腦裡安裝一個虛擬機器,跑Linux電腦;

Window+Linux雙系統。

得到Linux環境後還不夠,還要知道如何配置、如何遠端連線Linux電腦、如何與Linux電腦互傳檔案、如何在主機上閱讀Linux電腦中的程式碼,等等。

2. 基本操作

眾所周知,Linux很少或幾乎沒有介面,所有的操作幾乎都可以通過命令列來完成。對於運維人員來說,需要掌握相當大量的Linux命令。而對於應用、驅動方向的人員來說,只需掌握一些基本的常用的命令即可。

3. 系統程式設計

在學系統程式設計之前,一定要先學習Makefile,這會為後續的學習提高很大效率。之後的系統程式設計,主要有幾大塊:IO程式設計、程序、執行緒、程序間通訊(包括管道、訊號、訊號量、共享記憶體等)。這幾部分學完了,基本也就差不多了。

4. 網路程式設計

網路程式設計主要就是socket,poll,epoll,以及對TCP/IP的理解,同時要學會高併發式伺服器的編寫。

5. 資料庫程式設計

資料庫的內容其實並不屬於Linux,但在專案中經常要用到。這部分主要要學會資料庫的基本操作,以及如何寫一套介面去操作資料庫。

6. Shell程式設計

Shell是Linux下的指令碼語言,功能雖然不如高階語言強大,但它可能做很多事,在某些場合甚至比高階語言要方便得多。當然除了Shell指令碼,還有Python指令碼。

Linux應用程式設計書籍推薦:

a. UNIX環境高階程式設計。簡稱APUE,號稱程式設計師的聖經。它不是一本API字典,它還講述了很多作業系統的細節,記憶體,檔案系統等方面,是一本難得的好書。但是它起點有點高,不適合初學者。

b. Linux程式設計。如果覺得APUE有點難入門的話,可以選擇此書進行入門。

c. Unix/Linux系統程式設計手冊。這本書號稱是一本超越APUE的書,它是一本比較新的書,裡面新增了APUE所沒有的Linux/Unix新特性。而且對於一些概念性的東西講的確實比APUE好。但至於能否超載APUE,還有待歷史的考驗。

d. UNIX 網路程式設計。也是一本非常經典的書,主要是網路程式設計方向的。

e. MySQL必知必會。本書在Amazon上長期排在資料庫銷售榜首,建議想快速瞭解資料庫原理和MySQL的新手閱讀。快餐性質,簡潔明快,小開本,而且很薄,比較好閱讀。

f. Linux Shell指令碼攻略。這本書很薄很精華,它追求的不是全,而是精,所以用它來入門再適合不過了。

學完以上六部分,基本就有能力完成Linux環境下的應用程式設計了。

但如果你想以程式語言立生,建議你先學習C語言打好基礎。C語言是一門通用計算機程式語言,是面向過程的語言,其語法結構及其嚴謹,且應用十分廣泛。而且只要將C語言研究透徹了的話,學習其他語言就會輕鬆很多。

瞭解學習更多有關C/C++知識,領取免費資料,【點選連結】瞭解更多!