自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Java程序員的未來 走向混合編程時(shí)代

原創(chuàng)
開發(fā) 后端
Java平臺(tái)上的多語言混合編程正成為主流,單一的Java開發(fā)已經(jīng)無法滿足當(dāng)前軟件復(fù)雜的需求,對于Java程序員而言,技術(shù)單一化正變的危險(xiǎn),因?yàn)槟阒車氖澜缫呀?jīng)變得復(fù)雜;混合編程時(shí)代已經(jīng)到來。

【51CTO觀察】編者注:本文摘自一位美國開發(fā)者的博客,作者Nirav觀察到Java世界一些有趣的變化,單一的Java開發(fā)已經(jīng)無法滿足當(dāng)前軟件復(fù)雜的需求,越來越多基于JVM的語言開發(fā)被應(yīng)用到軟件項(xiàng)目中,Java平臺(tái)上的多語言混合編程正成為主流。

在09年的JavaOne大會(huì)期間,51CTO曾報(bào)道過Java領(lǐng)域的幾大趨勢,多語言、混合編程的發(fā)展便是其中的重點(diǎn)。基于JVM的語言正在開始流行,這為Java平臺(tái)上多語言混合編程的發(fā)展提供了技術(shù)基礎(chǔ);在實(shí)際應(yīng)用中,每種語言都可以針對自己擅長的方面更好的解決問題;日趨復(fù)雜的軟件需求也使得混合編程的應(yīng)用場景更加頻繁。對于Java程序員而言,技術(shù)單一化正變的危險(xiǎn),因?yàn)槟阒車氖澜缫呀?jīng)變得復(fù)雜;混合編程時(shí)代已經(jīng)到來,你準(zhǔn)備好了嗎?

最近幾年,基于JVM平臺(tái)在編程語言方面發(fā)生了巨大的變化。比如動(dòng)態(tài)語言(如:Javascript,Jruby,Jython,Groovy)和函數(shù)式與面向?qū)ο蠹婢叩?a target="_blank" >Scala等。我很高興我們現(xiàn)在有很多選擇,到目前為止,我不認(rèn)為某個(gè)單一語言可以像之前的Java一樣獨(dú)占JVM。

在某種程度上,JVM上出現(xiàn)多種語言共存是件好事,一個(gè)工具不可能適用所有需求。我們不能指望Java在GUI方面足夠好;就像C語言一樣,Java從來都不是為了開發(fā)動(dòng)態(tài)Web應(yīng)用而設(shè)計(jì)的,但我們還是嘗試使用JSP、JSF和大量的框架來對抗PHP、Rails和Python在Web上的生產(chǎn)力。好在Java對平臺(tái)細(xì)節(jié)和內(nèi)存管理的抽象層次足夠高。這些基于JVM的新語言在各自的領(lǐng)域內(nèi)也隨之可以更進(jìn)一步的抽象。

JVM上的語言百花齊放
JVM上的語言百花齊放

在不遠(yuǎn)的未來我們將會(huì)看到,我們的項(xiàng)目中,并行進(jìn)程用Clojure編寫,展示層使用Jruby/Rails,中間層是Java。每個(gè)應(yīng)用層都將使用不同的編程語言實(shí)施,然而,接口對每一層的開發(fā)者都是透明的。這是個(gè)大事,客戶端和服務(wù)器將使用不同的運(yùn)行時(shí)和編程語言,在之前的Java平臺(tái)上前所未有。

這對于Java開發(fā)者意味這什么呢?

◆對于Web開發(fā)者而言,你將要學(xué)習(xí)很多與Struts、JSF、JSP不同的東西,我們的開發(fā)不再是model1、model2和MVC。

◆對于非Web開發(fā)者而言,你所寫的代碼可讀性將更強(qiáng),并且可以采用上面所提到的任何一種語言來打造適合你項(xiàng)目的DSL;而且,你無需擔(dān)心偶爾的復(fù)雜性以及框架會(huì)影響到你的項(xiàng)目。

Java平臺(tái)開發(fā)者的生活(或履歷)將會(huì)改變,他們將興奮于現(xiàn)在不只一種編程語言可以使用,而不是只有框架。我從來不認(rèn)為Java語言將走向滅亡,不是因?yàn)楝F(xiàn)存的大量API庫是使用Java編寫的,而是因?yàn)榈厍蛏现繨ava的程序員太多了。工具支持Java、本地JVM支持Java(譯者注:指運(yùn)行在JVM上的基礎(chǔ)軟件)。Java會(huì)像C語言一樣,你能做的任何事都將被潛在的支持,成為一個(gè)基礎(chǔ)平臺(tái)。

后記:本文是作者對Java平臺(tái)混合編程的變化趨勢給的一些體會(huì)和觀點(diǎn)。事實(shí)上,混合編程在我們身邊已經(jīng)有所應(yīng)用并被廣泛認(rèn)可。讓每種語言發(fā)揮在自己擅長的領(lǐng)域,更直接的解決問題是當(dāng)前軟件開發(fā)應(yīng)對日趨復(fù)雜的項(xiàng)目需求的一個(gè)方向。

在《尋找成為開發(fā)高手的密匙》一文中,我們強(qiáng)調(diào)過技術(shù)的“廣度”和“深度”,其中的廣度意味著在技術(shù)方面可支配的工具、技能和方法廣泛的多。這也在另一個(gè)方面肯定了多語言混合編程的使用對開發(fā)者技術(shù)水平提高的作用。

 

【閱讀推薦】

  1. 再論Java已死 基于JVM的語言已成Java最大威脅
  2. 漫談Java理念的轉(zhuǎn)變與JVM的五大優(yōu)勢
  3. 2010年將是Java模塊化的一年
  4. 淺談C++與Java混合編程
責(zé)任編輯:佚名 來源: 51CTO.com
相關(guān)推薦

2011-02-15 13:12:02

JavaC++

2015-09-24 08:43:13

程序員未來

2014-07-31 09:50:41

程序員

2016-11-01 07:32:35

Java

2009-07-20 09:53:43

Java混合編程

2015-08-12 09:02:03

程序員大齡未來

2018-10-15 09:50:07

程序員高薪淘汰

2015-12-24 10:25:30

微軟程序員時(shí)代

2012-06-15 09:54:58

程序員編程開發(fā)

2015-08-20 14:34:25

程序員java基礎(chǔ)網(wǎng)絡(luò)編程

2015-04-09 13:36:13

程序員大齡程序員出路

2020-12-21 11:34:37

程序員編程技術(shù)

2012-08-30 10:05:40

編程編程語言程序員

2013-11-14 10:05:25

程序員職業(yè)轉(zhuǎn)型

2010-10-25 10:51:21

程序員

2015-02-03 02:40:33

程序員盲人程序員

2014-11-10 09:46:57

程序員

2015-05-11 10:44:04

程序員缺程序員

2011-07-01 14:55:28

Qt QML C++

2021-10-26 16:25:25

編程語言JavaPython
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號