java后端開(kāi)發(fā)需要掌握什么 JAVA前端和JAVA后端哪個(gè)好?
JAVA前端和JAVA后端哪個(gè)好?作為一名資深程序員,丁哥來(lái)回答一下這個(gè)問(wèn)題。Java總的來(lái)說(shuō)算是后端開(kāi)發(fā)程序語(yǔ)言。那么Java能不能用來(lái)做前端呢?當(dāng)然是可以的。有這么幾種方法可以用Java來(lái)做前端。
JAVA前端和JAVA后端哪個(gè)好?
作為一名資深程序員,丁哥來(lái)回答一下這個(gè)問(wèn)題。Java總的來(lái)說(shuō)算是后端開(kāi)發(fā)程序語(yǔ)言。那么Java能不能用來(lái)做前端呢?當(dāng)然是可以的。有這么幾種方法可以用Java來(lái)做前端。
一種是手機(jī)編程,比如說(shuō)安卓手機(jī)應(yīng)用開(kāi)發(fā),就可以用Java來(lái)寫程序。
另外一種是用Google web toolkit, 這個(gè)工具包可以把Java的代碼轉(zhuǎn)化成JavaScript。從而被前端使用。一個(gè)比較有名的例子就是prime ng. 這個(gè)前端的控件庫(kù)既可以被用在Java書寫的桌面前端,又可以用在網(wǎng)頁(yè)開(kāi)發(fā)的前端。它的代碼實(shí)現(xiàn)部分是Java。
再一種就是以前常規(guī)的Java桌面應(yīng)用??梢灾苯佑胘ava的介面開(kāi)發(fā)包進(jìn)行應(yīng)用開(kāi)發(fā)。隨著網(wǎng)絡(luò)應(yīng)用的開(kāi)發(fā),桌面應(yīng)用已經(jīng)變得不如以前那么流行了。
還有一個(gè)不得不提的是,現(xiàn)在非常著名的軟件開(kāi)發(fā)工具比如說(shuō)eclipse, netbeans, intellij都是用Java開(kāi)發(fā)的。
上面說(shuō)了,Java的前端開(kāi)發(fā)部分。下面來(lái)說(shuō)一下,Java后端開(kāi)發(fā)應(yīng)用。
一個(gè)是Java網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)。這類的技術(shù)有spring boot, spring mvc, struts, 或者類似的電子商務(wù)架構(gòu)都使用Java語(yǔ)言開(kāi)發(fā)。
另一個(gè)是大數(shù)據(jù)技術(shù)領(lǐng)域。Hadoop, kafaka 等大數(shù)據(jù)技術(shù)都在使用Java。
再一個(gè)就是科學(xué)應(yīng)用領(lǐng)域。這個(gè)領(lǐng)域包括自然語(yǔ)言處理, 人工智能分析,機(jī)器語(yǔ)言研究等等。這個(gè)領(lǐng)域如果用到編程語(yǔ)言的話Java就是默認(rèn)的選項(xiàng)。這是因?yàn)镴ava更安全,更可移植,更具有維護(hù)性,還有高質(zhì)量的并發(fā)工具。
最后一個(gè)應(yīng)該算是嵌入式領(lǐng)域。其實(shí),最初的Java定位就是嵌入式系統(tǒng)開(kāi)發(fā)。它只需要13兆的內(nèi)存,就可以跑起來(lái)。很多設(shè)備,比如說(shuō)啊,SIM卡呀,光刻播放器,一些儀表,電視,都在使用嵌入式Java技術(shù)。
上面大體講了一下Java這門編程語(yǔ)言的具體應(yīng)用領(lǐng)域,很希望聽(tīng)到您的想法,歡迎在下面留言,感謝關(guān)注丁哥開(kāi)講,咱們下次再見(jiàn)。
本人本科大二,隨手可以寫java網(wǎng)課上的倉(cāng)儲(chǔ)系統(tǒng)(無(wú)法聯(lián)網(wǎng),圖形化界面,sql),在業(yè)內(nèi)算什么水平呢?
不妄自菲薄,也不要妄自尊大,我做軟件20多年了,編程不僅僅是用什么語(yǔ)言,關(guān)鍵在于思想。編程語(yǔ)言只是器,工具而已,把一個(gè)工具用的很熟沒(méi)有什么驕傲的,除非你要跟寫詩(shī)的人去比編程。一個(gè)軟件要實(shí)現(xiàn)哪些功能,這些功能用戶怎樣用的才爽,簡(jiǎn)單易用,穩(wěn)定如新才是最重要的。否則就是個(gè)半吊子,在這行并沒(méi)太大的前途
前端工作量大還是后臺(tái)工作量大?
鄙人作為一個(gè)曾經(jīng)做了四年后端,一年半偽前端的工程師,來(lái)說(shuō)句客觀的話。首先,我想說(shuō)論技術(shù)棧復(fù)雜度來(lái)說(shuō),前后端都不淺,那些只懂后端的覺(jué)得前端就是一個(gè)兼容性的,還有只懂前端,覺(jué)得后端就是crud的,都是高估自己,低谷別人的人。一個(gè)人精力是有限的,每個(gè)技術(shù)路線可以深入的內(nèi)容又非常的多,一個(gè)程序員,其實(shí)大部分時(shí)間解決的,都是如何實(shí)現(xiàn)某種業(yè)務(wù),如何優(yōu)化重構(gòu)古老的工程,特別是大廠里,螺絲釘不要高估自己的作用。
所以當(dāng)我們討論誰(shuí)的工作多的時(shí)候,按照大概率的情況,基本沒(méi)區(qū)別。而你非得討論那些只有少數(shù)人,少數(shù)情況才需要面臨的問(wèn)題,比如前端的跨端開(kāi)發(fā)方案,如何磨平各端差異,如何克服動(dòng)畫性能各端瓶頸,以及后端面臨的高并發(fā),高可用性,數(shù)據(jù)庫(kù)分庫(kù)分表方案,緩存方案,安全策略,通信方案等等。面臨這些攻堅(jiān)問(wèn)題的人,都是那些少部分人解決的。市場(chǎng)上大部分人,要么是螺絲釘,要么是拿來(lái)主義,真的,誰(shuí)也別瞧不起誰(shuí),大家都是打工人,工作內(nèi)容沒(méi)太大差別!