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

Java是新的COBOL嗎?

開發(fā) 后端
COBOL(Common Business Oriented Langauge)是面向商業(yè)的通用語言,又稱為企業(yè)管理語言、數(shù)據(jù)處理語言等,是最早的高級編程語言之一,是世界上第一個商用語言。前端時間網(wǎng)絡(luò)上就Java是不是COBOL進(jìn)行了一番熱議,公說公有理,婆說婆有理。究竟孰對孰錯?本文對此進(jìn)行了一番分析。

COBOL(Common Business Oriented Langauge)是面向商業(yè)的通用語言,又稱為企業(yè)管理語言、數(shù)據(jù)處理語言等,是最早的高級編程語言之一,是世界上***個商用語言。前端時間網(wǎng)絡(luò)上就Java是不是COBOL進(jìn)行了一番熱議,公說公有理,婆說婆有理。究竟孰對孰錯?本文對此進(jìn)行了一番分析。

文章內(nèi)容如下:

 

[[49473]]

 

如果你用Google搜索“Java is the new COBOL”你會發(fā)現(xiàn)有很多結(jié)果,對Java的誤解進(jìn)行反駁,我相信這一想法大多數(shù)是從Ruby社區(qū)提出的,Ruby從開發(fā)人員的角度來分析,認(rèn)為Java太依賴開發(fā)工具,不需要打開一個文本編輯器就可開始編程。另一方面,Java有很多類型,它是一種靜態(tài)類型的語言,使開發(fā)人員工作起來繁瑣,這就是為什么Java開發(fā)者認(rèn)為IDE是如此重要。

當(dāng)不少Java開發(fā)者遷移到Ruby后,好像Java停滯了,不管是誰寫了Swing應(yīng)用程序都能提示你:匿名內(nèi)部類使你的代碼比原有的大5倍。所以,很多人認(rèn)為Java是新的COBOL,他們有這些共同點:

1.Java太冗長

2.Java呆滯

3.只有大型企業(yè)使用它。

原文作者詳細(xì)分析了這些觀點:

冗長和呆滯

在Java 7和Java 8中冗長呆滯已經(jīng)得到解決,Java 7解決了冗長的很多問題,而Java 8已經(jīng)將語言推向了一個新的編程范式,面向函數(shù)編程。

Java 8是Java的一個轉(zhuǎn)折點,這也表明顯示Oracle非常重視語言向后兼容性的演繹性發(fā)展。

Java 7地址太冗長

Java平臺***架構(gòu)師Mark Reinhold說:Java 7是演進(jìn),Java 8是革命。

在Coin項目中Java 7借鑒了很多新特性,以下是一些新特性:

  1. switch (lang) {    
  2. case "Java" :    
  3. out.println("I like frameworks!");    
  4. break;    
  5. case "Ruby" :    
  6. out.println("I like Pabst Blue Ribbon!");    
  7. break;    
  8. case "PHP" :    
  9. out.println("I like WordPress!");    
  10. break;    
  11. }   

類型推斷:

  1. Map<String, List<String>> peopleByDept = newHashMap<String, List<String>>();   

變成:

  1. Map<String, List<String>> peopleByDept = newHashMap<>();  

在Inspired by Actual Events JavaOne 2011 keynote post提到了很多Java 7新的簡化方式。

Java 8推動語言進(jìn)步

Java 8則是轉(zhuǎn)向了新的語言,增加兩個主要特性:

1.Lambdas / Closures

2.A proper module system(aka Jigsaw)

原來我們用內(nèi)部類實現(xiàn)類似閉包時,如下:

  1. Component button = new Button("Click me!");    
  2. button.onClick(new EventHandler() {    
  3. public onEvent(Event e) {    
  4. out.println("I was clicked!");    
  5. }    
  6. }   

而Lambdas則可以表達(dá)成:

  1. button.onClick(e => out.println("I was clicked!"));   

企業(yè)使用Java

那么企業(yè)還在用Java嗎?當(dāng)然,Apple, Twitter, LinkedIn, SquareSpace都在使用,還有很多公司直接的或者間接的通過JRuby Jython Scala或Clojure這些基于JVM的新語言來拓展Java的開源生態(tài)系統(tǒng)。

綜上所述,Java沒有停滯,正在越來越好,如果你說Java是新的Cobol,就如同說Ruby是新的Java一樣錯誤。

原文:http://sd.csdn.net/a/20111109/307231.html

【編輯推薦】

  1. Java 8整裝待發(fā) 圖謀云計算
  2. Java 8決定采用跟C#一樣的Lambda句法
  3. Java 7是蜜糖還是毒藥?
  4. JRuby和Java 7 我們可以期待什么
  5. 漫談Java 7的新特性與C# 2.0的相似之處
責(zé)任編輯:陳貽新 來源: CSDN
相關(guān)推薦

2011-12-13 01:05:52

2023-09-07 15:43:58

2023-08-26 16:06:10

COBOLJava數(shù)據(jù)

2020-04-14 13:10:36

天網(wǎng)終結(jié)者代碼

2020-04-07 07:49:03

COBOL程序員系統(tǒng)

2020-04-08 08:43:58

iPhone SE蘋果手機(jī)

2011-03-01 16:49:38

NoSQL內(nèi)存硬盤

2022-02-11 14:45:22

COBOL 代碼應(yīng)用程序編程語言

2009-04-13 15:29:49

COBOL編程語言商業(yè)語言

2025-01-30 00:00:00

API指令集計算能力

2015-01-23 13:28:11

OfficeWindows Pho

2011-03-30 10:44:39

COBOL

2023-10-19 13:41:00

數(shù)據(jù)訓(xùn)練

2023-08-25 13:32:05

COBOLJavaAI

2010-03-04 15:50:14

Android架構(gòu)

2015-06-15 11:20:11

數(shù)據(jù)中心綠色數(shù)據(jù)中心

2023-10-08 09:00:00

LLMGitHub人工智能

2009-07-03 10:48:12

JSP和JSF

2013-08-22 10:27:13

應(yīng)用神器微信

2023-04-23 10:25:40

物聯(lián)網(wǎng)IOT
點贊
收藏

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