久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区

以文本方式查看主題

-  曙海教育集團論壇  (http://www.rfoamep.cn/bbs/index.asp)
--  JAVA語言開發  (http://www.rfoamep.cn/bbs/list.asp?boardid=64)
----  新技術倍出 誰最可能挑戰Java開發優勢  (http://www.rfoamep.cn/bbs/dispbbs.asp?boardid=64&id=2452)

--  作者:wangxinxin
--  發布時間:2010-12-11 9:13:58
--  新技術倍出 誰最可能挑戰Java開發優勢

?Bruce Tate有令人驚奇的預見成功技術的記錄。他是早期開發者中能預見Spring框架出現的一位;他在EJB3專家組放棄老的方法一年前的時候就預見了EJB2技術的消亡。在他的新書《Beyond Java》中,Bruce關注了語言和技術,這些將來有可能會在一些開發領域對Java的優勢發出挑戰。在這篇文章中,Bruce提及了四種新出現的重要技術。
  
Java是一種杰出的產業開發語言,這是因為它帶來了偉大的統一和對事實上以前并不存在的重要標準的關注。但是和所有語言一樣,Java將來也會褪色。依據我做的超越Java的研究,一個重復出現的主題是有越來越多的人相信Java已不再足夠的有效率。以下一組技術可以使你更有效率。他們不是對所有的工程都適合,但當被應用于適合的工程時,他們是優秀的工具。
  
  1.動態語言
  
  動態語言可以比像C++或Java這樣的靜態語言更加有效率。他們可以讓你用更少的語言表達更多的意思。這里,我會關注現在新出現最流行的動態語言Ruby。用Ruby的"Hello, World"和Java的作一個比較:
  puts "Hello, world."
  
  這顯然既簡單又明了。你不需要寫一些其他的代碼去做這件事。下面是用Java語言的描述:
  
  class HelloWorld { public static void main(String[] args) {  System.out.println("Hello World!") }}
  
  在Java中,類型是靜態的。這就代表了編譯器要檢查所有的類型;你必須建立和編譯一個完整的程序。在Ruby中,類型是動態的,所以你不需要去聲明他們,你可以馬上編寫和運行他們。下面是用兩種語言描述的Fibonacci 序列:
  
  First, Ruby:x1, x2 = 0, 1          //110.times do puts x2  x1, x2 = x2, x1+x2     //4end
  
  注意到在第一、四行同時聲明兩個變量,讓你可以簡潔地表達兩種不同的聲明形式。
  
  另外,注意到10是一個對象,它支持方法,如:times。再另外,在do和end之間是一個代碼塊。
  
  Ruby代碼塊可以讓你把代碼塊傳入方法。。這種技術導致了難以置信的效率和簡潔的代碼。
  
  接下來,看一看用Java實現的代碼:
  class Fib {
    public static void main (String args[]) {
     int x1 = 0;
     int x2 = 1;
     int total = 1;
     for (int i=0; i<10; i++) {
      System.out.println(total);
      total = x1+x2;
      x1 = x2;
      x2 = total;
     }
    }
  }
  
  你需要去聲明所有的變量,以及詳細地寫出來你用for循環實現的迭代。每個變量都是獨立的,所以你必須有一個臨時變量用于存放total。
  相比,動態語言更為簡潔。按照一個普通的規則,如果你可以寫更少的代碼而不犧牲可讀性,這些代碼將導致更高的效率。(但是你不可以犧牲可讀性來達到這一步,我們可以以Perl舉例作為結尾。)更為重要的是,動態語言在Java開發者想要去解決的重要問題上表現得更好,如: 元編程。 Hibernate 使用元編程技術使對象持久化。
  Spring使用元編程來為Java對象增加服務,而免除你為他們構建額外支持的煩惱。在Rails框架上,當紅的Ruby利用了自己能力來構建某種已存的最有效率的應用開發框架。
  令人驚訝的是,許多Java開發者采用了Ruby。Ant和Tomcat的發明者James Duncan Davidson正在Rails上使用Ruby,以及Java的暢銷書作者之一,JSP專家組的成員David Geary正在寫一本關于Rails上的Rub的書y。許多在Java社區里有著聰明思想的人都轉向使用像Ruby一樣的動態語言。這是因為這種新出現的語言能更好的解決最有興趣的問題。動態語言將不會完全取代Java,但是他們會適合于解決小的,輕量級的問題。?

  2.Continuation 服務
  Web編程絕對是個災難。在Java誕生十年后,我們仍舊不能構建一個使返回按鈕正確的框架。Web應用是無國界的,所以Web應用會發展得更好。但是很難去構建無國界的應用,而我們現有的框架不能給與我們足夠的幫助。你使用大多數Java的Web框架時,從根本上說,你構建了許多不相關的使用servlets或JSP技術的應用。然后通過手工保存對象來把他們集成起來,這些對象就是你需要的,用來暫時存儲對象的會話。
  Continuation是語言的構造器,它可以使你快速存儲某個線程的狀態,過后執行這個線程。基于 Continuation的web框架總體上是通過模擬一個監控狀態的應用來使web開發變得更為容易。當你的應用需要從用戶那取得數據時,這種框架使用continuation來自動保存應用程序的狀態。如果用戶按下返回按鈕或者通過瀏覽器的歷史紀錄回到以前的頁面,應用程序可以重新讀取一個continuation。
  基于continuation最好的框架是用動態語言來開發的。到目前為止,最健壯的框架是Seaside。他是基于一種Smalltalk的Squeak語言的框架。Seaside支持很好的調試功能,你可以實時檢查、調試以及在瀏覽器里改動你的代碼。Borges、Iowa和Wee都是基于Ruby且支持continuation的框架。
  Java不支持continuations,但是一些在特殊限制下構造的Java框架支持模擬continuations。這些框架具有用其他語言編寫的continuations框架的某些特征。
  ·流行的框架是用了一些高級的技術,如:字節碼增強、反射以及特殊類的裝載器。這些技術用Java部分地實現了continuations。
  ·Cocoon 2在Rhino JavaScript 虛擬機中增加了continuations,用來模擬監控狀態的應用。
  ·Spring Webflow使用了狀態機來提供對返回按鈕良好的支持,以及其他一些continuation服務的特征。
  ·Lakeshore使用了懸掛的線程來模擬continuations。這種方法不像其他方法一樣有可擴展性,同時還缺乏對返回按鈕完整的支持,但是這些預計在將來都會具有。
  每個月都會有新的框架出現。我認為在未來的三年內,我們都會使用支持基于continuations的方法的web開發框架,這種框架是由一種語言或者其他語言編寫的。

  3.慣例超越配置
  Java開發者經常探索用于改進配置的方法。新的框架越來越多的使用Java 5批注來進行配置。其他的框架是用一種不同的方法。Rails中的Ruby常用慣例來推斷需要在其他框架進行配置的聯系。例如:在結束的時候,一個叫BlogController且有一個show方法的Rails控制器,會自動在blog_controller目錄里提交一個叫show.rhtml的視圖。Rails還使用命名慣例來綁定數據庫表里持久化的類。默認情況下,Perosn類會與用英語的復數people與表進行匹配。新的框架將會支持慣例,而不是配置。

  4.元編程
  就像前面提到的一樣,在Rails編程框架上的Ruby里,存在著許多hype的。我認為這種hype是正確的。在Rails上的Ruby讓你比起java,可以在一個更抽象的層次上編寫你的程序。有了Rails上的Ruby,你可以創建域對象,這種對象可以發現相關聯的數據庫表的內容。例如:你可以寫這樣簡單的模型對象:
  class Person < ActiveRecord::Baseend
  這種類表面看起來相當的受限制。但是一旦你執行它,Rails就會展現它的神奇。這種實現了持久化Rails的活動紀錄框架與相關的數據庫關聯,以及為了表定義掃描系統表,還發現數據庫里列項。然后,活動記錄為數據庫中的每一列增加一個屬性,為數據庫中id列名在類中增加一個獨一無二的標示符。你可以用下面的類去編寫代碼:
?????? ?person=Person.newperson.name=\'Bruce Tate\'person.email=\'bruce.tate@j2life.nospam.com\'person.save
  數據庫的列名和行為都會在運行時后加入Person類。你可以很容易的擴展Person類:
  class Person < ActiveRecord::Base has_many :carsend
  通過Ruby中一個belongs_to的簡單方法和:department標示符,我實現了所有我想做的。活動記錄隱式調用了Ruby的元編程來添加了所有的方法和變量,這些方法和變量用來管理一個任何一個部門之間的一對多關系。Rails用戶使用域語言來管理像繼承這樣的關系,另外可以用Ruby語言在一個更抽象的層次上工作。Rails無縫擴展了Ruby語言。
 

 Rails會不會是下一代偉大的框架?有可能。要做一個選擇的話,Rails應該會是在使用Ruby或是其他動態編程語言的元編程框架潮流中的第一個。或者,你可能看到Rails會作為某些松散對齊技術的中樞,它是以元編程作為基礎的。在任何情況下,你都會更有效率。


久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
亚洲一区二区三区中文字幕 | www成人在线观看| 91激情在线视频| 一本一生久久a久久精品综合蜜| 麻豆亚洲一区| 秋霞久久久久久一区二区| 色播亚洲婷婷| 影音欧美亚洲| 欧美日韩精品一区视频| 日韩欧美一区二区免费| 久久久久国产一区二区三区四区| 中文字幕久久午夜不卡| 亚洲精品国产成人久久av盗摄| 亚洲成av人影院在线观看网| 蜜臀av在线播放一区二区三区| 国内欧美视频一区二区| 91色porny| 日本精品一区| 欧美日韩中文另类| 久久综合999| 一区二区成人在线观看| 精品一区二区在线播放| 91亚洲资源网| 日本成人三级| 欧美日本国产一区| 久久精品视频在线免费观看| 亚洲视频在线一区| 青青草91视频| eeuss鲁片一区二区三区在线观看| 国产伦理久久久| 一区二区三区不卡在线| 日韩午夜精品电影| 亚洲免费资源在线播放| 日本va欧美va精品发布| 成a人片亚洲日本久久| 欧美日韩亚洲综合一区二区三区激情在线| 一区二区三区|亚洲午夜| 国产精品久久波多野结衣| 色综合天天综合网国产成人综合天 | 中文字幕亚洲视频| 日韩av网站免费在线| jvid福利写真一区二区三区| 免费一区二区三区在在线视频| 91福利区一区二区三区| 久久久国产精品麻豆| 爽爽淫人综合网网站| 51精品国产人成在线观看 | 欧美一卡二卡三卡四卡| 一色屋精品亚洲香蕉网站| 麻豆精品一区二区| 国产一区二区精品免费| 4438成人网| 一区二区三区四区中文字幕| 成人小视频免费在线观看| 五月天亚洲综合情| 久久久久久久久蜜桃| 另类小说视频一区二区| 免费精品视频一区二区三区| 日韩一区二区电影网| 亚洲午夜久久久久久久久电影网| 成人av资源网站| 在线播放豆国产99亚洲| 国产精品久久久久久久久快鸭 | 欧美午夜理伦三级在线观看| **欧美大码日韩| 福利一区二区在线| 在线视频一区观看| 亚洲免费毛片网站| 91视频一区二区三区| 3atv一区二区三区| 日韩精品乱码av一区二区| 久久综合九色欧美狠狠| 国产清纯白嫩初高生在线观看91 | 日韩久久免费av| 免费在线视频一区| 日韩亚洲视频在线| 亚洲日本韩国一区| 99九九视频| 日韩欧美一级精品久久| 精品一区二区日韩| 色偷偷久久人人79超碰人人澡| 亚洲欧美另类久久久精品| 91久久精品国产91久久性色tv| 欧美日韩不卡一区二区| 美国av一区二区| 色综合久久中文字幕| 亚洲成年人影院| 噜噜噜噜噜久久久久久91| 欧美精品一区二区精品网| 国产麻豆精品在线观看| 欧美性大战久久久| 日韩成人dvd| 亚洲日本精品| 亚洲乱码国产乱码精品精的特点| 成人自拍视频网站| 久久精品在线观看| 999精品视频一区二区三区| 久久综合九色欧美综合狠狠| 国产成人aaa| 日韩视频一区在线观看| 国产乱子伦一区二区三区国色天香| 色噜噜久久综合| 视频一区中文字幕国产| 在线免费一区| 日韩国产欧美三级| 日本丶国产丶欧美色综合| 美女网站在线免费欧美精品| 欧美私模裸体表演在线观看| 老司机精品视频在线| 欧美色成人综合| 国产福利一区二区三区视频在线 | 亚洲精品乱码久久久久| 神马影院我不卡| 视频一区欧美精品| 欧美中文字幕一二三区视频| 久久成人免费网| 日韩一区二区三区av| 99久久精品国产麻豆演员表| 久久久久久免费网| 国产一区精品视频| 亚洲一区二区欧美日韩| 在线看不卡av| 国产91丝袜在线播放九色| 精品欧美一区二区三区精品久久| 91丝袜高跟美女视频| 亚洲四区在线观看| 色婷婷久久久综合中文字幕| 黄页网站大全一区二区| 亚洲精品一区二区精华| 久久久com| 美女视频黄频大全不卡视频在线播放 | 99精品在线免费| 国产精品久久看| 视频一区国产精品| 国内精品久久久久影院薰衣草| 日韩三级视频在线观看| 国产呦系列欧美呦日韩呦| 午夜电影网亚洲视频| 欧美一区二区三区公司| 91网站在线观看视频| 亚洲精品日韩专区silk| 欧美性欧美巨大黑白大战| 99国产精品视频免费观看| 亚洲免费观看高清完整| 欧美日韩精品一区二区在线播放| 成人18视频日本| 亚洲电影视频在线| 日韩欧美中文字幕制服| 蜜桃狠狠色伊人亚洲综合网站| 久久成人免费网站| 国产精品嫩草影院com| 色婷婷国产精品| 99v久久综合狠狠综合久久| 亚洲国产欧美一区二区三区丁香婷| 51久久夜色精品国产麻豆| 国产精品加勒比| 蜜臀91精品一区二区三区| 欧美经典一区二区| 在线亚洲高清视频| 99在线影院| 韩国理伦片一区二区三区在线播放 | 亚洲国产精品www| 成人性生交大片免费看中文| 亚洲精品中文字幕在线观看| 337p亚洲精品色噜噜| 久久亚洲综合网| 高清成人在线观看| 五月婷婷综合在线| 欧美国产综合一区二区| 欧美专区日韩专区| 欧美激情专区| 91丨porny丨蝌蚪视频| 老司机精品视频线观看86 | 欧美日韩国产小视频在线观看| 久久久久久久久一区二区| 国产成人精品午夜视频免费| 午夜精品成人在线视频| 中文字幕一区二区三区不卡在线| 欧美伦理电影网| 午夜久久资源| 国产精品制服诱惑| 丁香桃色午夜亚洲一区二区三区| 婷婷久久综合九色综合伊人色| 国产精品久久久久一区二区三区 | 亚洲色图欧美激情| 精品乱码亚洲一区二区不卡| 欧美午夜在线观看| 亚洲区一区二区三区| 久久精品一二三区| 99re在线| 99re热视频精品| 懂色av噜噜一区二区三区av| 麻豆精品新av中文字幕| 亚洲国产aⅴ天堂久久| 国产精品国产三级国产普通话蜜臀| 精品国产亚洲在线| 欧美一级片免费看| 欧美精品自拍偷拍| 欧洲视频一区二区| 色先锋aa成人|