為什麼計算機專業的學生要學習使用 Linux 系統?

1.請回答盡量能使軟體工程專業大二(學了C語言、數據結構、數字邏輯)的學生能聽懂。
2.我該怎麼入門使用Linux?


13 年寫的,有空可以看看,《為什麼計算機的學生要學習 Linux 開源技術》:http://www.tinylab.org/why-computer-students-learn-linux-open-source-technologies/

裡頭涉及了相關課程的必要資料、實驗環境、開發工具以及開放書籍。

~~~~~

增補一些信息,希望對大家有幫助:

最近又抽空更新了這篇文章,加入了實驗實踐和視頻演示的內容,希望可以幫到更多希望快速進入 Linux 世界的同學們。

另外,最近也陸續組織了幾場技術直播,前兩場介紹了 Linux Lab,最近一場(2017.9.23,本周六)下午2點研究古董 Linux 0.11,主要介紹如何用 Linux 0.11 Lab 高效地做 Linux 0.11 操作系統實驗:

http://tinylab.org/tech-live-learning-linux-0.11/

相關直播都有錄製,回放剪輯後會上傳到騰訊視頻,完全公開免費。

剪輯的視頻回放地址:

http://v.qq.com/vplus/4d97f091fb31f9fdf9bb462829b154a5

最近幾場直播的信息:

http://tinylab.org/albums/#linux-直播-ref


因為Linux在伺服器領域佔領絕大部分份額。做軟體開發,免不了要跟Linux打交道。
比如互聯網行業,前端Web開發,後端的Web伺服器、資料庫、存儲設備基本上都是跑在Linux上的。


我不是計算機專業的,但作為一個外人,談談自己的感受,希望對樓主有幫助。
和樓主一樣,我接觸linux是在大二。對我而言,linux給我最大的財富,並不是編程能力提高了多少,而是視野的開闊、心態的轉變和自學能力的提高。
學校不會開一門linux入門的課,身邊估計也不會有同樣喜歡搞linux的同學(名校或者計算機專業應該會多一點,我知道南大的open社團貌似就很成功),所以學習基本全靠自己,遇到了問題主要就是Google了,這過程也許比較痛苦。但當樓主以後若是遇到需要自學一塊以前自己完全不曾涉略的領域時,你很可能就會比別人駕輕就熟很多,我想這應該感謝學習linux帶來的自學能力的提高。還有不得不提的一點,我個人覺得linux對我、也許也是絕大部分人來說是一扇很好的窗口,它會把你引向python、lisp、人工智慧、計算機視覺等等方向,強大的好奇心和旺盛的求知慾會讓大學剩下的時間更有價值。
同時,接觸linux後,讓我對這個世界樂觀很多,外在世界的色彩似乎也鮮艷明亮了不少。雖然有商業公司的出於商業目的的大力支持,但這絲毫也不能減損linux、開源運動、自由軟體運動的理想主義色彩,還有什麼能比一個烏托邦的簡陋小房子成長成一座富麗堂皇的華美大廈還要激勵人呢?

對於入門使用,個人經驗,建議樓主先使用ubuntu一段時間,將一些常用命令,vim等熟悉後,馬上轉到archlinux,中間最好不要在別的發行版上浪費太多時間(我就分別在Ubuntu、Mint、Fedora上都停留了很久,但回過頭來看,那段時間並沒有進展……所以是血淚的教訓),安裝arch必然會讓樓主有不一樣的體會。
鳥哥的私房菜作為入門很不錯,最好是帶著目的去讀,不然看過的命令,看過也就看過了,用的時候根本不記得。
多動手,可以自己找一個開源項目練練手,也可以去找老師,看看有什麼好的項目可以做的。我始終覺得在大學裡最好的學習途徑還是跟老師多接觸,跟著老師做項目,有個過來人指導會順利不少。
最後補充一點,樓主可以找所在城市的LUG組織,參加他們的活動,認識一些牛人。其中有很多並不從事軟體行業,但他們所做的事情或多或少跟linux有關,你肯定會收穫很多。

----------------------------------------------------------------------------------------------------------

剛剛開始使用Gentoo,承接上面的,建議樓主在體會過arch後也試試安裝下Gentoo,各種滋味只有試過才知道。

