回覆列表
  • 1 # 程式設計師技術之旅

    以題主自訴來看,目前以及掌握了Java以及前端,已屬於打通前後端了,大前端範疇再加一個移動端可以成為全棧工程師。

    Node.js與Java作為服務端相比,從穩定性、併發性來說Java還是佔有不少優勢的。Node.js優勢在於能用同一種語言完成前後端的工作。

    從題主掌握的語言及涉及到的開發,已屬於全棧工程師,可在Java領域做進一步的深入研究,Java易學難精。

    共勉!

  • 2 # 一個存在感小透明

    從題主的描述來看,你是有潛力往全棧方向發展的。個人不建議捨棄java,因為nodejs雖然使很多前端工程師也能開發伺服器,但是落實到實際的大中型伺服器,nodejs還是有侷限性的,接下來我們分別來分析nodejs與java在後端開發的角色。

    nodejs

    node.js其實是一個讓js執行在服務端的開發平臺,使得js在程式設計界的地位一躍與php,Python等等稱兄道弟,並且能夠利用JavaScript的v8引擎動態的編譯與執行。

    它的優點可以簡要概述為3個:

    1 nodejs支援RESTful API,並且可以在自身是單執行緒的限制下,實現對任務的併發處理(透過事件迴圈來達到這個目的)。

    2 同時,它非阻塞模式的IO處理使得它能夠在相對低系統資源消耗的情況下展示出較高的效能以及負載能力,最適合做依賴其他IO資源的中間層服務。

    3 最後,nodejs的開發要比Java快,執行效率也要高。

    因此自從2009年誕生後,就一直非常受到前後端開發者的青睞。

    但是nodejs也有缺點,那就是由於它不是靜態型語言,要在執行時候才能知道型別錯誤,無形中增加了除錯成本。而且nodejs在面對大型專案的時候,容易出現混亂,比如知道有問題,但是一時半會卻定位不到問題發生點的情況。

    Java

    Java可以說是網際網路+時代下PaaS概念的完美支持者。PaaS(Platform-as-a-Service)意為平臺即服務,就是說現在越來越多的產品是以網頁的形式來提供服務,而不是一定要安裝一個軟體在你的電腦上。這種情況下,Java利用SSM,SPRING BOOT等框架,就作為server端的程式語言大展身手了,藉助這些框架,就算是初學者也能快速開發出一個穩定而複雜的java web專案。

    而且,Java的年紀比nodejs大了一倍還多,一直是程式語言排行榜上的top,這就意味著Java語言有著深厚的積澱以及廣泛的使用,如果使用Java進行開發遇到問題的話,能夠從網上獲得更多的支援與幫助。

    此外,從java本身效能來看,Java非常適合大型專案的開發,而且其安全性與穩定性也都是後端語言中的佼佼者。

    最後,如果題主曾經有過Java開發經驗的話,我更加建議題主先回到Java領域深耕,而不是到nodejs這篇藍海中去探索,因為目前能夠使用Java開發的全棧工程師的用武之地會比只會nodejs的工程師更廣闊些。

  • 中秋節和大豐收的關聯?
  • 中韓圍棋2019年真的會混合排名嗎?對此你怎麼看?