2019-09-28
c語(yǔ)言死了嗎?
本材料描述了使用C語(yǔ)言的高級(jí)技能,并努力將您的C語(yǔ)言能力從“基本”提升到“高級(jí)”。然而,學(xué)習(xí)態(tài)度比學(xué)習(xí)方法要好。在正式學(xué)習(xí)之前,有一個(gè)問(wèn)題是不能抱怨的。也就是,“C語(yǔ)言仍然值得學(xué)習(xí)嗎?”
積極的觀點(diǎn)——語(yǔ)言已死
正面論點(diǎn):三種語(yǔ)言犯罪
1、代碼底層,缺乏共享。
與Java眾多的庫(kù)函數(shù)、三向控件和框架相比,C語(yǔ)言庫(kù)函數(shù)簡(jiǎn)直少之又少。如果Java是一個(gè)富有的人,那么C語(yǔ)言只是一個(gè)很少家庭的小租戶。在選擇C語(yǔ)言時(shí),開(kāi)發(fā)人員必須獨(dú)立設(shè)計(jì)所有細(xì)節(jié),從堆棧和隊(duì)列到串口和通信。他們必須從底部設(shè)計(jì)所有的代碼。
例如,字符串分解可以通過(guò)在Java中只調(diào)用類的一個(gè)方法來(lái)完成,而不是在C語(yǔ)言中。另一個(gè)例子是數(shù)據(jù)結(jié)構(gòu)。Java中的所有基本數(shù)據(jù)結(jié)構(gòu)都提供現(xiàn)成的類,但是在C語(yǔ)言中,開(kāi)發(fā)人員必須設(shè)計(jì)自己的內(nèi)容,例如隊(duì)列和樹(shù)。另一個(gè)例子是網(wǎng)絡(luò)通信。用Java重載一個(gè)類不僅可以獲得用戶在網(wǎng)頁(yè)上提交的內(nèi)容,而且用C語(yǔ)言,這簡(jiǎn)直是不可想象的。
有人說(shuō)Java只需要20,000行代碼和70,000行C語(yǔ)言,這是沒(méi)有意義的。
2.指針清晰靈活。
C語(yǔ)言特別靈活,可以訪問(wèn)大多數(shù)系統(tǒng)資源,尤其是C語(yǔ)言的指針。它只是一把依靠天堂的利劍。當(dāng)程序正確時(shí),C語(yǔ)言可以加快運(yùn)算速度,減少代碼。然而,誰(shuí)能保證程序中沒(méi)有錯(cuò)誤?如果代碼中有錯(cuò)誤,即使丁丁的錯(cuò)誤也會(huì)產(chǎn)生蝴蝶效應(yīng)等不可估量的后果,這就是為什么所謂的“一句話就能使程序完全崩潰”。
3.應(yīng)用范圍窄,界面簡(jiǎn)單。
幾位信息技術(shù)人員討論了技術(shù),十分之九的人發(fā)現(xiàn)他們都使用了Java。幾個(gè)學(xué)生展示了課程設(shè)計(jì)。Java學(xué)生總是展示某某管理系統(tǒng),這引起了學(xué)生們的驚呼。C語(yǔ)言學(xué)生總是展示一扇黑暗的窗戶,只帶來(lái)一些像友誼一樣的稀稀拉拉的掌聲。仿佛C語(yǔ)言在編程隊(duì)列中被邊緣化,似乎C語(yǔ)言項(xiàng)目正在一步步走向終結(jié),仿佛C語(yǔ)言程序員正在逐漸消失。
積極的結(jié)論:C語(yǔ)言屬于英雄。他注定是英雄的劍,而不是平民的武器。因此,普通大學(xué)生不需要選擇和學(xué)習(xí)C語(yǔ)言。
事實(shí)上,情況并非如此,正如謠言不會(huì)在真相面前暴露自己,也不會(huì)驅(qū)散所有人對(duì)C語(yǔ)言的懷疑。事實(shí)上,這很簡(jiǎn)單。兩個(gè)數(shù)據(jù)可以讓這種懷疑消失得無(wú)影無(wú)蹤:
首先是“編程語(yǔ)言排名表”
打開(kāi)排名版本,無(wú)論哪個(gè)月,前三名必須是Java、C和C++。C語(yǔ)言的比例絕對(duì)超過(guò)15%,而Java只有20%左右。因此,學(xué)習(xí)C語(yǔ)言絕非無(wú)用。
二、招聘網(wǎng)站
來(lái)到各大招聘網(wǎng)站,搜索C語(yǔ)言及相關(guān)帖子,你一定會(huì)得到很多信息,這也從積極的方面證明了學(xué)習(xí)C語(yǔ)言有著光明的未來(lái)。
從這個(gè)角度來(lái)看,語(yǔ)言不僅是活的,而且是活的。既然學(xué)習(xí)C語(yǔ)言的前景廣闊,為什么許多學(xué)生一提到C語(yǔ)言就感到困惑和蒼白?這是因?yàn)?,學(xué)習(xí)C語(yǔ)言,前途是光明的,道路——其實(shí)并不曲折,但它被掩蓋了,顯然道路就在前面,但學(xué)生們就是找不到它,所以我們不得不在黑暗中掙扎,在無(wú)盡的掙扎中浪費(fèi)大部分學(xué)習(xí)能量,久而久之,增加了C語(yǔ)言的恐怖氣氛,自然對(duì)學(xué)習(xí)C語(yǔ)言缺乏興趣。