回覆列表
  • 1 # 程式碼旋律

    每個技術都有它自己的生命週期,該涼的時候自然會涼,該火的時候也得火。

    我只談談自己對這兩門語言的瞭解和看法:

    1,JAVA與PYTHON歷史

    論歷史悠久, Python甚至比Java還要早幾年, 但是Python的使用環境基本是在實驗室、研究機構和課堂,沒有大規模商業化應用,所以多年以來默默無聞;而JAVA自1994年確定名稱併發布1.0版本,就是為網際網路而生的,近25年來,我們可以看到網際網路經歷了怎樣的發展,JAVA伴隨了這一過程,到目前,各大網際網路電商巨頭企業,比如阿里、京東甚至美團等,核心業務都是執行在JAVA技術體系的,有足夠大的規模;Python火爆源於AI火爆,AI從實驗室走出來進入大眾視野經歷了數十年的時間,而AI的基礎之一就是大量的資料,大量的資料來自於網際網路,所以大家有同一個淵源

    2,語言之間能否相互替代

    在某個具體的技術領域,選用某種語言,不是語言本身決定的,有好多層面和環節,比如在WEB服務開發領域,選擇JAVA是因為JAVA有成熟的開源框架,有較大的程式設計師基礎,有成熟的專案經驗,有各個歷史版本迭代的背景,所以並不會出現用Python去重構一個成熟的JAVA專案這種情況,只會是這個專案適合用什麼語言就用什麼語言,適合於不適合,既要考慮現狀和背景,也要考慮生態體系,還要考慮使用者的學習成本以及人力成本,甚至維護成本。

    3,語言的發展方向

    不同的技術解決不同的問題,不同的領域有不同的問題。

    JAVA的特點是嚴謹,學院派,編寫程式碼過程顯得有些刻板而複雜。但我們在實時資料流處理的時候更願意用Scala而不是java就是因為函數語言程式設計支援不夠,寫起程式碼過於複雜,而scala就很簡潔

    Python語法簡潔,靈活,封裝得恰到好處,有豐富的第三方模組可以呼叫。但我們在做網際網路服務應用的時候還是不願意使用,是因為可維護性不如JAVA,效能也差,如果需要提升效能,需要用C語言本地實現Native方法,帶來新的工作量,失去跨平臺特性。

    所以目前各自都有存在的理由和必要性,誰也不會馬上涼涼。

  • 2 # IT人劉俊明

    作為一名IT行業的從業者,我來回答一下這個問題。

    首先,在大資料和人工智慧的推動下,目前Python語言的上升趨勢確實比較明顯,而且隨著工業網際網路的發展,未來在大資料、人工智慧技術逐漸落地應用之後,Python語言的應用前景必然會更加廣闊,所以當前對於程式設計師來說,學習一下Python程式設計還是有一定必要的。

    但是,Python的發展並不意味著Java語言就馬上會被淘汰掉,雖然目前Java語言的使用率出現了一定程度的下滑,但是由於Java語言的生態體系非常龐大,而且Java語言在生產環境下有非常穩定的表現,所以未來Java語言在產業網際網路階段依然會扮演比較重要的角色。

    與當前的Python語言相比,Java語言依然有一定的優勢,主要體現在三個方面,其一是Java語言的生態體系比較健全,這能夠在很大程度上降低產品開發的風險;其二是Java語言的效能比較穩定,這也是為什麼大型網際網路平臺更願意採用Java語言的原因之一;其三是Java語言有龐大的程式設計師群體。

    雖然短期內Python語言並不會取代掉Java語言,但是由於Python和Java在開發場景上高度重疊,所以未來Python語言必然會藉助大資料和人工智慧的發展而蠶食掉一部分Java語言的份額。從這個角度來看,雖然目前Python取代Java的速度比較慢,但是由於程式開發領域的人才迭代速度比較快,所以未來Python取代Java的速度也許會逐漸提速。

    對於程式設計師來說,尤其是對於Java程式設計師來說,使用Python程式設計還是能夠體會到一些樂趣的,所以建議Java程式設計師嘗試一下Python語言。

  • 3 # 前端達人
    首先我們來分析下,Python 為什麼這麼火?

    首先 Python 能做的事情比較多,比如網站的後端開發、自動化運維、資料分析師、遊戲開發者、自動化測試、與其他語言混編、智慧硬體、人工智慧AI等你能想到的相關領域,除了這些還有其語言的特性所決定的,比如簡單明瞭,很容易上手,豐富的第三方庫、開源,有龐大的愛好者的強力支援等特點,尤其當今大學中最常被教授作為首選語言等原因,將 Python 推到很火的位置。

    然後我們在來拿 Python 與 JAVA 在語言自身方面做下對比

    1、執行速度 java 更快

    java是靜態語言靜態編譯的,而Python動態型別語言,一邊執行一邊編譯,因此在速度執行方面 java 比 Python 快許多

    2、歷史遺留專案, java應用的場景要比Python多的多

    java 在大型系統方面的應用,目前還是無法撼動的,比如現在的電商、金融銀行大型系統、網際網路產品的後臺服務,由於 java 的安全性穩定性,團隊開發更具操作性,因此這方面完勝Python。

    3、開發效率,如果專案小的話,Python 開發效率優於 java

    Python的開發效率非常高,同樣一個功能,java需要十幾行,如果用 Python 寫可能就幾行,程式碼量遠遠少於 java,但是專案大起來的話,在專案管理和程式碼質量管控方面,Python這方面遠遠不如 java。

    接下來我們在來分析下 Python 在人工智慧方面的使用

    由於 Python 的火爆,在人工智慧方面的類庫比Java多要多,因此如果你有一個很好的想法和專案,使用 Python 能夠快速幫你驗證演算法和資料模型的建立,這方面開發效率比Java快多了,如果隨著專案的擴張,在處理資料方面的效能就比不過 java 和 C 這些語言了,因此到了專案的後期,隨著商業化的推進,相關的演算法和邏輯有可能還需要 java 和 C 語言輔助提高系統性能。

    最後分析下 java 和 python 的就業機會

    目前在一線城市 Python 的就業崗位會多些,但是和Java相比還是有差距的,在工資待遇方面,除了人工智慧領域,java的工資還是普遍較高的。還有在二三執行緒序,Python的就業機會很少,因此從就業方面來說,短時間內 java 需求量還是巨大的。

    小節

    綜上所述,雖然 python 很火,但是 JAVA 的霸主地位,還是無法撼動的,還會在很長一段時間內,長期存在,根本不會涼。

  • 4 # 生活桃

    不要被一些言論迷惑了,要實實在在的去了解每一種語言,這樣才能讓你有正確的認識。本人也在程式設計界摸爬了這麼多年,說說自己的看法給你參考:

    1.首先說說python,毫無疑問最近兩年它是一個奇兵,也成了大家討論的話題,連現在少兒程式設計都是叫你學python,我的天。而之所以出現這種狀態,歸根結底還是大資料+人工智慧的飛速發展,看當今,任何企業都想往這方面靠。但我不得不說,python在人工智慧領域確實有他的優勢,但也僅僅是這個領域,在其他方向上它還沒能達到能統治的地步。所以要看好python,但不能只看python。

    2.我們再說聲java,誰說的它要沒落了,看來你是沒真正瞭解它。java除開自身語言的很多優勢外,還連續佔據程式語言排行榜首,可見不能小覷,java在web開發上非常流暢,而且跨平臺,也支援bs/cs混合開發喲。在穩定性及開發成本來說佔據絕對優勢。而且java其實也是可以做大資料和人工智慧的開發。所以java不會沒落,它還會長時間大放異彩的。

    3.最後,我們不要說某種開發語言怎樣怎樣,任何一個開發語言會流行,肯定有它獨到的地方,讓不同的開發語言在各自的領域上發揮各自最大的作用吧。

  • 中秋節和大豐收的關聯?
  • 人忽然富了,是一種什麼體驗?