在如今 Python 和 Java 大火的市場前景下,我還是建議劫笙,如果你還在學(xué)校讀書,或者你有大把的空閑時(shí)間星岗,不著急去找工作填大,那就靜下心來,好好學(xué)習(xí)一下 C 語言俏橘,會讓你受益終生允华,也會讓你的編程之路走的更遠(yuǎn)
C 的認(rèn)識
1、C 語言作為編程最古老的語言之一寥掐,至今走過了快半個(gè)世紀(jì)靴寂,久經(jīng)考驗(yàn),仍然是寶刀未老召耘,在排行榜上常年名列前茅百炬,這鐵錚錚的事實(shí)還不能說明問題嗎?其設(shè)計(jì)的精髓污它,其內(nèi)涵思想剖踊,都是值得當(dāng)下的我們學(xué)習(xí)與借鑒的
、C 語言作為我接觸編程的開始轨蛤,對我的影響很大蜜宪,帶我入了 IT 這行,我本人也是極其的喜歡 C 語言祥山,C 語言涉及了很多底層的知識圃验,比如:內(nèi)存、尋址缝呕、如果你不懂操作系統(tǒng)相關(guān)知識澳窑、是很難學(xué)會 C 語言的,而 Windows供常、Linux摊聋、Unix 等操作系統(tǒng)的內(nèi)核 90% 以上都使用 C 語言開發(fā),C 語言是一門直通底層的語言
3栈暇、學(xué)習(xí) C 語言麻裁,這僅僅是基礎(chǔ)部分,想靠這個(gè)去找工作,是遠(yuǎn)遠(yuǎn)不夠的煎源,在有了 C 的基礎(chǔ)之上色迂,看你自己的興趣和方向而定,到時(shí)候手销,想走后臺歇僧,選擇 Java C++ Go 之一可以去學(xué),想走人工智能領(lǐng)域的锋拖,可以去學(xué) Python诈悍,想走運(yùn)維的,可以深入Linux領(lǐng)域兽埃,還有安卓侥钳、前端等,到那個(gè)時(shí)候讲仰,才是天高任鳥飛慕趴,海闊憑魚躍
4、學(xué)習(xí) C 語言并不一定要從事與 C 語言有關(guān)的開發(fā)工作鄙陡,但是可以給你養(yǎng)成一種學(xué)習(xí)編程的思考方式,和邏輯推理能力躏啰,其它很多的語言在語法上都和 C 語言類似趁矾, Java、C++给僵、C#毫捣、PHP、JavaScript 等帝际,學(xué)完 C 語言再學(xué)這些語言都輕松很多
5蔓同、C 語言能干什么,據(jù)我所知:
A蹲诀、C 語言主要用于底層開發(fā)斑粱,操作系統(tǒng),搜索引擎
B脯爪、Linux 嵌入式方向则北,單片機(jī)這些,可以開發(fā)硬件驅(qū)動痕慢,讓硬件和操作系統(tǒng)連接起尚揣,通過軟件操作硬件
C、開發(fā)系統(tǒng)組件或服務(wù)(一般是對效率要求比較高的)掖举,用于支撐上層應(yīng)用
6快骗、不要給我說 C 語言入門比較難,我也是非科班出身,一路全憑自己摸索方篮,自己的智商并不高名秀,我能做的到,代表大部分人應(yīng)該都可以恭取,換一種角度思考泰偿,如果難的都搞定了,簡單的還是問題嗎
與 C 結(jié)緣
我說說我自己本人的親身經(jīng)歷蜈垮,我在大二的時(shí)候耗跛,開始接觸 C,大半年的時(shí)間攒发,總是理解不了指針调塌,被指針的各種用法所深深的折磨,C 也僅僅是掌握了皮毛惠猿,那時(shí)候的自己羔砾,就覺得自己是不是不適合學(xué)習(xí)編程,自己太笨了偶妖,總也學(xué)不會
我現(xiàn)在還記得清楚姜凄,自己當(dāng)時(shí)是上課前,趴在桌子上休息趾访,不知道怎么突然想到了指針态秧,靈光一現(xiàn),明白了指針是怎么回事扼鞋,我當(dāng)時(shí)非常的激動申鱼,立馬跑回宿舍,拿起電腦進(jìn)行了一系列的驗(yàn)證云头,都是成功的捐友,那可是我學(xué)習(xí)編程歷時(shí)半年,第一次有成就感的時(shí)候溃槐,很激勵(lì)自己匣砖,之后的自己就豁然開朗,對編程的認(rèn)知提升了一個(gè)層次竿痰,在理解其他的知識點(diǎn)就感覺輕松脆粥,容易多了,那次經(jīng)歷真的很玄學(xué)
之后的自己在編程的路上影涉,也遇到了種種困難变隔,但是每每想起指針的那件事情,我就信心滿懷蟹倾,我覺得該經(jīng)歷的遲早都會來匣缘,早點(diǎn)經(jīng)歷過猖闪、被折磨過,自己才能有提升肌厨,經(jīng)歷過的人都懂
C 的體會
大學(xué)期間我是搞 Linux C/C++ 服務(wù)器開發(fā)的瓮恭,對于 Linux C/C++ 是相當(dāng)?shù)氖煜ぃF(xiàn)在的我在公司中是一名算法工程師厘熟,由一名后臺轉(zhuǎn)算法屯蹦,僅僅用了 3 個(gè)月的時(shí)間,但是為什么我能這么快的成功轉(zhuǎn)型呢.
扎實(shí)的基礎(chǔ)功底绳姨、快速的學(xué)習(xí)能力登澜、解決問題的能力、以及個(gè)人潛力
扎實(shí)的基礎(chǔ)功底很重要飘庄,基礎(chǔ)是什么:數(shù)據(jù)結(jié)構(gòu) + 算法帖渠,操作系統(tǒng) + 計(jì)算機(jī)網(wǎng)絡(luò),Linux + C竭宰,數(shù)據(jù)庫 + 設(shè)計(jì)模式,那么之中就有一門 C 語言份招,C 是學(xué)習(xí)編程的基礎(chǔ)切揭,很鍛煉一個(gè)人的邏輯思維能力
快速學(xué)習(xí)的能力必須具備,干 IT 這行锁摔,技術(shù)在不斷的更新迭代廓旬,就的不斷的去學(xué)習(xí),樹立終生學(xué)習(xí)的理念谐腰,牢記一句話孕豹,在校期間,不管你學(xué)的是什么編程語言十气,什么編程技術(shù)励背,工作了,可能你以前學(xué)的那些都用不上(反正我以前學(xué)的基本都用不上砸西,自己來公司從 0 開始)叶眉,這是很正常的址儒,但編程素養(yǎng)和編程習(xí)慣在就行了,這些都是相通的衅疙,公司需要我做什么莲趣,我快速學(xué)習(xí)就好
語言是工具,重要的是思想饱溢,我很認(rèn)同這句話喧伞,我以前沒接觸過 go,在百度實(shí)習(xí)的時(shí)候绩郎,我導(dǎo)師還給了我 1 周的時(shí)間去熟悉潘鲫,才上項(xiàng)目,以前沒咋用 Python 寫過代碼嗽上,來了之后次舌,直接 Python 上項(xiàng)目,現(xiàn)在的我兽愤,天天是:Python + sql彼念,我想說的是,一門( C 是基礎(chǔ)浅萧,不算)玩的 6 了逐沙,其他的還用學(xué)嗎?直接動手干就是了
個(gè)人潛力自己平時(shí)的多去琢磨洼畅,去研究技術(shù)吩案,個(gè)人潛力是招人很看重的一方面,公司在面試的時(shí)候帝簇,很注重一個(gè)人在這方面的發(fā)展?jié)摿ε枪话闶峭ㄟ^算法題進(jìn)行考察,算法強(qiáng)的丧肴,來了之后稍加培養(yǎng)就好(我想說的是残揉,面試的時(shí)候,你敢說自己精通算法芋浮,國內(nèi)互聯(lián)網(wǎng)公司隨便挑)抱环,公司不僅是面向當(dāng)下,還是在面向未來在招人
總之纸巷,企業(yè)招你是為了干活镇草,你能不能快速的學(xué)習(xí),以及將所學(xué)到的能否快速的應(yīng)用到業(yè)務(wù)開發(fā)中瘤旨,為公司的業(yè)務(wù)作出貢獻(xiàn)梯啤,才能體現(xiàn)你的價(jià)值,而你就必須具備這種能力
C 的世界
一定的對自己有清晰的定位裆站,自己目前是一個(gè)什么樣的處境条辟,只有全面的認(rèn)識自己黔夭,才能針對當(dāng)下,做出戰(zhàn)略性的方案羽嫡,深度 > 廣度本姥,在互聯(lián)網(wǎng)行業(yè),對于我們來說杭棵,技術(shù)過硬讓一切成為可能
我接觸 C 語言到現(xiàn)在大概 3 年時(shí)間了婚惫,我對 C 語言的認(rèn)知,早已不僅僅停留在使用的層面上魂爪,而是對 C 的設(shè)計(jì)理念先舷,設(shè)計(jì)哲學(xué)所深深的吸引,其人文化的思想滓侍,站在計(jì)算機(jī)獨(dú)特的視角蒋川,以及 C 語言指針的偉大魅力,我被深深的折服其中撩笆,在 C 的世界中捺球,充滿了好奇心,總想去探索夕冲、去發(fā)現(xiàn)未知的世界
C 語言能夠讓你更加深刻的認(rèn)識內(nèi)存和編譯原理氮兵,了解程序的每一個(gè)細(xì)節(jié),夯實(shí)基本功歹鱼,站得“低”才能望的遠(yuǎn)泣栈,所以優(yōu)秀的程序員都會學(xué)習(xí) C 語言,你想成為優(yōu)秀的程序員嗎弥姻?如果想南片,就跟我一起探討 C 之旅
以上僅僅代表我個(gè)人看法,反正我是這么一步一步走過來的
作者:C的騷氣
鏈接:https://zhuanlan.zhihu.com/p/76519565
來源:知乎