最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

知乎神回復(fù):如果一定要在C++和Java中選擇,應(yīng)該選擇哪一種?

2020-12-21 21:13 作者:C語言編程__Plus  | 我要投稿



結(jié)論:

(1)如果你是 計(jì)算機(jī)科班,大一學(xué)生,不需要立即找工作,想提高自己,那我的建議是: 把手上有關(guān)java 的書籍全部扔掉,換成C++ 的幾本經(jīng)典書籍。?

(2)如果你是想找工作,建議學(xué)習(xí)Java,畢竟以后想提升自己的時候,還是可以再學(xué)習(xí)C++ 的。

(3)如果你是外面培訓(xùn)班出生,沒有科班背景,基礎(chǔ)不扎實(shí),Sorry,目前階段你可能還配不上C++。

你如果選擇C++,那C++ 的難度與JAVA 比,那應(yīng)該不在一個層次。因?yàn)镃++ 作者及委員會 想給你帶來足夠的抽象能力,讓你可以抽象這個世界; 給你足夠的自由與控制硬件的能力,及零開銷的高性能。? 特別是現(xiàn)代C++ 的發(fā)展,? 可以帶來更多的組合,靈活方便,可以寫出非常精簡,有美感的代碼。這些導(dǎo)致了C++ 語法繁雜,學(xué)習(xí)曲線漫長。


? 但是學(xué)習(xí)C++ 同樣會給你帶來很多收益(前提是學(xué)好的情況下):

(1)你會變得自信,在有C++ 基礎(chǔ)上,學(xué)習(xí)go 1天,java的學(xué)習(xí)也就2-3天,? 學(xué)習(xí)rust 也很快,一個月吧,再練習(xí)下就可以寫代碼了。當(dāng)然我說的只是基礎(chǔ)語法的學(xué)習(xí)。? 學(xué)習(xí)這幾門語言時,你就會感覺好輕松。?

(2)自己的抽象思維能力會帶來提升,抽象思維是計(jì)算機(jī)領(lǐng)域最重要與基礎(chǔ)的能力。另外很多人吐槽C++ 程序員比較呆板,古董,且不懂設(shè)計(jì)模式。那是因?yàn)槟銢]有研究過好的C++的開源代碼,比如Folly,?Wangle,mongogdb 。特別提下Folly 的promise/future 設(shè)計(jì), 是C++的大牛 寫的, 基本上把每一行源碼都看懂了,寫的真好。


(3)通過學(xué)習(xí)C++ , 可以學(xué)習(xí)到很多通用的知識,這些知識也是可以遷移的。? C++ 的oop及資源所有權(quán)與生命周期管理, C++的異常處理,?C++的泛型設(shè)計(jì),C++的元編程,C++的異步編程及Lock-Free 設(shè)計(jì)等.在學(xué)習(xí)Lock-Free 過程中,你會發(fā)現(xiàn)并發(fā)程序設(shè)計(jì)與數(shù)據(jù)庫中的并發(fā)控制的思想非常類似, 比如: Lock-Free 中的Hazard Pointer 里面 不就有MVCC 的思想么, CAS-loop 操作不就是一種樂觀的思想么。??

另外如果你觸及到內(nèi)存一致性模型的本質(zhì)的話,你很有可能會去讀lamport 的經(jīng)典paper<Time,?Clocks,?and the Ordering of Events in a Distributed System> ,對以后學(xué)習(xí)分布式系統(tǒng)很有好處。? 我在學(xué)習(xí)C++ 的過程中,是先走了一遍基礎(chǔ),然后逐個擊破,并輔助一定的實(shí)踐,花了大量時間,不敢說學(xué)的比較好,只能說我在看一些優(yōu)秀的開源代碼時,心里沒有畏懼感了,因?yàn)橛心芰梢陨钊氲饺魏未a細(xì)節(jié)。


這里特別提一下C++ 的Lock-Free 程序設(shè)計(jì):

我學(xué)習(xí)C++ ,是工作了多年之后,感覺最燒腦的是Lock-Free 程序設(shè)計(jì),? 為了學(xué)習(xí)這貨,看了很多內(nèi)存一致性模型相關(guān)的paper,把看了一遍(千萬不要看中文版,且不要看網(wǎng)上的一些文章),應(yīng)該是理解的非常透徹,并輔以實(shí)踐,我是看的brpc 中相關(guān)Lock-Free 設(shè)計(jì)及Folly 源碼。? 這里提下java : java 的內(nèi)存一致性模型與C++同根同源,在java 中,很多人可能只知道volatile,但是volatile 開銷太大,在這點(diǎn)上C++ 又給了你足夠的靈活性與不同性能的選項(xiàng)。

另外有人diss 了 <C++ Primer 第五版 > 這本書。我覺得作為C++ 入門書籍非常好,主要是翻譯的比較好。? 但是相關(guān)地方,如果你想把知識點(diǎn)連成線的話,需要自己拓展和總結(jié)下。

當(dāng)然,如果你想把C++ 學(xué)的好點(diǎn), 至少要看5-6 本經(jīng)典書,并賦予實(shí)踐。

Anyway ,? it's only up to you !

鏈接:https://www.zhihu.com/question/20736151/answer/1553066228

來源:知乎作者triump

另外本人是一名CC++的程序員,如果你想更好的提升你的編程能力,好好學(xué)習(xí)C/C++編程知識的話!那么你很幸運(yùn)~

UP在主頁上傳了一些學(xué)習(xí)C/C++編程的視頻教程,有興趣或者正在學(xué)習(xí)的小伙伴一定要去看一看哦!會對你有幫助的~

分享(源碼、項(xiàng)目實(shí)戰(zhàn)視頻、項(xiàng)目筆記,基礎(chǔ)入門教程)

歡迎轉(zhuǎn)行和學(xué)習(xí)編程的伙伴,利用更多的資料學(xué)習(xí)成長比自己琢磨更快哦!

編程學(xué)習(xí)書籍:


編程學(xué)習(xí)視頻:



知乎神回復(fù):如果一定要在C++和Java中選擇,應(yīng)該選擇哪一種?的評論 (共 條)

分享到微博請遵守國家法律
桦南县| 黎川县| 德兴市| 衡水市| 沙湾县| 古丈县| 客服| 汉寿县| 集贤县| 盖州市| 大城县| 通化县| 临城县| 昆明市| 洛扎县| 双峰县| 通州区| 云南省| 新干县| 大石桥市| 土默特右旗| 嘉禾县| 信阳市| 龙南县| 叙永县| 十堰市| 凌云县| 六安市| 同江市| 定远县| 宁都县| 襄樊市| 绥江县| 汾阳市| 讷河市| 攀枝花市| 普格县| 资中县| 陆丰市| 衡山县| 景德镇市|