linux系統學什么?
linux應用開發學什么
Linux的學習很多會以命令為主,因而初學會覺得枯燥甚至疑惑,鼠標點點點就能完成的事,為什么要劈里啪啦敲這么多?這里給出兩點理由,也歡迎你補充:
出于資源的考慮,絕大部分Linux服務器沒有圖形界面
命令行便于自動化,將一系列操作寫入腳本,可代替手動操作
而它的學習我把它分為這么幾個階段:
推薦:《Linux教程》
基本使用
開發調試
系統認識
這三個階段對知識積累的要求不一樣,但總體來說并沒有嚴格的先后之分。
類于windows,當年你學習windows的時候學了什么?
開關機?
安裝卸載軟件?如安裝視頻播放器,音樂播放器(為啥要安這玩意?)。
如何打開安裝的軟件?如打開瀏覽器上網,打開編輯器寫文檔
如何存放自己的資料?移動,創建,刪除等等
如何使用office 辦公軟件
……
是不是想想好像也沒有特意地去學習?
那么對于學習Linux來說也是類似的,就是學會這些最普通的使用,
如何開關機
如何上網
如何打開命令行
如何使用命令行安裝卸載軟件
如何編輯文本
如何創建,移動,刪除文件
如何查看文件內容,解壓縮文件
……
這個階段最難的就是從圖形界面到命令行的轉換。
那么第二階段呢,就需要學會:
如何編寫Linux應用程序
如何編譯或者構建你的程序
如何運行你的程序
如何定位程序bug
而第三階段,則是一個需要漫長的學習過程,但都是為開發服務,包括:
理解并踐行一切皆文件
ELF文件,Linux主要可執行文件格式
Linux各大機制的基本原理,如進程調度,內存管理,虛擬內存,文件系統等,既然要寫Linux應用程序,怎么能不了解它所在平臺的主要機制呢?
越是疑難問題,越需要這些最基本的知識。