做了78年的java后端?
哈哈哈,的確現(xiàn)在學(xué)Java的人太多了,所以導(dǎo)致Java人才過剩。翻一翻編程語言排行榜,Java雖然這幾年被Python給擠下去了,但是還是常年在前三名徘徊,可見Java是多么地吃香。
但是用Java的人多,不代表和你競爭的人就越多,尤其是做了七八年的Java了,其實(shí)優(yōu)勢還是存在的。
Java和C#一樣,屬于面向?qū)ο蟮倪M(jìn)階版本,什么繼承、封裝、多態(tài)等等。不是說C++沒這樣的特性,只不過C++的代碼,對(duì)于一個(gè)長期寫Java的人來說,接受起來可能有點(diǎn)困難。
C#和Java實(shí)在太像了,當(dāng)初教我們編程的老師曾經(jīng)說過一段話:“如果你先學(xué)的C++,再去學(xué)C#或者Java,你會(huì)發(fā)現(xiàn)C#和Java簡直太簡單了。但是如果你先學(xué)的C#或Java,再想去學(xué)C++,你會(huì)發(fā)現(xiàn)你會(huì)越學(xué)越難受!”。
C#和Java的語法和C++有很大差別,但不得不說,C++程序?qū)懞昧耍绦虻倪\(yùn)行速度和處理速度會(huì)優(yōu)于C#和Java。C++對(duì)于內(nèi)存和性能的處理還是挺好的,這是很多大廠還在用C++的原因。而像C#和Java這種對(duì)“深度封裝”的語言,用起來就比C++要容易得多,但是弊端就是很多程序員在寫代碼的時(shí)候,就基本不去考慮C++代碼需要考慮的事情,就比如說內(nèi)存托管這塊的知識(shí)。
所以,既然做Java那么久了,就別轉(zhuǎn)行了,尤其是已經(jīng)30歲了,可你如果作為一個(gè)C++新手,薪資就比不上你在做Java時(shí)那么高。等你好不容易掌握了C++語言的特性,剛準(zhǔn)備好好通過自己的技術(shù)來提高自己的薪資待遇時(shí),發(fā)現(xiàn)你已經(jīng)邁進(jìn)了35歲這個(gè)坎。
如果繼續(xù)做Java,等你35歲的時(shí)候你至少就有12年的Java底子。即使可能存在被“優(yōu)化”的風(fēng)險(xiǎn),但核心競爭力是在那得。
總結(jié)一下,就是不建議轉(zhuǎn)行,如果想學(xué)C++,可以在工作之余去學(xué)。