www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 公眾號精選 > C語言與CPP編程
[導(dǎo)讀]大家好,我是唐唐!昨天水知乎回答的時候,看到了這個問題:這個問題很多讀者也問過我,“invalids”回答的這個問題,看完后很認(rèn)同。分享給大家。簡單說,如果僅僅學(xué)C/C本身的話,學(xué)到什么程度你都找不到工作。學(xué)習(xí)掌握某種編程語言的語法只是一個基礎(chǔ),一個起點(diǎn)。因?yàn)檎Z言只是一種工具,學(xué)...

大家好,我是唐唐!

昨天水知乎回答的時候,看到了這個問題:

這個問題很多讀者也問過我,“invalid s”回答的這個問題,看完后很認(rèn)同。分享給大家。

簡單說,如果僅僅學(xué) C/C 本身的話,學(xué)到什么程度你都找不到工作。

學(xué)習(xí)掌握某種編程語言的語法只是一個基礎(chǔ),一個起點(diǎn)。因?yàn)檎Z言只是一種工具,學(xué)會語法特性僅僅是知道這種工具長什么樣子、能擰能鉆能銑能刨,如此而已。

想要找到工作,你需要能夠使用這件工具創(chuàng)造價值——你不能僅僅知道鋼銼能挫鐵,還要學(xué)會看圖紙、會在給你的料子上合理規(guī)劃、挫出符合圖紙要求的合格元件來。

鏈接:https://www.zhihu.com/question/400543720/answer/1275849097

簡單說,如果分若干級別的話,可能如下:

1、了解 C 的常規(guī)語法,知道函數(shù)調(diào)用、類、虛函數(shù)、多態(tài)等的功能/原理;可以獨(dú)立完成課后習(xí)題。

達(dá)到這個水平已經(jīng)可以勝任很多職位了;但需要在工作中繼續(xù)成長。幸好愿意招應(yīng)屆生的公司對新人的要求都不高,你有時間慢慢成長。

但要注意,這里的要求是“獨(dú)立完成課后習(xí)題”,靠老師教、抄別人答案是不管用的。甚至抄完了死記硬背下來也是白搭。必須自己通過獨(dú)立思考解決問題。面試者有的是辦法試探出你有沒有自己解決問題的能力。

如果課后題被“劇透”的太厲害的話,網(wǎng)上刷題也是條路子。還是那句話,別一味抄別人的代碼,你起碼要能獨(dú)立解決其中一小半的問題,這才能證明你的確知道這件工具的用法。

2、能夠活用自己掌握的 C 知識,獨(dú)立實(shí)現(xiàn)一些小型項(xiàng)目

比如,寫個沙雕小游戲逗女朋友開心,寫個排課程序幫老師解憂,甚至寫個簡單的課程提醒程序提示你每天帶哪些書,等等。真正把“實(shí)踐任務(wù)”和“C 編程連起來”——現(xiàn)在很多公司其實(shí)干的就這活,沒什么技術(shù)含量。

3、借助別人封裝好的 API/庫,實(shí)現(xiàn)看起來更強(qiáng)更厲害的功能

比如,借助算法庫里的 MD5 算法和 OS 提供的目錄遍歷API,把系統(tǒng)所有要害文件(應(yīng)用程序、DLL、注冊表等)的大小、修改時間、數(shù)字摘要都算出來、儲存到一個文件里。以后每隔幾天遍歷一次,檢查它們的大小、修改時間,如果有變化就計算數(shù)字摘要——也可以強(qiáng)制計算所有的數(shù)字摘要——從而找出哪些要害文件被修改了、這些修改是系統(tǒng)自己打的補(bǔ)丁呢,還是不法程序(病毒木馬流氓軟件等)的非法修改。

這就是一個極為簡陋、但效果還行的反病毒工具。它的缺點(diǎn)是,這是個白名單工具,只能檢查到通過修改要害文件獲得執(zhí)行權(quán)的病毒/木馬,同時會對系統(tǒng)更新產(chǎn)生誤報。但仍然不失為一個效果不錯的系統(tǒng)問題排查工具——因?yàn)?OS 要害文件經(jīng)常是好些年不變的(現(xiàn)在你知道為何有時候有的殺毒軟件會殺系統(tǒng)文件甚至殺自己了吧?)。

再比如,利用現(xiàn)成的深度學(xué)習(xí)庫/語音識別庫搞一些貌似高大上實(shí)則沒什么技術(shù)含量的人臉識別/語音識別/聲線識別程序——別緊張,你能行。

