六星云課堂:企業(yè)對C++程序員的這些技能要求,你能做到嗎?
C/C++語言能做什么?C/C++程序員在做什么?企業(yè)需要什么樣的C/C++程序員?對初學(xué)者來說,要搞清楚這些問題并不容易。

農(nóng)民種青菜之前,會考慮青菜行情(包括銷量和價錢),如果您打算學(xué)習(xí)C/C++語言,也應(yīng)該先了解C/C++程序員的行情。
了解青菜的行情要去菜市場,了解C/C++程序員的行情要去人才市場。
我們先來查一些資料。
一、中國編程語言的排名情況
登錄某招聘網(wǎng)站,分別輸入java、C++、python、javascript、.net、C#、PHP、SQL、IOS關(guān)鍵字,城市選擇北京、上海、廣州和深圳,查詢到的招聘職位分別是38620、24781、21140、17827、10000、9800、7000、26226、7168個。(不同時期的查詢結(jié)果略有不同)

數(shù)據(jù)顯示企業(yè)的JAVA和C++職位比例約6:4,編程語言的選擇是人生大事,必須慎重,更多的人選擇學(xué)習(xí)JAVA,在較短的時間內(nèi)就可以上手,從簡單的WEB頁面做起,所見即所得,容易有成就感,但是C/C++不一樣,學(xué)生在學(xué)完基礎(chǔ)知識后還是不知道它能做什么,離企業(yè)需求仍然差得很遠(yuǎn),堅持下去的人很少,“從入門到放棄”是多數(shù)人的無奈的選擇。
二、企業(yè)對C/C++程序員的技能要求
從某招聘網(wǎng)的招聘數(shù)據(jù)看,中國企業(yè)對C/C++的技能要求主要有網(wǎng)絡(luò)通信、硬件驅(qū)動(嵌入式)、數(shù)據(jù)庫、視頻音頻、網(wǎng)絡(luò)游戲、桌面圖形、機器學(xué)習(xí)、大數(shù)據(jù)、物聯(lián)網(wǎng),如下圖。

以上數(shù)據(jù)可以從招聘網(wǎng)查詢,分別輸入“C++ 網(wǎng)絡(luò)”、“C++ 嵌入式”、“C++ 數(shù)據(jù)庫”、“C++ 游戲”等關(guān)鍵字,范圍選北京、上海、廣州和深圳。
輸入“ C++ Linux”關(guān)鍵字搜索,結(jié)果有9767條記錄,輸入“C++ Windows”關(guān)鍵字搜索,只有2500條記錄。這說明windows作為服務(wù)器的操作系統(tǒng),正在被淘汰中。目前,企業(yè)要求的是linux平臺下的C/C++語言。
我們應(yīng)該學(xué)習(xí)主流技術(shù),不能成為非主流,否則有被淘汰的風(fēng)險。
三、數(shù)據(jù)比石油更珍貴
在我們的生活中,數(shù)據(jù)無處不在,但是,常人對它不敏感。
人口戶藉數(shù)據(jù)在公安局。
駕照數(shù)據(jù)和車輛數(shù)據(jù)也在公安局的交警支隊。
醫(yī)院保存了每個病人的基本資料和就診數(shù)據(jù)。每個產(chǎn)婦在醫(yī)院生了小孩子,計劃生育部門也會知道,它們與公安局和醫(yī)院有聯(lián)網(wǎng)交換數(shù)據(jù)。
銀行有開戶數(shù)據(jù),轉(zhuǎn)帳記錄。
證券公司有行情數(shù)據(jù)、股東基本數(shù)據(jù)、持股數(shù)據(jù)和交易日志。
電信公司有開戶數(shù)據(jù)、通話清單、帳單。
電力局有居民的基本數(shù)據(jù)和用電帳單。
火車票、機票都是數(shù)據(jù)。
騰訊公司有QQ帳戶數(shù)據(jù)、微信帳戶數(shù)據(jù)、聊天日志、轉(zhuǎn)帳日志等。
阿里公司有淘寶帳戶數(shù)據(jù),商戶數(shù)據(jù),商品數(shù)據(jù)、交易日志等。
煤氣公司、自來水公司……
一個人的身高、體重、學(xué)歷、年齡是數(shù)據(jù)。
圖片、視頻、音頻、文章也是數(shù)據(jù)。
……
四、C/C++程序員在做什么
用C/C++做桌面程序的比例約11%,其它的C/C++程序都運行在后臺Linux服務(wù)器上,普通用戶看不見。
真正的C/C++程序員在工作,掌握的是謀生的技能。
我們每天都在用微信軟件聊天、付款、轉(zhuǎn)帳等,對普通用戶來說,只看到微信軟件的操作界面,不清楚有后臺系統(tǒng)的存在,以轉(zhuǎn)帳功能為例。
1)付款人在手機微信中輸入轉(zhuǎn)帳金額和支付密碼;
2)手機微信軟件把轉(zhuǎn)帳金額和密碼發(fā)送給騰訊公司的微信服務(wù)器;
3)微信服務(wù)器核對用戶的密碼和轉(zhuǎn)帳金額,向中國銀聯(lián)發(fā)起轉(zhuǎn)帳請求,中國銀聯(lián)把轉(zhuǎn)帳請求轉(zhuǎn)發(fā)給付款方的開戶行銀行,開戶銀行從付款人的帳戶中扣除金額。
4)微信服務(wù)器把扣款成功信息返回給手機微信軟件,顯示轉(zhuǎn)帳成功。
5)微信服務(wù)器向收款人的手機微信軟件發(fā)送收錢提醒,收款人點擊收款后,微信服務(wù)器把金額存入收款人的微信帳戶中。
在上述轉(zhuǎn)帳流程中,蘋果手機的微信軟件采用Objective-C語言開發(fā),其它品牌手機的微信軟件采用JAVA開發(fā);微信服務(wù)器、中國銀聯(lián)和開戶銀行都是非常龐大的系統(tǒng),系統(tǒng)之間進行了多次數(shù)據(jù)傳輸,對數(shù)據(jù)庫進行了查詢、修改和插入操作,都是采用C/C++語言開發(fā),系統(tǒng)運行在UNIX系統(tǒng)上,效率極高、穩(wěn)定性極強,工程量巨大,是精英程序員們的心血之作。
對騰訊的開發(fā)團隊來說,手機上安裝的微信APP軟件,開發(fā)的工作量不會超過整個微信項目的5%。
五、總結(jié)一下
1)網(wǎng)絡(luò)通信和數(shù)據(jù)處理以C/C++語言為主,數(shù)據(jù)輸入、數(shù)據(jù)展示以java為主。
2)作為服務(wù)器的操作系統(tǒng),必選Linux。
3)網(wǎng)絡(luò)通信是C/C++程序員的必備技能。
4)數(shù)據(jù)處理是C/C++程序員的必備技能。
5)嵌入式開發(fā)的職位比較多,技術(shù)上偏硬件(通信、電子等專業(yè)),軟件為輔。
6)放棄幻想,踏實一點,自學(xué)困難重重,想要快速收獲高薪工作,建議進行系統(tǒng)性的學(xué)習(xí),多思考,多做項目。
以上就是本次分享的全部內(nèi)容,想學(xué)習(xí)更多C++技巧,歡迎持續(xù)關(guān)注六星云課堂!