C++后端的發(fā)展前景如何?
后端之所以叫后端,就是因?yàn)樗幸粚与[藏的含義:高并發(fā),海量數(shù)據(jù),分布式。
跟前端相比,最大的差別還在于遺留數(shù)據(jù)和擴(kuò)展性。
很多初學(xué)者,要走的路線可能是這樣的,:面向語法編程―>面向功能編程―>面向性能編程―>面向未來編程―>面向復(fù)用編程
語法和功能方面,前后端意義差不不大 很多傳統(tǒng)行業(yè)里都是前后端一起寫,薪資也不會(huì)高,二線三線城市大部分都是這樣 典型的就是行業(yè)軟件,辦公,財(cái)務(wù),醫(yī)療,地產(chǎn)等,對(duì)開發(fā)人員的業(yè)務(wù)知識(shí)很看重 對(duì)技術(shù)要求不高,sql語句搞定一切,jquery打遍天下。
到了性能的時(shí)候,前后端的差別就出來了。
前端的性能優(yōu)化,和用戶訪問數(shù)量成正比的,就是靜態(tài)文件的大小,cdn和連接數(shù)目。其他大部分和單用戶的性能優(yōu)化差不多,首屏優(yōu)化在某種程度上并不算是前端,前后端其實(shí)根本不是靠語言來劃分,而是靠代碼是在用戶端執(zhí)行,還是在服務(wù)器端執(zhí)行。
而后端的技術(shù)棧,隨著用戶的增長(zhǎng),變化的相當(dāng)大。
緩存,一致性哈希,分布式,分庫(kù), nosql,搜索,索引,SQL,微服務(wù),消息隊(duì)列,websocket,日志,監(jiān)控等等都是在這個(gè)階段要用到的,題目中的云服務(wù),確實(shí)減輕了這些基礎(chǔ)設(shè)施的安裝運(yùn)行維護(hù)工作,但不牽涉到設(shè)計(jì)和架構(gòu)啊。云服務(wù)只是提供了更好用的工具而已,在這一點(diǎn)上,是讓后端更專注。
所以后端在這里的成長(zhǎng)路徑很漫長(zhǎng),每一個(gè)點(diǎn)都需要花很長(zhǎng)的時(shí)間理解和吸收,5~7年之后仍然覺得自己什么都不懂很正常。
這也是我一直很瞧不起【全菜工程師】的主要原因,后端從來都不是JAVA,更不是JAVA語法,很多學(xué)了點(diǎn)JAVA語法,看過jdk源碼就覺得自己上天的人,其實(shí)是完全不知道天高地厚。
好比你下圍棋,把制作棋子和棋盤的工藝全理解透徹了,你就能把圍棋下好了么?不,你還是要花很長(zhǎng)的時(shí)間,學(xué)規(guī)則,學(xué)定式。
那么第四階段 什么叫做面向未來編程?
這要從需求總是在發(fā)生變化說起,在過去,瀑布開發(fā)流程面對(duì)需求變化時(shí),完全無能為力,系統(tǒng)越復(fù)雜,無力感越強(qiáng)。
好比是你照顧一個(gè)寶寶,沒問題,照顧2個(gè)寶寶就要瘋,照顧10000個(gè)寶寶呢?
所以敏捷開發(fā)就是在這個(gè)時(shí)間點(diǎn)出現(xiàn),來解決問題的,要求持續(xù)交付,擁抱變化。
擁抱變化是一個(gè)非常關(guān)鍵的價(jià)值觀,當(dāng)年認(rèn)定了需求總是會(huì)變化,從接受這個(gè)設(shè)定開始,對(duì)工程師的要求就顯而易見了,就是你做出來的系統(tǒng)架構(gòu),到底支持到什么程度的需求變化?
沒寫完,不小心點(diǎn)發(fā)布了,算了,回頭再寫,為什么后端在面向未來編程的時(shí)候會(huì)比前端更難。
作者:暗滅
鏈接:https://www.zhihu.com/question/266731117/answer/374616110
來源:知乎
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
2022年 C++后端開發(fā)騰訊后臺(tái)T1~9職級(jí)技術(shù)分析、面試講解以及系統(tǒng)性學(xué)習(xí)
https://www.bilibili.com/video/BV1nS4y1N7oJ?spm_id_from=333.999.0.0