為什麼要學習Linux?
總而言之,我覺得Linux不是學習的終點,她只是通向封閉的牢籠外廣闊自由的知識天地的一扇窗。
也許,會有人告訴你還有別的Windows存在,但是Linux這扇窗肯定是最烏托邦、最有理想主義色彩的,尤其在這個無處不要向現實低頭的社會。

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
一年後,再補充一下,我回到Ubuntu了,挺好的。
接觸開源的東西有兩年了,作為一個普通用戶而非開發者,我覺得開源領域,一種宗教式的狂熱崇拜始終存在,比如Linux系統,比如函數式編程,比如Emacs/Vim。現在讓我看來,Arch/Gentoo未必好於Ubuntu,haskell也不一定就完美無缺,C++也沒有大家抨擊的那麼爛,IDE也不是一無是處,所見即所得的Lyx/Texmacs也不一定不好。
我上面的回答,可能會暗示Arch/Gentoo之類好於Ubuntu啥的,如果對樓主造成了錯誤影響,我表示很抱歉。
我覺得,最重要的是,自己多經歷,只有都經歷過後,才能根據自己的判斷做出自己的選擇,而不是被別人忽悠。


對於計算機系的學生來講,使用Linux是個不錯的選擇。

因為它確實有很多優點。

1.省心

