?本系列文章將整理到我在GitHub上的《Java面試指南》倉(cāng)庫(kù),更多精彩內(nèi)容請(qǐng)到我的倉(cāng)庫(kù)里查看
創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括和靜網(wǎng)站建設(shè)、和靜網(wǎng)站制作、和靜網(wǎng)頁(yè)制作以及和靜網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,和靜網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到和靜省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
https://github.com/h3pl/Java-Tutorial
喜歡的話麻煩點(diǎn)下Star哈
文章首發(fā)于我的微信公眾號(hào)【黃小斜】也將同步到我的個(gè)人博客
www.how2playlife.com
閱讀本文大概需要 2.8 分鐘。
最近有一些小伙伴問(wèn)我,為什么當(dāng)初選擇走Java這條路,為什么不做C++、前端之類的方向呢,另外還有一些聲音:研究生不是應(yīng)該去做算法方向么,本科生不就可以做開發(fā)了嗎,為什么還要讀研呢。其實(shí)吧,這個(gè)問(wèn)題擱在不同人身上,回答可能也是完全不一樣的。我可能還是主要以我的角度出發(fā),結(jié)合一些讀者的問(wèn)題,來(lái)說(shuō)一說(shuō)為什么要選擇Java這條路。
我最早接觸的語(yǔ)言應(yīng)該是c,再后來(lái)又接觸了前端、php、C#等語(yǔ)言,對(duì)這些語(yǔ)言的了解也僅限于懂得基本語(yǔ)法,寫過(guò)一些小demo而已,那時(shí)候覺得掌握一門語(yǔ)言就是掌握它的語(yǔ)法就行了,于是會(huì)在簡(jiǎn)歷上寫,了解各種語(yǔ)言,現(xiàn)在想想實(shí)在是太可笑了。
不過(guò)真的很多初學(xué)者都會(huì)這么認(rèn)為,覺得自己不管選哪個(gè)方向都可以,這是因?yàn)樗麄儾恢雷约旱募夹g(shù)方向到底是什么,因?yàn)樗麄儾还苣膫€(gè)方向都不精。
后來(lái)慢慢接觸了Android開發(fā),能自己寫一些app,覺得這個(gè)方向還挺有趣的,于是想著以后干脆做這個(gè)吧。不過(guò)我那時(shí)候也明白自己離進(jìn)大廠還有很遠(yuǎn)的距離,于是打算考研。巧的是,讀研前的那個(gè)假期,去了一家公司實(shí)習(xí),做的是Java Web,那時(shí)候才覺得Android比Java Web簡(jiǎn)單多了呀,完全不需要學(xué)那么多框架、技術(shù)啊,于是更堅(jiān)定了做Android的決心,只不過(guò)那時(shí)候也同樣發(fā)現(xiàn)了,Java web是更加熱門的方向,崗位需求量也更大。
讀研的時(shí)候,一開始也是打算做Android方向的,買了各類Android書籍開始啃,那時(shí)候剛好遇到了個(gè)實(shí)踐課程,讓我們選方向,有Java、Android、C++等等。當(dāng)時(shí)妹子做前端,為了帶上妹子一起做項(xiàng)目,干脆就選了Java Web這個(gè)方向,想著應(yīng)該不影響我做Android啊,于是接下來(lái)的時(shí)間里就開始學(xué)Java Web了。
時(shí)間一長(zhǎng),發(fā)現(xiàn)這個(gè)方向也沒有想象的那么難,相反還挺有意思的,畢竟能用到各種各樣的框架,技術(shù)棧的內(nèi)容也很豐富,看起來(lái)好像比Android的技術(shù)含量高很多,加上自己之前學(xué)過(guò)Java,也有Java Web的學(xué)習(xí)經(jīng)歷,簡(jiǎn)歷上也能寫的好看一點(diǎn),于是一不做二不休,就開始做Java方向了。就這樣,我找到了第一份Java實(shí)習(xí),看了一遍Java后端書單,慢慢地在這條路上越走越遠(yuǎn),后來(lái)我才發(fā)現(xiàn),Java Web遠(yuǎn)沒有想象中那么簡(jiǎn)單,Java后端技術(shù)棧也遠(yuǎn)不止Java Web這點(diǎn)內(nèi)容,特別是對(duì)于大廠來(lái)說(shuō),要掌握的東西實(shí)在太多了,比如分布式、網(wǎng)絡(luò)編程、中間件等等。
所以,選擇方向這件事,有時(shí)候就是看興趣,看機(jī)遇,看你能堅(jiān)持多久,如果你對(duì)一個(gè)方向感興趣,并且愿意持續(xù)學(xué)習(xí),不斷深挖,這個(gè)方向可能就適合你,當(dāng)你在這個(gè)方向投入了一定時(shí)間之后,有了一定積累和經(jīng)驗(yàn),就不太容易再改變方向了。
之前也有很多讀者問(wèn)過(guò)這個(gè)問(wèn)題,做哪個(gè)方向更有前景,更有錢景。雖然我只做過(guò)一個(gè)方向,但是對(duì)其他方向也有一些了解和涉獵,不敢說(shuō)了解得非常多,但是結(jié)合自己身邊的同學(xué)、朋友的情況,還是可以給出一些比較中肯的建議。
其實(shí)我最早打算做的是游戲開發(fā)的,所以我們先聊聊游戲開發(fā)這個(gè)方向。
網(wǎng)易游戲在前幾年對(duì)游戲開發(fā)的招聘要求是985碩士以上學(xué)歷,當(dāng)時(shí)我就是沖著這個(gè)要求考了研,后來(lái)卻沒有去做游戲開發(fā),主要原因是游戲開發(fā)主要用的是C++,并且主要的崗位要求是客戶端方向的技術(shù),比如圖形學(xué)、引擎技術(shù),以及對(duì)C++的掌握程度。
當(dāng)時(shí)自認(rèn)為有一些Java基礎(chǔ),不愿意轉(zhuǎn)C++,同時(shí)也感覺游戲行業(yè)大廠太少了,除了騰訊網(wǎng)易就沒有什么大公司了,職業(yè)發(fā)展的空間可能也不大。自己雖然愛玩游戲,但是做開發(fā)和玩游戲畢竟是兩碼事。當(dāng)然,近兩年游戲開發(fā)的崗位需求其實(shí)還是很大的,因?yàn)楝F(xiàn)在做游戲開發(fā)的人太少了,導(dǎo)致網(wǎng)易游
戲放寬了研發(fā)工程師的標(biāo)準(zhǔn),只要求211以上即可,所以,想要從事游戲開發(fā)的朋友,其實(shí)現(xiàn)在進(jìn)大廠的機(jī)會(huì)可能比之前更多了。
說(shuō)完游戲開發(fā),說(shuō)一說(shuō)C++,C++方向和Java一樣主要是做后端的,雖然游戲開發(fā)大部分也用的是C++,但是C++服務(wù)端的需求量確實(shí)沒有Java大,加上C++的學(xué)習(xí)難度稍微搞一點(diǎn),所以我沒有選擇這個(gè)方向。
當(dāng)然,現(xiàn)在做CV等算法方向的同學(xué)都會(huì)用到C++,所以相對(duì)Java來(lái)說(shuō),C++方向選擇崗位的范圍可能也更多一些。不過(guò),正如Java也能做大數(shù)據(jù)開發(fā)一樣,選擇方向并不是選擇語(yǔ)言,比如你做游戲開發(fā)或者算法方向,要學(xué)的遠(yuǎn)不止C++,做大數(shù)據(jù)方向,Java也只是很小的一部分而已。
除此之外,前端、測(cè)試、移動(dòng)端等方向也有很多機(jī)會(huì),這些方向的學(xué)習(xí)難度可能要稍微簡(jiǎn)單那么一點(diǎn),所以有很多女生會(huì)選擇這些方向,如果你想進(jìn)大廠卻對(duì)自己不是很有信心,那么這些方向也是很不錯(cuò)的選擇。
再聊聊現(xiàn)在很火的人工智能、機(jī)器學(xué)習(xí)方向,這個(gè)方向說(shuō)實(shí)話最難的地方在于理論知識(shí),也就是機(jī)器學(xué)習(xí)理論、算法模型、統(tǒng)計(jì)學(xué)知識(shí)等內(nèi)容。很多人對(duì)這個(gè)方向趨之若鶩的原因,很大程度上是因?yàn)檫@個(gè)方向的薪資高,并且相對(duì)工程方向來(lái)說(shuō),工作強(qiáng)度要低一些。
但是,這么熱門的方向,競(jìng)爭(zhēng)有多激烈就不用多說(shuō)了,大廠的算法崗簡(jiǎn)歷多到數(shù)不勝數(shù),你沒有論文、實(shí)習(xí)經(jīng)歷或者比賽為你背書,基本上連簡(jiǎn)歷篩選都過(guò)不去,就算你的簡(jiǎn)歷很漂亮,但是很多時(shí)候由于崗位需求量不多,只要你不是特別優(yōu)秀,就可能被安排到研發(fā)崗位,這也是我身邊很多同學(xué)親身經(jīng)歷的。再有一點(diǎn),就是有很多算法方向的博士畢業(yè)生也會(huì)和你競(jìng)爭(zhēng),這就有點(diǎn)嚇人了,總之,算法方向還是比研發(fā)方向更加有難度的,不管是學(xué)習(xí)難度、面試難度,還競(jìng)爭(zhēng)激烈程度,都更加明顯。
很多人覺得讀研就應(yīng)該做算法,本科生才做研發(fā),我對(duì)此不敢茍同,因?yàn)橹饕€是還看個(gè)人實(shí)際情況,如果你想進(jìn)大廠,那么至少本科的時(shí)候就要有很扎實(shí)的基礎(chǔ)實(shí)力,這對(duì)大部分同學(xué)來(lái)說(shuō)都是比較困難的,如果你不是名校出身,我覺得進(jìn)大廠的難度還是比較大的。
很多名校背景的本科生確實(shí)可以拿到大廠的研發(fā)offer,于是他們會(huì)覺得沒必要讀研,但是對(duì)于我這種跨專業(yè)的人來(lái)說(shuō),研究生才是我開始的第一步,跟他們沒有什么可比性,所以對(duì)于從零開始的我來(lái)說(shuō),做研發(fā)比算法要靠譜的多,對(duì)于很多要轉(zhuǎn)行做程序員的人來(lái)說(shuō),也是一樣的道理,應(yīng)該選擇更加符合自己實(shí)力的崗位方向,不要好高騖遠(yuǎn)。
以上內(nèi)容純屬個(gè)人觀點(diǎn)!
黃小斜是跨考軟件工程的 985 碩士,自學(xué) Java 兩年,拿到了 BAT 等近十家大廠 offer,從技術(shù)小白成長(zhǎng)為阿里工程師。
作者專注于 JAVA 后端技術(shù)棧,熱衷于分享程序員干貨、學(xué)習(xí)經(jīng)驗(yàn)、求職心得和程序人生,目前黃小斜的CSDN博客有百萬(wàn)+訪問(wèn)量,知乎粉絲2W+,全網(wǎng)已有10W+讀者。
黃小斜是一個(gè)斜杠青年,堅(jiān)持學(xué)習(xí)和寫作,相信終身學(xué)習(xí)的力量,希望和更多的程序員交朋友,一起進(jìn)步和成長(zhǎng)!
原創(chuàng)電子書:
關(guān)注公眾號(hào)【黃小斜】后回復(fù)【原創(chuàng)電子書】即可領(lǐng)取我原創(chuàng)的電子書《菜鳥程序員修煉手冊(cè):從技術(shù)小白到阿里巴巴Java工程師》
程序員3T技術(shù)學(xué)習(xí)資源:一些程序員學(xué)習(xí)技術(shù)的資源大禮包,關(guān)注公眾號(hào)后,后臺(tái)回復(fù)關(guān)鍵字 “資料”即可免費(fèi)無(wú)套路獲取。
考研復(fù)習(xí)資料:
計(jì)算機(jī)考研大禮包,都是我自己考研復(fù)習(xí)時(shí)用的一些復(fù)習(xí)資料,包括公共課和專業(yè)的復(fù)習(xí)視頻,這里也推薦給大家,關(guān)注公眾號(hào)后,后臺(tái)回復(fù)關(guān)鍵字
“考研”即可免費(fèi)獲取。
如果大家想要實(shí)時(shí)關(guān)注我更新的文章以及分享的干貨的話,可以關(guān)注我的公眾號(hào)【Java技術(shù)江湖】一位阿里 Java 工程師的技術(shù)小站,作者黃小斜,專注 Java 相關(guān)技術(shù):SSM、SpringBoot、MySQL、分布式、中間件、集群、Linux、網(wǎng)絡(luò)、多線程,偶爾講點(diǎn)Docker、ELK,同時(shí)也分享技術(shù)干貨和學(xué)習(xí)經(jīng)驗(yàn),致力于Java全棧開發(fā)!
Java工程師必備學(xué)習(xí)資源:一些Java工程師常用學(xué)習(xí)資源,關(guān)注公眾號(hào)后,后臺(tái)回復(fù)關(guān)鍵字 “Java”即可免費(fèi)無(wú)套路獲取。