能折騰這些,你到公司基本上就可以算是個“能人”,可以跟風(fēng)做一些聽起來很帥但其實(shí)仍然沒什么技術(shù)含量的工作了。

4、真正理解算法與數(shù)據(jù)結(jié)構(gòu),理解操作系統(tǒng)原理、計算機(jī)原理、數(shù)字電路原理以及編譯原理、數(shù)據(jù)庫原理、網(wǎng)絡(luò)原理等等基礎(chǔ)原理。

到了這個程度,你才算沒辜負(fù)“科班出身”這個頭銜,脫離了“碼農(nóng)”“調(diào)庫專家”“新技術(shù)層出不窮怎么都跟不上學(xué)不完”的半外行狀態(tài),可以從事一些較為硬核的、探索性的工作,幫公司開拓新應(yīng)用領(lǐng)域了。

5、你仍然可以繼續(xù)深入。

比如圖形圖像壓縮,比如加解密算法,比如網(wǎng)絡(luò)協(xié)議棧等,每一個子領(lǐng)域都夠很多專家投入一輩子的。不過這些領(lǐng)域經(jīng)常返璞歸真,C 反倒會成為更常用的語言;而且往往需要高等數(shù)學(xué)作為發(fā)動機(jī)。

比如著名的卡馬克牛頓迭代法求平方根的倒數(shù)算法,其中用的魔幻數(shù)字就引出了好幾篇論文。專家們用卷積找出了一個魔幻數(shù)字,但是效果不如卡馬克數(shù)字。再后來有人暴力窮舉,這才找出一個優(yōu)于卡馬克魔幻數(shù)的新數(shù)字來。

再比如,現(xiàn)在的 CNN 神經(jīng)網(wǎng)絡(luò),有次我提到要理解它你得懂卷積;于是跳出來幾個自以為很懂的出來杠我“我敢打賭,你是聽到這個東西的名字里有個卷積于是胡亂腦補(bǔ)。其實(shí)這東西和卷積沒半毛錢關(guān)系”……

他們不知道,CNN 里面的確沒有卷積符號、也沒有使用卷積計算公式;但它的實(shí)現(xiàn)思路就是卷積運(yùn)算。只不過它的設(shè)計者把卷積算法化用進(jìn)簡單的連續(xù)矩陣計算中,在深度神經(jīng)網(wǎng)絡(luò)中實(shí)現(xiàn)了“特征抽象和特征空間變換”——這是矩陣和卷積全都學(xué)到出神入化、用出來讓普通人看不懂、但內(nèi)行一看就知道還是新瓶裝舊酒的結(jié)果。

其實(shí)前面提到的數(shù)據(jù)結(jié)構(gòu)與算法等基礎(chǔ)知識,會玩的同樣能玩到返璞歸真。比如有人隨隨便便三兩行代碼就把一個數(shù)組變成了環(huán)形緩沖區(qū),或者簡簡單單兩行聲明就搞定了一個遞歸算法。如果你積累不夠深厚、頭腦不夠靈活,這個東西就很難看懂。

總之,這個領(lǐng)域是屬于創(chuàng)造者的。能踏入這個領(lǐng)域,那就不是你找工作,而是工作找你了。

綜上,如果僅僅是學(xué) C 這門語言的話,學(xué)到什么程度你都不好找工作。

你需要學(xué)的,是用 C 這門語言去解決問題。能解決課后練習(xí)題是一個水平,能刷網(wǎng)上的算法題又是一個水平;能自己搞定簡單的實(shí)用項(xiàng)目是一個水平,能充分利用操作系統(tǒng)以及第三方軟件/庫給你提供的抽象(意味著你能理解他們的設(shè)計思路)實(shí)現(xiàn)幾乎所有東西又是一個水平;理解各種東西背后的原理是一個水平,把這些原理玩的出神入化又是一個水平;學(xué)會用數(shù)字認(rèn)識這個世界是一個水平,能夠化用高深的數(shù)學(xué)知識、信手解決沒人說得清的難題又是一個水平……

一般來說,只要你能達(dá)到“用 C 解決簡單問題”的水平,找工作就不成問題了;只是受限較多,只能從事一些較為初級的工作,極易陷入沒日沒夜機(jī)械的寫代碼的窘境,然后看著層出不窮的新技術(shù)欲哭無淚。

你往前趕的越多,你代碼里的智慧和靈氣就越多;此時你才可以嘗試那些必須用巧力的工作,或者用巧力把繁重的工作變得簡單、甚至促進(jìn)你所在公司乃至全人類的開發(fā)效率。玩到這個程度,你才算真正踏入程序員的行列。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
關(guān)閉
關(guān)閉