1. 程式人生 > 實用技巧 >Linux菜鳥到老鳥的那些建議

Linux菜鳥到老鳥的那些建議

相信很多同學對Linux的認識並不多,平常接觸的也不多,對Linux的開發運維等也是一無所知。如今,如果要做一名優秀的程式猿,掌握Linux知識已經是一門必備技能了。

下面我會根據我近幾年的Linux工作經驗以及對Linux的瞭解,談談Linux學習的過程中應該注意的一些問題,希望能使剛入行的小白少走彎路,儘快入門。

對於一些剛入行的小白來說,很多同學並不熟悉Linux,因為平常使用Window、MacOS較多,對Linux並沒有太多的接觸。所以最開始我先給大家從Linux基礎講起來入門學習。

Linux其實並沒有大家想象的那麼神祕和複雜,但是需要你有耐心、愛折騰。比如要徹底熟悉Linux的分割槽並且熟練使用LVM,沒有多次的Linux裝機是不可能實現的,所以一定要愛折騰、有探索精神。對於“菜鳥”來說,如果你是剛開始接觸Linux的話,建議你現在虛擬機器中執行Linux,虛擬機器的話大家可以用VMware或者VirtualBox,這裡我推薦使用VirtualBox,因為它小巧,安裝包才80M,而VM卻有600M,對於剛入行的小白來說並不需要VM那麼多功能,會造成資源消耗。而且VirtualBox是免費的,VM是收費的,VirtualBox完全能滿足你的需求,所以這裡建議VirtualBox。

在Linux版本上呢,建議大家使用Ubuntu,這個版本比較適合純菜鳥,它對系統穩定性要求比較弱,入手比較容易。當然還有一些Debian、Arch、Gentoo、CentOS、LFS等版本,可以說他們都是親兄弟,大家可以在學會使用其中一個之後在更深入的瞭解其他版本。

在你挑選了一個合適的Linux系統版本之後呢,你需要在虛擬機器上安裝他,這裡建議你儘量不要使用圖形介面,因為Linux與Window最大的區別就是Linux的命令列,儘量使用命令列解決你在開發中遇到的問題。在學習命令列的過程中你需要簡歷自己的知識庫,積累學習過程中所用到的命令列,起碼常用的命令你都需要記錄下來。

在熟悉了Linux的命令列之後呢,下一個階段你需要學習Linux上的C/C++的開發、Bash指令碼程式設計、Java等等。建議你不要使用圖形介面的IDE,而是使用VIM,因為VIM更適合小白,在熟練了VIM之後再使用Eclipse,GCC,Make等工具。建議開始階段不要使用IDE來開發是因為這不是Linux的文化,整合的開發環境容易使你忽略很多你本該注意的問題。IDE會幫你配置好很多東西,這樣就會使你變懶,懶得去了解那些配置知識。

學習過程中遇到問題當然要多上網上查,但是手頭必須要有一本很好的Linux教材,這裡建議大家學習《Linux就該這麼學》,這本書對小白來說編寫的非常友好,不像鳥哥的私房菜一樣寫的繁瑣,像字典一樣。也可以去官方站點看電子書網站叫linuxprobe,多學習書籍還是相當有幫助的。這本書讀完後相信你的技能會大漲,你會對Linux程式設計有深入的瞭解,你會知道Linux和Windows的差異在哪兒?各有什麼優缺點?Linux常用命令是那些?還有Linux系統程式設計的常用操作。

這個階段可能很艱難但是一定要度過,這是學習Linux的底線也是最重要的基礎,如果你連這個階段都沒有度過或者感覺厭煩的話,那你還是放棄Linux這條路吧,因為後期會有更大的挑戰,如果懷著厭煩的心態去學習是走不遠的。

在你學習到這個階段的時候,是時候做分流了,你可以從網路、圖形、嵌入式、裝置驅動四個方向中選擇一個你感興趣的方向去擴充套件延伸。比如你選擇的是網路的話,你可以進行編寫伺服器軟體以及高效能併發方面的程式設計。我自己也是做這方面的,這個層面的技術含量還是很高的,也是非常有職業前景的,如果你對這方面感興趣的話,可以選擇這個方向。

如果你還喜歡驅動程式設計,那你需要多學習一下更底層的通訊協議,比如鏈路層,寫路由驅動、網絡卡驅動、網路裝置驅動和嵌入式軟體等等。如果你這些都很熟練的話,一般的網路公司都會毫不猶豫的聘用你。

如果是圖形方向也是很有前景的,比如遊戲開發、影視動畫特效、GPU計算技術網頁渲染。

如果是嵌入式方向的話,你需要掌握系統架構,ARM、微控制器等等。走這個方向的話你需要對硬體有很好的瞭解,否則你是做不深的。很多同學都是不懂硬體就選擇了這個方向,結果卡在了半路上。如果你是電子專業出身的話,那這條路是很適合你的。

好了,這就是我一個Linux“老鳥”對剛入行的“菜鳥的一些建議,希望對大家能有幫助!”