Python和Java二選一該學(xué)啥?
有網(wǎng)友說Python和Java之間選擇一門進(jìn)行學(xué)習(xí),現(xiàn)在很糾結(jié)該選哪個(gè)。不知道這兩種語言都有什么前景?
選java,選java,選java?。?!
千萬別聽某些人說的什么python人工智能機(jī)器學(xué)習(xí),是未來的發(fā)展balabala的。
python對于人工智能工程師來說,最多也就相當(dāng)螺絲刀與修理工,懂么,只是一種工具,且是工具之一。就業(yè)要求也比較簡單,985211碩士。達(dá)不到很難很難就業(yè)。
python做數(shù)據(jù)抓取同上
python做運(yùn)維,也要去學(xué)運(yùn)維方面的知識,如果不想去運(yùn)維清忽視
python做測試,同運(yùn)維
剩下倆方向就是web開發(fā)和爬蟲。爬蟲要求扎實(shí)的前端功底,還得精通各種反扒。那就只剩下web了。
python做web大城市還好,一旦到二線城市,完全比不上java。
并且,學(xué)會java去學(xué)python很簡單,學(xué)會python在學(xué)java很費(fèi)勁
別問為什么,,因?yàn)槲揖褪莗ython-c#-java的
其實(shí)兩個(gè)都學(xué)才是正確的選擇。各門語言有不同的適應(yīng)場景,而且在學(xué)校里有充足的時(shí)間去讓你慢慢研究學(xué)習(xí),如果一定只能選一門,那就選Java,然后自學(xué)Python。
另外是問題的擴(kuò)展,當(dāng)你并不是一個(gè) CS專業(yè)學(xué)生,沒有多少空余時(shí)間的時(shí)候,你應(yīng)該怎么選?
1.請深入考慮你的學(xué)習(xí)目的
不考慮自己的目的,單純從入門難度、學(xué)習(xí)回報(bào)來做考慮,實(shí)際上是相當(dāng)不恰當(dāng)?shù)男袨?。我們看其他答案,特別是涉及到 Python培訓(xùn)的內(nèi)容,一說 Python就是入門簡單上手快之類的,從不會從你的真實(shí)需求去做考慮,這種就是為了掙錢黑了心,欠妥,相當(dāng)欠妥。我想學(xué)爬蟲,你給我推Python,我想學(xué)安卓開發(fā),你也要給我推 Python,你不是害我嗎?
銷售們有 KPI限制,不會完全從你本身的需求出發(fā),所以你自己必須明確需求。
學(xué)這兩門語言對你有何意義?
練手,了解一些 IT技術(shù),鍛煉一下?兩門語言請隨意。
掌握一門工具,對自己目前的工作做一些輔助?Python是不二之選。
做數(shù)據(jù)、做AI、做全棧,做一個(gè)真正的程序員?兩門語言都能滿足,做數(shù)據(jù)用Python的更多。
去做性能要求極高的項(xiàng)目或者技術(shù)負(fù)債嚴(yán)重的公司?誰推薦Python請打爆他的狗頭!當(dāng)然技術(shù)負(fù)債嚴(yán)重的公司最好別去。
2.你能付出多高的學(xué)習(xí)成本?
如果你時(shí)間很充裕,那么只需要按照自己的需求去選擇語言乃至玩一把“小孩子才做選擇,大人全都要”。不過很可惜,大人只是想而已,全都要的代價(jià)是萬萬付不起的。
說到底,這兩門語言的學(xué)習(xí)曲線是不一樣的。體現(xiàn)在入門上,Python的語法會比Java友好許多,入門難度也簡單許多。如果你只有幾個(gè)月時(shí)間,乃至于只有下班之后的兩小時(shí)時(shí)間,那么請放棄第一條的思考,直接選Python。如果你有足夠的耐心,愿意付出一年乃至兩三年的時(shí)間去學(xué)習(xí),那么Java也是一個(gè)相當(dāng)不錯(cuò)的選擇。
Python的特點(diǎn)是語言本身不會有太高的門檻,模塊的切分度很高,用到的工具則可以隨用隨學(xué),做數(shù)據(jù)的,Pandas、Numpy之類的學(xué)學(xué)就行了,沒人強(qiáng)行讓你學(xué)Django。Java的特點(diǎn)是本身語言有一定的入門門檻,但是在這種入門學(xué)習(xí)中接觸到的思想和理念是非常寶貴的。
3.你對這門語言的規(guī)劃是怎樣的?
這一點(diǎn)其實(shí)與目的有一點(diǎn)點(diǎn)重合,但又不完全一樣。在學(xué)習(xí)之前也要思考,你對這門語言的期望是什么?
半個(gè)月入門,年薪五十萬?你等我打個(gè)電話,看看楊永信那收不收你。
學(xué)習(xí)三個(gè)月,月薪一萬二三?沒有從業(yè)經(jīng)驗(yàn),不是cs出身,很難很難。
學(xué)習(xí)四五個(gè)月,廢寢忘食求個(gè)入門,工資無所謂以后慢慢漲?Python,方向多入門快,崗位數(shù)量還行,但是完全比不上Java。
學(xué)習(xí)一年,甚至去專門考個(gè)研,工資要求不高只求就業(yè)?Java,崗位數(shù)量排第一應(yīng)該不夸張吧,從一線覆蓋三線不夸張吧?當(dāng)然競爭也大。不過你都這么學(xué)了,難道還干不過那些四個(gè)月培訓(xùn)出來的?
學(xué)習(xí)三四五甚至十幾年年,奔著IT大神去了,那還用我說嘛?你自己就知道該怎么學(xué)了。
4.學(xué)一門語言真的能改變?nèi)松鷨幔?/p>
很遺憾,不能。我理解很多人被培訓(xùn)機(jī)構(gòu)的宣傳洗腦,覺得學(xué)會一門編程技術(shù)就能年薪百萬咸魚翻身,一輩子躺在老本上吃喝不愁。
但這是做夢。學(xué)會一門語言,在北上廣每月上萬不難,這幾個(gè)地方上萬本來就不難,想要兩萬以上要么大忽悠,要么有履歷。三萬到五萬,基本是普通人實(shí)力能達(dá)到的巔峰,也得要你摸爬滾打很多年。再往上,一命二運(yùn)三風(fēng)水四積陰德五讀書,反正我不信嘻嘻。
我之前學(xué)習(xí),也有過一些不切實(shí)際的幻想,什么學(xué)完之后BAT,P6、7、8跳跳級,隨隨便便100W,十年之后退休去?,F(xiàn)在做了這么久,也想明白了,多奮斗幾年,能拿個(gè)三五萬的就夠了,真能摸到五萬以上我感謝上蒼,摸不到也就算了。
能改變你人生的不是語言而是習(xí)慣,十年如一日學(xué)習(xí)、提升、奮斗,總有翻身的一天。
如果你是普通家庭出來的孩子,就想著在這行當(dāng)里靠自己辛苦打拼賺錢養(yǎng)家,這個(gè)行業(yè)不會虧待你,有多少能力就有多少錢,收入都有明確預(yù)期。指望著靠這個(gè)過安逸日子當(dāng)咸魚,對不起,程序員沒有安逸日子,那些企業(yè)也不會養(yǎng)咸魚。