|
隨著《黑神話:悟空》的爆火,其底層的開發(fā)語言也受到了大家的廣泛關(guān)注!
《黑神話:悟空》采用虛幻5引擎打造,擁有出眾的畫面與視覺效果,包括新的光照系統(tǒng)、動態(tài)天氣、全景光線追蹤等技術(shù)加持,為玩家?guī)沓两降挠螒蝮w驗(yàn)。
而該引擎的底層源碼主要就是使用C++來開發(fā)的,前段時(shí)間出了一本新書《 C++之美:代碼簡潔、安全又跑得快的30個(gè)要訣》,質(zhì)量相當(dāng)不錯(cuò),下面是介紹。
此外,文末也有相應(yīng)的贈書環(huán)節(jié),歡迎各位參與。
對于C++,資深游戲開發(fā)專家@韋易笑老師說道:
實(shí)話說,今天學(xué)習(xí)C++比以前更具挑戰(zhàn)性了。
一方面,新標(biāo)準(zhǔn)的引入提高了C++的安全性和描述力,但也增加了學(xué)習(xí)的難度;另一方面,過去大部分軟件都用C++來開發(fā),新人入職后通常先從小模塊的開發(fā)開始,再逐步擴(kuò)展到中模塊、大模塊,通過學(xué)習(xí)老同事的代碼,在生產(chǎn)領(lǐng)域不斷實(shí)踐,總能一步一步提高編程能力,最終能設(shè)計(jì)較為復(fù)雜的大型系統(tǒng)。
然而,如今的新人并沒有這種階梯式的鍛煉機(jī)會,他們的第一語言往往不是C++,而當(dāng)他們用其他語言開發(fā)幾年后遇到性能瓶頸需要用C++時(shí),突然根本無法駕馭。
同時(shí),掌握C++也成為一項(xiàng)愈加珍貴的技能。
新興行業(yè)最初的各種基礎(chǔ)設(shè)施和工具,大多是用C++構(gòu)建的。
無論是十多年前的移動開發(fā)領(lǐng)域,還是四五年前的音視頻領(lǐng)域,乃至當(dāng)下熱門的AI領(lǐng)域,都是如此。
例如TFLite、whisper.cpp和llama.cpp等這些都是C++項(xiàng)目,其中l(wèi)lama.cpp在GitHub上線兩周內(nèi)就獲得了20,000個(gè)星標(biāo)。
同時(shí)精通C++和Python的算法工程師,相較于只會Python的程序員,能獲得更多機(jī)會,走得更遠(yuǎn)。
關(guān)于C++語法的知識,自己花點(diǎn)兒時(shí)間總能學(xué)會,但在實(shí)際項(xiàng)目中積累經(jīng)驗(yàn)與領(lǐng)悟卻需要很長時(shí)間。
不少人過于專注于窮盡語法的各個(gè)細(xì)節(jié),卻忽略了對大型復(fù)雜項(xiàng)目駕馭能力的培養(yǎng),結(jié)果就是談起C++標(biāo)準(zhǔn)來頭頭是道,在項(xiàng)目中寫點(diǎn)兒復(fù)雜代碼就垮了。
此時(shí),《 C++之美:代碼簡潔、安全又跑得快的30個(gè)要訣》便能帶大家脫離這種困境!
hr3lheg3jp46408901932.png (399.14 KB, 下載次數(shù): 2)
下載附件
保存到相冊
hr3lheg3jp46408901932.png
2024-8-29 12:25 上傳
本書提煉和歸納了C++工程實(shí)踐中的難點(diǎn)。
初讀這本書,@韋易笑老師說:感覺很像是對過往認(rèn)知的一次印證,不少準(zhǔn)則讓自己很有共鳴,比如優(yōu)先使用函數(shù)默認(rèn)參數(shù)而非重載,盡量減少可寫變量的顯示共享等,這些建議在項(xiàng)目初期可能不會顯得特別重要,但隨著項(xiàng)目復(fù)雜度的增加,忽視它們所帶來的問題才會逐漸顯現(xiàn)出來。
更隱蔽的是,當(dāng)項(xiàng)目變得難以維護(hù)時(shí),很多人可能無法意識到正是這些問題的積累導(dǎo)致了困境。
有些準(zhǔn)則所描述的問題真的是多年的開發(fā)者才會遇到的“暗坑”,比如跨ABI需要使用C風(fēng)格接口,優(yōu)先選擇不可變數(shù)據(jù)而不是可變數(shù)據(jù),沒有多年的C++編程經(jīng)驗(yàn)是完全總結(jié)不出這些準(zhǔn)則的。
本書挑出的30條核心準(zhǔn)則能幫助大家更好地駕馭大型復(fù)雜C++項(xiàng)目。
如果說Effective C++總結(jié)了許多微觀層面的“避坑”建議,那么本書則提供了一份宏觀層面的“避坑”指南,特別適合在學(xué)習(xí)完語法,完成一兩個(gè)玩具項(xiàng)目之后,真正開始做一些嚴(yán)肅項(xiàng)目時(shí)閱讀。
C++之父力薦
C++之父Bjarne Stroustrup在談及本書時(shí)說道:
我很享受閱讀本書的過程。
我享受它,尤其因?yàn)樗砸环N與《C++核心準(zhǔn)則》(C++ Core Guidelines,CG)本身完全不同的方式呈現(xiàn)了C++的核心準(zhǔn)則。
CG以一種固定格式,相對簡短地給出了各條準(zhǔn)則。在CG中,這些準(zhǔn)則通常是用編程語言的術(shù)語表達(dá)的,強(qiáng)調(diào)如何通過靜態(tài)分析來實(shí)施。
本書卻在講故事,很多故事來自經(jīng)歷了幾十年代碼和技術(shù)演化的游戲行業(yè)。
它以開發(fā)者的視角講解這些準(zhǔn)則,強(qiáng)調(diào)遵循這些準(zhǔn)則將會得到的好處,以及無視這些準(zhǔn)則可能導(dǎo)致的噩夢。關(guān)于準(zhǔn)則的動機(jī),相比CG本身所闡述的內(nèi)容,在本書中有更加廣泛的討論。
CG旨在達(dá)到一定程度的完整性。
當(dāng)然,一套關(guān)于如何編寫優(yōu)良代碼的準(zhǔn)則難以達(dá)到徹底的完整性,而必要程度的完整性則意味著CG并不適合系統(tǒng)性閱讀。我推薦各位閱讀CG的前言和哲學(xué)部分,以了解其目標(biāo)和概念框架。
但是,如果要在品味、視角和經(jīng)驗(yàn)的指導(dǎo)下有選擇地了解CG,那就閱讀本書吧。
對真正的極客來說,本書是輕松有趣的讀物。
對大多數(shù)軟件開發(fā)者來說,它提供了新的、有用的東西。
0jxd2pjhady6408902032.gif (17.47 KB, 下載次數(shù): 0)
下載附件
保存到相冊
0jxd2pjhady6408902032.gif
2024-8-29 12:25 上傳
《C++之美》這本書就像一位智慧的導(dǎo)師,以其深邃且富有詩意的語言,帶領(lǐng)我們遨游C++的瑰麗世界,挖掘隱藏在復(fù)雜編程結(jié)構(gòu)和算法背后的美學(xué)。
此書不僅是技術(shù)的教科書,還帶領(lǐng)我們探索編程的本質(zhì)和藝術(shù),讓我們在熟練掌握C++的同時(shí),體會到編程本身的樂趣與成就感。
相信,《C++之美》將成為每位C++愛好者的寶貴手冊。它不僅會伴隨你度過那些漫長的編程夜晚,更會在你迷茫之際,成為指引你前行的明燈。
讓我們共同啟航,在《C++之美》的指引下,感受編程的純粹與魅力,書寫自己的編程傳奇。
愿此書成為你編程之路上的燈塔,為你照亮通往更高成就的道路。
↑限時(shí)五折優(yōu)惠↑
nahyln52qgd6408902132.jpg (2.02 MB, 下載次數(shù): 1)
下載附件
保存到相冊
nahyln52qgd6408902132.jpg
2024-8-29 12:25 上傳
限時(shí)五折優(yōu)惠,快快搶購吧!
t4szrq4stcs6408902232.gif (30.22 KB, 下載次數(shù): 1)
下載附件
保存到相冊
t4szrq4stcs6408902232.gif
2024-8-29 12:25 上傳
互動有獎(jiǎng)
按以下方式與博文菌互動,即有機(jī)會獲贈圖書!
活動方式:點(diǎn)擊下方公眾號關(guān)注后回復(fù)“抽獎(jiǎng)”二字,請注意,非本號哦,幸運(yùn)兒贈送圖書盲盒一份,包郵送出!
點(diǎn)擊上方公眾號,關(guān)注后回復(fù)“抽獎(jiǎng)”即可參與
ca2wnmgfgsj6408902332.png (174.26 KB, 下載次數(shù): 1)
下載附件
保存到相冊
ca2wnmgfgsj6408902332.png
2024-8-29 12:25 上傳
活動時(shí)間:截至9月2日開獎(jiǎng)。
快快拉上你的小伙伴參與進(jìn)來吧~~ |
|