商讯信箱
用户名: @
密  码:   注册|忘记密码
登录
个人用户经销商
您的位置:首页 > 技术频道 > 正文
   你看看他的治理,包括自有规划,还有SOA制度与标准规范体系,有管理角色和技术角色,有开发过程不同阶段的规范,包括文档级别。在这个公司里面你想上个应用,首先 要经过这个过程,你想上个应用吗?你想用数据,必须找数据管理员,不可以随便用,随便加的,你不符合SOA的标准吗?对不起,一下就没有了,做不了。很牛的。所以像存储流程,一过就搞定了。所以中国还是有一些CIO非常有水准的,做的非常好。

   这就是我补充的一个实际的例子,做一个小结,就是SOA,大家不要把它小用,如果你作为一个单个应用,你不要浪费你的精力,用Web Service就可以了。做SOA不要忘了,业务驱动是重要目标,企业范围内企业架构作为一种全局规划。
谢谢。

   主持人:
   再次感谢毛先生的精彩演讲。
   下面有请SUN公司的李涛先生,给我们带来一些Java方面的真知灼见,掌声有请!

   李涛:
   谈不上真知灼见,大家交流一下,互相学习。
   我叫李涛,在SUN负责技术的传播和技术社区的培育,如果大家有需求可以直接跟我联系。
   今天我要和大家讨论的是Java面临的一些挑战,以及Java EE今后的发展和改进。
   大家参加这个会议,应该是拿到2007年中国IT蓝皮书,那本书里提到Java作为一个编程语言是第一选择。我们公司有一个半年前的数据,就是全球有500万的开发人员用Java开发,所以说Java语言是名副其实的第一大开发语言。但是Java也存在一些 挑战,2005年就有人提出RB会代替Java,Java会死掉,有没有谁同意它五年之后 死掉?十年呢?十五年之后大家都退休了,咱们不谈了。咱们就谈十年以内,现在可以看得见的挑战和改进。

   我们先看一下Java面临的挑战,然后Java的完成性,我们做了Java的改进和Java EE的改进。

   首先我们讲编程语言的挑战,Java已经有十一年的历史,但现在面临着一个很大的挑战,就是动态语言的挑战,比如说RB、PL、PY。为什么会有这样的挑战?我们做一个简单的例子,比如说S1,就是一个1的组成,N2是一个数字,它有一个数值是2。然后做一个新的字符串是S1和N2通过简单的组合,再做一个N3,就是1和2的相加,答案是3,所以新的字符串是1、2,N3值是3。大家看怎么做,定一个S1,然后N2,N3就是加一下。

   如果你用PL用,字符串加起来就是点,然后做组合计算。PY跟PL差不多,就是调用PRINT的方法,S1换成数字用IN的方法。

   最后你发现对比起来,Java做同样的这一件事用了11行的代码,240个字符,PL是5行,85个字符。PY也是5行,80个字符。

    Java有什么特征呢?
    第一个就是面向对象的,但也有概念。
    第二个,不用做的,人工的做内存的管理,语言本身就帮你做了,在你编程的时候,集中在业务逻辑上就可以了,不需要管理底层的,类似硬件的管理,你需要有这样的特点,效率会高一些。
    第三个,为了可以让他跨平台,或者运行的时候会有更高的效率,一般运行在某种虚拟机上,要这样的话,目前符合要求的就是Java,C++也在做这个事。

    我们看一下DY的特点。
    第一,可以用很短的字符编程。
    第二,你编程的时候,要用一个变量的时候不需要静态的提出来,用之前不需要定义,之前有一个功能做的时候,就把一个变量拿过来直接用,具体什么类型,定义的时候不用管它,只是在运行的时候,运行机制自动的找到它是什么类型来做。
    第三,可以用动态语言编程。
    Java从严格意义上来说功能不是很强,但是它现在很火,因为它有AJAX的技术,AJAX火了,所以Java也就火了。
PL我也用过,只不过它就像意大利通心粉一样,很乱。PL5虽然有一些发展,但是没有太大,P6我们不知道会有什么改进。这个东西很难说了,会不会出来就不知道了。
    PY用的很广泛了,比如说小型网站用的还不错的。
    RB是2000初日本发明的,非常好的一个语言,现在它火起来就是有一个网络的版本,现在看到的人也很多了。
    在业界有很多人不喜欢动态的脚本语言,主要有两个因素:
    第一个,没有STATIC TYPING容易出BUG,不容易调整。 
    第二个,不容易在虚拟机上运行,灵活性差一些。
实际上STATIC TYPING的观点有点夸大了,实际上它是有维护困难的问题。但是它维护困难以什么方式实现呢?就是以敏捷开发的方式实现的,所以业界老大SEAN McGrath,说它是一个双刃剑,你定义的时候必须提前告诉它。还有另外一些人说,你用其他的平台也可以替代STATIC TYPING达到。

   第一个原因反对理由不是很成立的,因为没有它说的这么强。但是假如和Java比较,跨平台性是一个很大的问题。

   首先Java有一定的优势,你可以告诉IDE,我的变量类型是什么,IDE可以根据你变量类型进行处理,IDE效率很高。我不知道大家是不是用PL来做,它最明显的问题就是代码自动完成,完全比Java把了很多。所以STATIC TYPING有好处的,虽然优缺点,但是还是有好处的。

    其次Java 保存的时候有很多的信息,Java5和Java4比性能有一个很大的提高。Java4的时候保存性是不存在的,是运行的时候,是看谁来运行,然后再来运行。然后5里面就改变了编译的过程,在编译文件里面存了一些安全信息。所以运行的时候,就会很快。因为它把安全信息已经做完了,存储起来了。所以编译可以说是 Java的缺点,也可以说Java的优点,因为它在你以后运行的时候一些好处的。

    所以说现在有人问了,你说DY脚本语言也有很多的优点,开发起来快,Java也有优势,到底用什么呢?这个没有最好的,只有最合适的。比如你有一个项目,你会Java,你就Java开发,因为 你学一个新的语言,也不现实。如果一个语言不是很复杂,用动态脚本来做,的确使你的开发效率大大提高。这是对的。如果你做一个银行的项目,做一个保险的,非常大的项目,比如说毛老师说的大型项目,代码就不是几行,几十行,而是几百万万行了。所以选择编程语言,还是根据自己的实践,根据自己的具体需要来决定。

    Java之所以能跨平台,不是因为Java本身,而是JVM,你在不同的平台上有相同的JVM,输入不一样,输出是一样的。另外还有API,Java语言,一共是三个部分组成的。

    将来我们会把Java Platform集合起来,不仅有跨平台的特性,还有跨语言的特性,这是以后的一个发展方向。

    JSR223有一个规范,现在做服务必须有Java,以后就不需要Java,只要你做的Java模型上带一个交换语言的接口,就可以做Service。它带来的优点,它可以拿到Java的接口,还可以拿到其他的脚本语言API,而且不需要编译,开发的成本节省了很多。从平台方面来说,Java是会赢的。
1 2 3 4 5 6 7 8 9
【内容导航】
第1页: 第1页 第2页: 第2页
第3页: 第3页 第4页: 第4页
第5页: 第5页 第6页: 第6页
第7页: 第7页 第8页: 第8页
第9页: 第9页
©版权所有。未经许可,不得转载。
[责任编辑:胡铭娅]