如果你經常重裝系統(對於那些經常搗鼓系統或是有軟體潔癖的人),或是偶爾需要來那麼一兩次。那麼你肯定就能體會到在Windows下配置環境的麻煩事兒。

  • 以Java為例:
  1. 在Windows下:
  • 首先我們得先弄一個JDK安裝包,確保沒有選錯,等待下載完成,然後準確地從文件中找到他。
  • 然後開始安裝,配置路徑(如果你有文件整理的習慣)和環境變數,等待安裝完成。
  • 最後因為環境變數的原因我們得註銷一下驗證結果。
  • 至此Over,但如果其中出了什麼問題,恐怕我們還得再倒騰一會兒。
  • 在Linux下:
    • 首先連上網路
    • 其次在命令行下輸入sudo apt-get update sudo apt-get install openjdk-7-jdk,鍵入口令,開始安裝。
    • 等待進度條,然後Over。

    重複幾次之後,我們就會發現使用apt-get進行安裝真是屢試不爽。除此之外還有很多東西都可以用它來完成:g++,scrapy,GIMP,jdk,ruby等等。敲兩行命令就搞定。而在Windows下這都需要一個又一個的軟體來補充。

    2.便利

    提到便利,主要針對的是剛剛裝完系統時的情況。此時Linux(筆者使用的是Ubuntu)下很多東西都會便利許多。

    • 如果你使用C語言,python進行開發,那麼在不依靠IDE的情況下那麼就已經可以開工了,因為這些都是系統自帶的。
    • 如果你需要處理辦公文件,那麼系統自帶的Libre Office已經基本可以滿足需求。

    瀏覽器也無需擔心,FireFox還是很不錯的。

    • 最實在的一點是,系統是免費的。

    這些便利的地方也往往是Windows下普遍的短處。

    • 首先開發環境需要自行搭建,系統是不帶任何工具的,這都得自己動手,豐衣足食。
    • 使用Office需要單獨安裝,這需要一定的時間。
    • IE應該也不是大家普遍常用的吧,裝一個瀏覽器,這又是一個活兒。
    • 最關鍵的一點,上面的許多工具都不是免費的午餐。除了在工具上我們可以使用替代的產品外,Windows這個系統本身,我們是跑不掉的。激活就是一個麻煩事兒。花錢還是花時間破解,二選其一吧。

    3.安全

    • 安全問題最早也是在Windows上流行起來的,Windows在系統方面做得很完整,不過在安全問題上確實不怎麼把關。Windows平台下一個軟體的執行,可以直接更改註冊表,啟動項,文件關聯,文件系統,開關機等等。而Windows平台本身卻並不為此提供多少安全方面的保障(這與Windows平台的主要適用人群有關)。所以,這部分缺陷不得不留給各大廠商的殺毒軟體來彌補。於是各種殺毒軟體大行其道。這對系統本身來說就像是一種諷刺。
    • Linux下相對來說要安全很多,首先因為他是開源的,里里外外一清二楚,眾目睽睽之下,群眾的眼睛是雪亮的。大的漏洞往往少很多。
      其二,幹什麼事兒都得驗證一下。軟體安裝卸載,系統更改,文件許可權設置,開關機等等,都得先報上口令,看看是不是本人操作。這些東西看起來挺麻煩,不過也確實為系統提供了很好的保障。至少針對與Linux的殺毒工具還是比較少的。

    缺陷

    事物往往都有正有反,Linux也未能例外。

    1. 首先圖形界面並非盡善盡美,界面很炫酷(Ubuntu Unity),bug也不少。我使用時就時常報錯。
    2. 沒有配置同步的功能。如果你之前改過系統,那麼重裝之後可能還得接著該。或者是自己手動導入備份。這一點就沒有微軟賬戶那麼方便了。
    3. 軟體不支持。因為沒有錢賺,所以很多Windows下的軟體很多都沒有Linux版本,或者有也很難用(沒有維護)。不過大都與開發無關,影響不大。

    總結

    如果一定要給個總結,那麼我認為計算機系的學生可以用Linux,也應該去學習、熟悉Linux。但是請不要認為Linux能給你帶來什麼附加價值,從而去鄙視使用Windows的同學,用Linux一點也不酷炫,真的。


    2014.1.24更新


    學習使用Linux系統並不是因為系統的優越性,而是因為Linux是操作系統大家族中非常重要的一員,有一些重要的開發環境和架構會重度依賴某些操作系統,因此計算機專業的學生很可能難以避免使用這種操作系統。

    我發現很多人特別容易陷入一個誤區,就是Linux多麼多麼的好,而Windows多麼多麼的槽糕。其實我想說,Linux沒有說得那麼好,而Windows也沒有那麼糟。至少,我從來不覺得放著好好的IDE按一下按鈕就能生成程序不用,而要自己用vi寫程序、用makefile組織gcc編譯連接在用gdb是一個很優越的事情。至於Windows為什麼沒有那麼糟,與題目無關,不做討論。

    作為一個計算機的學生,Linux相關的知識,無論是配置還是開發,都應該多多少少掌握一些,不然一旦被別人問起都不好意思抬頭。至於為什麼要學,自然是Linux這個東西有非常多的好處。Linux作為開源軟體中的傑出代表,是一個優秀的操作系統,這一點沒有人能夠否認。

    因為他開放的特性,以及在系統結構和機制上,有很大程度參考了UNIX,使得Linux系列的系統在安全性和穩定性上有著很明顯的優勢。又加上開源軟體免費的特點,Linux系統常常作為伺服器的操作系統被部署,尤其是不太原因在這些方面花錢的互聯網行業。而諸如金融、能源等不缺錢的傳統行業,也會使用不少Liux系統,而使用的原因就不是因為便宜了,需要付費的商業版本Linux叫價不見得比Windows要便宜。一些軟體生態系統、環境、架構會依賴特定的操作系統,當需要使用這些軟體的時候,就難以避免的選擇他所依賴的系統。

    對於一個計算機的學生,我們多多少少都要和伺服器打交道。即使你下定決心,只做Windows的主機應用程序,也很難保證遇不到這樣的一個東西,尤其當客戶要求你使用Linux的時候,你就是長了一萬張嘴也逃不出Linux的魔掌。所以,還是坦然接受他和學習他。

    比起Windows,Linux絕對談不上好用,甚至還會有些難用,我見到真正「使用」Linux的人都非常的少,除了少部分geeks或者開發需要外,沒有什麼人樂意一直在Linux下折騰東西。執行一個什麼命令很可能就要輸入密碼,有時複製文件也會因為許可權問題需要sudo,但是正是因為這些麻煩而又複雜的機制,Linux的安全性提高了很多,而Windows,為了對於用戶的可用性,安全性就做了一些犧牲。所以說Linux大部分的時候都不是拿來用的,而是運行在伺服器上,跑起來就再也不管了。

    怎麼入門的話,如果對於這個東西完全一無所知,可以先裝一個ubuntu嘗試一下,試著去理解這個系統,當然,如果怕搞壞電腦,可以裝載虛擬機裡面。當過了一段時間以後,對於Linux的目錄結構、工作機制、配置方法和一些常用命令稍微了解了以後,就可以開始用一些正經的系統了,比如說debian或者紅帽家族的centos,嘗試一下最小安裝(連圖形界面也沒有)以後,怎麼樣把需要用的環境和服務搭建起來。然後在試著在上面寫一些程序。到了這裡,往後再這麼樣那時候的你應該是清楚了,並且能夠決定該學一些什麼東西了。

    切記一點,學習要由淺入深。如果有人跟你說要你看一下內核的源碼,千萬不要理睬,也不要去看,至少在你覺得你能夠教別人用Linux之前,不要去嘗試。那種東西只能越看越是一頭霧水,從API管中窺豹也比這樣來得強。鳥哥那本書是一本不錯的書,值得看,爭取一個月之內甩開這本書(或者一個月太長,兩周?),接下來就是多查多學。

    2014.1.24補充:
    不得不使用Linux的情況舉兩個例子:
    Redis是始終著名的內存資料庫,特點是速度快、效率高,但是Redis沒有官方的Windows版本,Redis這樣高效的內存資料庫又是少有的,當你需要使用它的時候,你便不得不使用Linux。另外一個例子是nginx,也是一個著名的Web Server,nginx雖然有官方的Windows版本,但是官方也聲明了,Windows版本是試驗性質,僅僅能用,不要指望有很好的性能。

    使用Linux的好處還有一個,當時回答這個問題的時候沒有認識到。總的來說也不能說Windows不好,就是使用Windows伺服器的時候,如果只是你自己一個人管理倒也沒什麼。如果有別人管理,下一次你登錄伺服器的時候,沒準能看到各種安全衛士、優化大師、一鍵加速、快播之類熟悉的東西。


    我覺得使用Linux不僅僅是讓你計算機水平提升這麼簡單,它更多地是帶給你一種不同的世界觀。技術無好壞之分,關鍵是看你如何去認識它。作為一名計算機系的學生,很有必要去接觸一下Linux,它會拓寬你的技術視野,提升你思考的能力。但要注意:切莫跌入過分功利的深淵。


    推薦看鳥哥的《鳥哥的Linux私房菜》,可以了解很多Linux知識,我的好多學長都推薦這個入門。關於為什麼要學,對於我,我是首先使用了Linux的發行版,體驗了Windows以為的OS,然後覺得這個OS不錯,比Windwos舒服,然後在開發的時候自然就想再我喜歡的OS上做,所以就學習Linux的開發,這個是我的原因。其他人的原因我聽到的有1)源碼開放,可以用來學習了解,2)簡介,系統API少,可控性強 3)可定製型好 4)現在的雲系統很多跑在Linux上,這類開發要Linux相關知識 5)現在很多的伺服器使用的Linux,伺服器端工作需要他,6)很多專業軟體只有Linux/Unix版,不得不用Linux/Unix。7)要想開發上面說的那種「天大」的專業程序要以Linux為平台。


    個人理解,使用linux主要有兩個原因:
    1. 伺服器幾乎都是*nix,所以,這是必備技能
    2. 使用linux是為了使用命令行,使用命令行是為了自動化,使用自動化是為了提高工作效率,提高工作效率是為了提高產出,提高產出是為了提高成就感和公司收入

    所以,你看,使用linux是多麼重要。沒有一個大公司不要求linux的基本技能的,只是不同崗位要求掌握的程度不同。所以,如果題主還在讀書的話,我強烈建議培養自己使用linux的興趣,並長期堅持使用,對你提高工作效率和職場競爭力都有極大的好處。


    只推薦一本書《Unix編程環境》,極好的表達的Unix簡潔的設計思想。這本書雖老,但歷久彌新!可能還需要參考別的書籍和資料,推薦《Unix原理與應用》。入了門自然知道下一步怎麼走。


    計算機專業的學生,應該是專業性的(就是英文電影中經常出現的裝逼詞professional)。作為一個專業學生,應該對計算機系統具有足夠的了解和理解。
    也就是說,所有計算機專業的學生,應該知道「計算機不是僅僅是硬體,而且還包括了操作系統、系統支撐軟體、以及上層應用等」,而且還應該深入地理解計算機系統的基本工作原理。由於操作系統是計算機系統的一個重要組成部分,所以學生也應該很深入地學習操作系統。即使是以後只做應用層開發,也應該很透徹地理解操作系統。比如,我就見到過一個開發在線音樂播放app的筒子,不知道用多線程來解決在線音樂播放不流暢的問題。很顯然,即使告訴他去抄一段java的多線程源程,他也不知道用緩衝區去搞定,更沒有辦法去搞同步、加鎖的問題。
    操作系統的教學很重要。但是,很難。操作系統發展歷史久遠,但是在教學上,只到90年代中後期,操作系統的教學還非常困難。國外都是用unix進行教學,而且國外大學可以配得起unix機器。國內很窮,直到90年代中期,只有一些名校才有。那個時候,國內大行其道的是dos。但是dos是一個單用戶單任務的「磁碟操作系統」,不是一個真正意義上的操作系統,而windows 3.x是一個比較落後的操作系統,進程管理、進程間通信等都非常落後,調度策略也很差。直到windows nt出來以後才慢慢改觀。但是windows不開源,怎麼教學生?比如讓學生改一下調度策略?這個時候,linux橫空出世,徹底地解決了操作系統的教學問題。
    90年代末期,IBM出於某種原因,加入到linux陣營中。這是一個非常的轉折點。於是,90年代末期,越來越多的IT界主流公司加入到這個陣營。世界發生重大的變化。
    到了這個時候,計算機專業的學生,學習linux也就是一件很正常的事情了。


    國內BAT,以及大多數互聯網公司、大部分金融公司、國外絕大多數知名IT公司,都用linux某個版本做開發和系統部署,計算機專業的人很大概率會去這些地方,所以你要學習
    學一些基礎的命令和編輯,找個公司去實習鍛煉吧,學校裡面很難深入的


    對於一個學生來說,學習環境對以後的工作方向影響很大。

    很多人都是在Windows上開始學習編程的,最初可能會認為編程就是在IDE上寫一段代碼,
    然後按「Run」按鈕,看一下輸出。
    這時候去學習使用Linux的話,發現大家都不用IDE,而且打開一個編輯器,寫一段代碼,
    然後用一個編譯器去編譯這段代碼,然後在去運行。
    然後你就可以在這兩種開發方式上總結出一些本質的東西,忽略掉一些形式上的東西
    (界面,按鈕,配置,編輯器,編譯器等等),這樣的好處是,下次你到了一個陌生
    的開發環境下,你可以不慌不忙的找到你需要的工具,而不是某個按鈕的位置在哪裡。

    上面只是一個很小的方面,就算不是Linux,去嘗試一下在其他環境下開發,
    可以讓自己看得更清楚。具體到Linux來說的話,freealbert也說了一些了,
    每個人有不同的想法和感受,為什麼不親自花點時間去嘗試一下,然後選擇合適自己的呢?


    作為一個程序員,或者對編程有興趣的人,只有在Linux上,你才能真正的、透徹地理解大學所學的那些理論知識:進程到底如何實現?線程到底如何實現?進程/線程到底如何調度?多進程多線程如何同步互斥?內存如何管理?中斷到底是怎麼一回事?文件系統如何實現?磁碟到底怎麼讀寫?網路互聯到底如何實現?TCP協議如何實現?IP協議如何實現?OSPF協議怎麼實現?路由器和交換機到底如何實現?圖形界面到底如何實現?鏈表(單的雙的循環的不循環的)怎麼實現?哈希表怎麼實現?紅黑樹到底怎麼實現?AVL樹怎麼實現?基數樹怎麼實現?trie樹怎麼實現?最短路徑優先到底怎麼實現?程序編譯的過程到底是怎樣?每一步到底做了什麼又得到了什麼?我們在命令行下敲的每一個命令到底是怎麼實現?等等等等,只要在計算機科學的領域內,只要你想知道,只要你願意去了解,你就可以看到深入到源碼級別的實現(並且大部分都是現有的最優雅高效的實現),在Linux出現以前,關於操作系統核心的這些東西都是微軟那些少數的工程師才能接觸到的秘而不宣的機密吧?(或者其他一些公司?IBM/HP UNIX?可惜UNIX最終喪失了開源屬性,否則也就不會有Linux了),Linux的出現,讓這些曾經只屬於極少數精英的東西,變成了全世界每個人都可以平等享用的盛宴,從這個層面上,Linux提升了全世界對計算機科學的掌握層次,包括我國正在推的自主操作系統,都要從Linux裡面汲取源源不斷的靈感。

    對Linux有興趣的同學,可以嘗試一下Ubuntu,界面華麗不輸Win8,並且現在也有搜狗輸入法,WPS Office套裝,Chrome/Firefox瀏覽器等一系列工具軟體,新近的版本對雙顯卡的支持也有了長足的進步,wine也能無壓力運行大部分Windows軟體而不需要虛擬機,最主要的,騰訊的不配合已經不重要了(現在都是手Q微信了不是嗎),總而言之,Linux需要更多的關注(特別是在中國,在發達國家比如美德,Linux幾乎已經是CS學生必學的東西了),碼農們,你們還等什麼呢?

    題主也問了如何使用,以我個人經驗,先用《鳥哥的Linux私房菜》熟悉一下基本操作(注意這本書是基於CentOS的,和Ubuntu有一些地方不一樣,主要是一些配置文件的位置等等,遇到了谷歌就好),接著用《UNIX環境高級編程》,開始動手,編程沒有捷徑,只有不斷地練習(編輯器vi和emacs任選一個),這是用戶態的編程,再接著如果還想進一步了解內核的實現,用《Linux內核源代碼情景分析》,國內大牛寫的書,這本書基於2.4內核的,有些地方有點老,可以對照著《深入Linux內核架構》一起看,這個新一點,動手寫內核模塊的話手頭常備一本《Linux內核設計與實現》,最後,如果還想更進一步了解某個特定內核子系統,那就要專門找這方面的書來看,比如網路子系統就可以看樊東東寫的《Linux網路棧剖析》等等,再往後,就看自己了,記著,無論走到哪一步,谷歌和英語都很重要!

    最後,再說一下大家最關心的工資問題,可以去各種招聘網站(智聯招聘等等)看看行情,我可以在這裡負責任地說:同等資歷的Linux程序員和Windows程序員,前者的工資要更高,並且隨著工作年限的增加,差距有越拉越大的趨勢,原因?前者對技術要求更高而已,並且,當你的工作技能逐漸熟練後(這個過程其實很短),你總會對我上面提出的那些問題有進一步探索的慾望,而這,就是決定一個人技術高度的十字路口,也是真正拉開差距的時候,Linux,正如我前面所說的,只要你有心,他不會讓你失望!


    我是看王垠的文章覺得好帥所以就用了的
    身邊有些人認為linux對他們有用所以嘗試......


    所以說,去給他看王垠的洗腦文罷......如果覺得這個好有趣就用了就用吧,否則.....就算了(逃


    學好linux主要需要的是,當折騰帝,比如折騰fvwm阿,折騰make,autoconf阿,折騰grub阿,折騰syslinux,btrfs什麼的........(自重


    我可以這樣說嗎?linux是在做減法,你得了解整個系統,才能從中挖出一條路來,windows是在做加法,你懂一點,搭個樓梯,就能創造出一條路。為了知識的全面性,建議學linux。想快速解決問題,請用windows。想用操作系統賺錢,請用mac。


    用過linux後你會發現,以前我為什麼會能夠忍受一個連tail都沒有的操作系統?


    從linux,你可以學到60年代以來計算機科學的所有成果,用windows,會害成為你很膚淺的井底之蛙。
    作為過來人最大的感受:做windows,上手容易,但很容易就看到天花板了,一直在很接近天花板的地方做urgly hack,做不了多久只有轉管理了,但unix的世界就要廣大得多,門檻高,但天花板也很高,幾乎緊挨著學術的天花板。作為技術宅來說,當年開眼看進unix的世界的時候,感動到哭…


    1. 計算機專業的學生不僅僅要了解怎麼用電腦,還要知道它底層的實現。Windows 不開放源代碼,而 Linux 開放源代碼,能讓你了解底層實現。另外,這是傳統。據我所知,世界上頂尖的黑客用的都是 Linux 或類似系統。也推薦看看我給非計算機專業的網友的回答:Linux 系統有什麼好?

    2. 推薦看看我的這篇博文:如何學習 Linux


    我認為計算機專業的一個重要課題,就是搞清楚計算機的原理。人們長期在Windows下使用電腦,把太多的功能都認為是理所當然的了,Windows屏蔽了很多細節,而這些細節對於理解計算機原理來說又是至關重要的。Linux經常會給人感覺很原始,甚至很難用,但是它卻是學習計算機的好幫手


    咱舉個極端的例子,有一本書叫seven languages in seven weeks,大概就是講編程范型的書,但不能光看不練呀,得搭環境呀,於是打開命令行,sudo apt-get install ruby io-language scala gprolog ...,然後打開編輯器就能擼了,想想你在Windows的情形吧。當然不是說Linux很優越,但總有相對優越的地方,而這些地方,你學習計算機過程中一定會遇到。


    推薦閱讀:

    caffe開發過程中使用了哪些工具?
    Linux下的開源軟體有哪些有趣的玩法?
    ATM 系統為什麼使用 Windows 而不使用 Linux?
    驅動與固件的區別是什麼?

    TAG:Linux | 計算機科學 | 計算機專業 | Linux 開發 |