作者 | 地球的外星人君
來自知乎 https://www.zhihu.com/question/54825393
建議放棄這個想法。
工具只是工具,學習靠的是人。
為了打消這個念頭,本文詳細解釋一下原因。
首先,樹莓派是什麼?
樹莓派是一種便宜的卡片式Linux電腦,風靡全球。它是世界上眾多廉價又成熟的電腦之一,只要35美元,而且十分容易上手。 樹莓派能替代日常桌面計算機的多種用途,包括文書處理、電子錶格、媒體中心甚至是遊戲。並且樹莓派還可以播放高至1080p的高畫質影片。
樹莓派有成千上萬種玩法,但常常有些人心血來潮買了樹莓派後,卻突然不知道自己要用它來做什麼了。
電腦能做的大部分事情,在樹莓派上都能做,而樹莓派以其低能耗、移動便攜性、GPIO等特性,很多在普通電腦上難以做好的事情,用樹莓派卻是很適合的。
用樹莓派打造一個家庭影院
把樹莓派配置成無線路由器
用樹莓派搭建BT下載伺服器
拿樹莓派當FTP檔案伺服器
在樹莓派上搭建程式碼託管服務(SVN)
對於培養動手能力大有裨益,但是具體學習Linux和Python,可以說並不適合。對Linux初學者來說,比較重要的幾點:
1. 選擇適合自己的Linux發行版
談到Linux的發行版本,太多了,可能誰也不能給出一個準確的數字,但是有一點是可以肯定的,Linux正在變得越來越流行,面對這麼多的Linux 發行版,打算從其他系統轉到Linux系統來的初學者可能會感到困惑,即便是忠實的 Linux 使用者也沒有時間和精力去挨個嘗試,因此初學者在學習Linux的之前,需要有一個明確的方向,選擇一個適合自己的系統開始學習Linux至關重要!
2.養成良好的linux操作習慣
當你進入Linux的學習之後,請不要用windows的工作方式來思考問題,因為它們之間確實有很大的不同,比如它們之間的記憶體管理機制,行程執行機制等都有很大不同,這些異同點將在下麵章節陸續講述,因此,拋開windows那種思維,用全新的理念嘗試去挖掘linux身上特有的潛質,對初學者至關重要。
3. 習慣命令列方式
Linux是一個命令列組成的作業系統,精髓在命令列,無論圖形介面發展到什麼水平,命令列方式的操作永遠是不會變的,Linux命令有許多強大的功能:從簡單的磁碟操作、檔案存取、到進行複雜的多媒體圖象和流媒體檔案的製作都離不開命令列。雖然Linux也有桌面系統,但是X-window也只是執行在命令列樣式下的一個應用程式。
因此,可以這麼說,命令是學習Linux系統的基礎,學習Linux,很大程度上就是學習命令,很多Linux高手其實都是玩兒命令很熟的人。
4.理論結合實踐
有很多初學者都會遇到這麼一個問題,說到系統的每個命令,都很熟悉,但是在系統出現故障的時候,面對出現問題的Linux系統無從下手了。不知道在什麼時候用什麼命令去檢查系統,這是很多linux新手最無奈的事情了。說到底,就是學習的理論沒有很好的與系統實際操作相結合。
很多Linux知識,例如每個命令的引數含義,在書本上說的很清楚,看起來也很容易理解,但是一旦組合起來使用,卻並不是那麼容易,沒有多次的動手練習,其中的技巧是無法掌握的。
5.學會使用Linux聯機幫助
主流的Linux發行版都自帶了非常詳細的說明檔案,包括使用說明和FAQ,從系統的安裝到系統的維護,再到系統安全,針對不同層次人群的詳盡檔案。仔細閱讀檔案後60%的問題都可在這裡得到解決。
6.學會獨立思考問題,獨立解決問題
遇到問題,首先想到的應該是如何自己去解決這個問題,解決方式很多,看書查資料,網路搜尋引擎,技術論壇等等,透過這幾種方式,90%的問題都能得到解決,透過這種方式一方面鍛煉了自己獨立解決問題的能力。另一方面技術上也能得到快速提高。
7.由低至高,循序漸進
到這裡,Linux的學習路線圖,僅給初學者作為參考。
初級階段:
高階階段:
Python學習的幾個階段:
無論是Linux還是Python,工具只是工具,學習靠的是人。
學習過程對於硬體都沒什麼要求,對於知識的掌握才是核心。理論上用樹莓派學習當然可以,但對於初學者來講,特別是Linux相關的不夠熟練,還是不太建議你是用樹莓派來進行學習。
樹莓派是一個很需要DIY能力的“玩具”,非常酷炫,機具創造性但對於入門學習幾乎沒有什麼幫助特別是對於Python,即使Windows環境也完全不會影響你的學習。
記住:在未入門之前,應該儘力去降低自己的學習難度,而不是為了好玩或者其他原因,來憑空給自己的學習道路增加許多麻煩。
你有什麼好玩的樹莓派玩法,歡迎評論裡面交流哦~
●本文編號340,以後想閱讀這篇文章直接輸入340即可
●輸入m獲取文章目錄
Linux學習
更多推薦《18個技術類微信公眾號》
涵蓋:程式人生、演演算法與資料結構、駭客技術與網路安全、大資料技術、前端開發、Java、Python、Web開發、安卓開發、iOS開發、C/C++、.NET、Linux、資料庫、運維等。