長期來看學算法最靠譜,算法是內(nèi)功,語言只是手段。至于選java還是python,取決于職業(yè)規(guī)劃。
編程語言起起伏伏,都有生命周期的。
可以查下每種語言的歷史,隨著技術(shù)、硬件的進步,很多歷史上流行的語言,有的已經(jīng)淘汰,有的在走下坡路。
但市場上唯一不變的就是對算法基本功的要求。算法、數(shù)據(jù)結(jié)構(gòu)就是基本功。從mysql中默認存儲引擎的B+樹,到redis的哈希,所有的軟件都離不開基礎的數(shù)據(jù)結(jié)構(gòu)和算法。
java是后端主流,性能高
技術(shù)公司,凡是對性能要求高的,比如響應時間、QPS,基本都是java。各種中間件、微服務、業(yè)務邏輯開發(fā),基本都是java搭配redis。
有些對性能要求極高的,可能會用到C++。
python代碼簡潔,上手快,應用領(lǐng)域廣泛
人生苦短,我用python。選擇python,就意味著擁有python龐大的生態(tài)圈,從爬蟲、數(shù)據(jù)分析、人工智能、網(wǎng)站后臺等等,基本都有現(xiàn)成的框架或工具。
但python中有個大坑就是GIL,多線程基本是雞肋。
python還是java
python的性能比java差很多。有些公司起步階段,都是python。后續(xù)業(yè)務擴大,python都扛不住,沒記錯的話,餓了么、知乎后續(xù)都轉(zhuǎn)java了,最核心的功能都用java改寫了。
結(jié)論
語言只是手段,核心還是算法。至于如何選擇,要結(jié)合職業(yè)規(guī)劃、具體細分領(lǐng)域來說。