赛迪网 > IT技术 Java > 最新更新
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

周末巨献:有可能挑战Java优势的四种技术 (1)

发布时间:2005.12.09 16:06     来源:Matrix    作者:Bruce A. Tate

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。

1 2 3 下一页>>


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· DisplayTag在技术开发时的应用指南 (12-09) · 争议话题:选择JSF不选Struts的十大理由 (12-09)
· 教您怎样简化Java应用程序的打包和发布 (12-09) · Java数据库编程中的几个常用技巧 (12-08)
· 看沧海变桑田 Web2.0中AJAX应用探讨(二) (12-08) · 看沧海变桑田 Web2.0中AJAX应用探讨(一) (12-08)
· 详细讲解Quartz如何从入门到精通 (12-07) · Jakarta Commons中隐藏的宝贝-第一部分 (12-07)
· 如何来提高您的J2EE项目的质量 (12-07) · 用Java实现自动在数据库表中生成ID号 (12-07)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 北京新规不能霸王硬上弓 网店牌照缓期执行
· 软件外包之变的新台阶: 提高全球交付能力
· ERP案例分析 SaaS带来冲击 IT服务商面临挑战
· 通方期货CRM解决方案 房地产行业CRM解决方案
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统