作為一名研發人員,這兩個語言我都比較熟悉,早期我使用Java做Web開發,也使用Java做動態軟件體系結構的實現,后來使用Python做機器學習方面的項目,總的來說這兩個語言我都比較喜歡。我在頭條上還撰寫了Java和Python的學習文章,想學習這兩門語言的朋友可以關注我,相信一定會有所收獲。
Java之所以能得到廣泛的應用,一個重要的原因是Java的互聯網基因,從Applet到Servlet、JSP,從RMI到JMS再到EJB,從Struts到Spring,Java這一路走來正是互聯網技術發展的縮影。Java以豐富的功能、強大的性能、可靠的表現、優秀的擴展性贏得了研發人員的青睞,目前互聯網大型商業服務平臺大多采用了Java技術,這就是對Java性能的高度認可。
Java不論在傳統的Web開發領域,還是在移動互聯網、云計算、大數據領域都有廣泛的應用,這些應用是助推Java不斷發展和完善的動力。但是Java也有其自身的缺點,一個是語言本身的復雜性帶來了較長的開發周期,另外模式化內容較多,給人的感覺“很重”,另外模塊化一直做的不夠好。這些都讓Java程序員比較苦惱,另外在一些場景開發下,使用Java并不是一個好的選擇,比如大數據、機器學習領域的某些應用。
Python的流行有一個重要的原因就是簡單,Python做場景開發比Java要簡單太多,尤其是做大數據和人工智能領域的研發。一方面Python的語法結構比較簡單,比較符合程序員對開發語言的預期,另一方面Python的庫非常豐富,寫程序就像在“搭積木”一樣。
我在做機器學習研發的早期使用的是Java語言,后來改用Python,讓我一下節省了大量的時間,而這是實實在在的幫助,所以未來在大數據、機器學習方面Pyton應該會得到更廣泛的使用。程序員出身的我,有時候使用Python都有一種“罪惡感”,但是想想研發的進度要求和目標定位就能說服自己。我使用Python總是有一種輕松的感覺,不知道廣大Python程序員是否也有同樣的感覺。
目前,Java的應用依然比Python廣泛,而且在可預見的未來Java依然會得到大量的應用。Python最近幾年的發展非常迅速,如果Python能解決性能問題,那么在未來超過Java也是有可能的,畢竟沒有人喜歡復雜。
如果你有Java或Python方面的問題可以咨詢我。