{eval=Array;=+count(Array);}

成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

問答專欄Q & A COLUMN

linux c++服務(wù)器開發(fā)方向的學(xué)習(xí)路線是什么?

jzzleejzzlee 回答0 收藏1
問題描述:具體的知識方向、書籍、項(xiàng)目。
收藏問題

1條回答

UCloud

UCloud

回答于2022-06-28 12:09

1) 語言&工具C語言和C++是傳統(tǒng)的 Linux 開發(fā)的語言,需要掌握。除了基本的語法,還要玩轉(zhuǎn)一套工具鏈。經(jīng)典的組合是 GCC(編譯器)+ Make/Makefile(構(gòu)建中大型項(xiàng)目必須的工具)+ GBD(調(diào)試器)+ Valgrind(內(nèi)存分析工具)+ Vim/EMACS/Gedit/Sublime Text(編輯器)。現(xiàn)在有越來越多的新項(xiàng)目使用 Clang/LLVM 來構(gòu)建了,例如 Android NDK 已經(jīng)放棄GCC,全面轉(zhuǎn)向 Clang。由于 C++ 語法{{BANNED}},到處都是奇*巧*淫*技,并且沒有內(nèi)存回收機(jī)制,所以被最近幾年大火的 Golang 完爆了,不少底層項(xiàng)目開始轉(zhuǎn)向 Golang,棄用 C++。嗯,這是好事,作為《C++教程》的作者我已經(jīng)惡心透了,C++ 這種騷*浪*賤的語言早就該被爆*操了。對于初學(xué)者來說,不要貪多嚼不爛,先學(xué)好 C/C++ 語言,掌握 GCC 就可以,Clang/LLVM 和 Golang 留著以后再學(xué)。

2) 數(shù)據(jù)結(jié)構(gòu)和算法學(xué)習(xí)基本的,了解概念就可以,很多庫已經(jīng)封裝好了常用的數(shù)據(jù)結(jié)構(gòu)和算法,實(shí)際開發(fā)中你不用從零開始,所以千萬不要陷在里面不能自拔,算法是個(gè)無底洞,耗死你。記住,以后需要了可以再來回顧,不用一開始就吃透。

3) 操作系統(tǒng)除了基本的 Linux 操作,還有必要了解一些常用命令;當(dāng)然,這不是重點(diǎn),只要你經(jīng)常使用 Linux 操作系統(tǒng),慢慢就會了。內(nèi)存(虛擬地址空間、內(nèi)存分配策略)+ 進(jìn)程線程(進(jìn)程通信、線程調(diào)度、死鎖) + 文件系統(tǒng) + 輸入輸出 + 中斷等才是重點(diǎn)。這些都是理論,要和實(shí)踐相結(jié)合起來。

4) 通信(Socket)在服務(wù)器上做開發(fā),通信是必不可少的,而且是重中之重。除了了解 TCP/IP 協(xié)議族,還要學(xué)習(xí) socket 編程,將理論和實(shí)踐集合起來。ACE、Libevent、Libev 等知名的網(wǎng)絡(luò)庫也要掌握一兩個(gè)的,畢竟在實(shí)際開發(fā)中不可能直接調(diào)用 Linux API 吧,怎么也得搞個(gè)庫來提高效率。

5) 界面庫當(dāng)然,在服務(wù)器領(lǐng)域一般不需要界面,但是掌握一個(gè)界面庫會讓你做出一個(gè)好玩的軟件來,學(xué)以致用,提高興趣。Linux 下常用的界面庫有 Qt、GTK、WxWidgets 等,其中 Qt 是老大。搞 Linux 開發(fā),操作系統(tǒng)原理和通信是重點(diǎn),也是最難學(xué)的部分,這是你跨進(jìn) Linux 開發(fā)這扇大門的標(biāo)志,不學(xué)這些就是耍流氓。


C/C++ Linux服務(wù)器開發(fā)免費(fèi)學(xué)習(xí)地址:https://ke.qq.com/course/417774?flowToken=1013300

評論0 贊同0
  •  加載中...

您已邀請0人回答 查看邀請

我的邀請列表

  • 擅長該話題
  • 回答過該話題
  • 我關(guān)注的人
向幫助了您的網(wǎng)友說句感謝的話吧!
付費(fèi)偷看金額在0.1-10元之間
<