|
![]() |
| 现场语录之二 |
主持人:大家可以看到,今天还有直播席,我们在中国最大的IT社区CSDN有现场直播,已经有网友提出问题。 第一个问题:想问Brian:,请问应用服务器的内核使用IOC框架来搭建会不会是一个目前很好的趋势? Brian:我不是这方面的专家,所以不能回答。 主持人:第二个问题,请问袁红岗老师,我们国家的软件行业还是不容乐观的,作为软件行业的专家,你对中国软件的发展前景,中国高校培养软件人才的方式有一些怎样的看法? 袁红岗:问了一个非常大的问题,我是一个程序员,如果让我回答这样的问题我肯定回答不好,我只能表达一下我的观点。 我们国家的软件和西方比起来确实落后很多,但是,我们还是能够赶上去,因为我们落后的时间并不是太长。过去造飞机、造轮船我们一直在仿造别人做,很难有自主创新。在软件方面,我们也走过这样的路,比如我们过去也是在仿造,看着别人做的是这个样子,我们就仿造出来。我觉得现在我们在某一些领域要做一些创新,比如过去做应用服务器,说穿了,应用服务器别人做得很多了,我们再做并没有特别出众的地方。我向大家介绍一下,我们下个月就要推出一个新技术OperaMasks,这就是我们的创新,我们自己认为这是在世界上都领先的一种技术,这个framework是以JSF作为核心引擎,同时增加了很多帮助Web开发的一些工具、一些框架。我们可以很容易的把JSF和AJAX结合在一起。在这个框架里开发的东西你不需要了解什么是AJAX,你写出你的代码,按照JSF的一套流程写出你的应用就自然而然支持AJAX,这是我们的一个创新。这只是一部分,还有其他的一些rich components,还有一些支持开发的工具。都是使这个框架成为一种创新的东西。而且我们把这个产品作为开源的产品来提供,我们就希望我们中国的软件也可以像西方一样,以前没有做的我们也能够做。 关于教育,我可能不能说得太多,但是我觉得现在的基础教育,大学的基础教育还有很多落后的地方,我们应该鼓励学生在学校里面就要有创新精神,而不是学习书本,老师教给你的只是基础。在基础之上,你要有自己的东西。 主持人:网上的问题提得很踊跃,有一个问题,想请教两位国外专家,对目前中国的应用服务器产品的发展情况如何评价? 王文彬:我对中国接触得比较久,我先发言。今天我不能做很客观的评价,因为我们JBoss也有应用服务器(笑),也是在中国在推。我们很佩服金蝶的精神,用这种精神自己去创造一个东西出来。看中国的软件开发,所以的东西从无到有,就一定要有人先做出来。但这不是一蹴而就的,这是一个产业链,必须有一个过程。我想Apuisc在这个方面做得是非常成功的,有自己的东西。现在在推开源JSF,想要推成自己的运动。我想这个精神是非常值得鼓励的。我的感觉,今天很多人关心的,很多在座的过来,我们今天在这里不是只讲中间件,讲的也是开源。 今天早上我们就谈到,开源如何跟国内的中间件厂商互相结合,上午的会中我讲到,今天你想要看的并不是现阶段我再去写别人已有的东西,也许是下一个阶段的产品。从这个角度来看,我觉得是一个思考的方向。 这个东西是由市场来做决定,最重要的是使用者。关键是使用者决定今天哪一个产品对自己是最有效用的。 Brian:因为我对中国的情况不了解,所以我无法对中国的技术和软件教育给出观点。但是我对西方比较了解,我有很多做开源的朋友,他们大多数都是自学的,他们自己完全沉浸在开源的软件中去,或者在他们的网站上做各种各样的实验,最后他们可能也获得了与他们开发相关联的工作,但主要的方式还是自学的。现在有这些方面的认证,有一些公司在做这些事情。我觉得最主要必须掌握三点: 首先,如果想要在这个方面有所成就,必须全方位的了解基本的计算机知识。 另外,知道如何在网上,在社区中掌握相关信息。 第三,如何寻找聪明的人,问聪明的问题。 主持人:相信Brian先生的三点建议对我们将来的程序员们有非常大的启示作用。 还有一个问题,想请教各位专家,目前J2EE应用服务器产品的发展方向是什么?Geronimo框架还是OSGi框架,或者是其他的方向? Brian:我们Apache正在做Geronimo,Geronimo这个项目是一些熟悉JBoss的开发人员发起的,但他们希望以一种新的方式来进行J2EE开发。它和JBoss不是普通的商业上的那种竞争关系,JBoss在各方面都做得很好。但可能有些人觉得是否有一种简单的方式或者不同的方式来取得同样的目的,从而获得一些性能上或者功能上的新特性。这种竞争是件好事,因为我们所做的是开源的产品,在开源的社区中,可能不同的小组会分享他们的经验和代码,当然他们也有一些竞争,这种竞争无论如何是和普通的商业竞争不一样的,例如我们得到了使用JBoss产品的许可,Tomcat也被许可用到JBoss之中。所以中间件的领域是一种比较生态的共同发展的环境,和商业的竞争模式是不一样的。 主持人:袁总和王博士对这个问题的看法呢? 袁红岗:关于开源软件公司和商业软件公司之间的关系,如果我们眼光放宽广一些,其实并不存在竞争关系。打个比方,开源软件是探索者,是冒险家,给我们带来新的技术,我们了解到这种技术的发展。而商业软件公司是一支正规军队,在冒险家发现新大陆之后去占领新大陆。如果两者能够互相合作就会发现更多的新大陆。所以我认为,两者之间并不存在竞争,而是在合作的基础上共同促进这个技术的进步。 王文彬:我稍微讲一下,很多人关心以后JEE的走向。现在JEE正在制订,很多新的东西,比如JEE 5,5.0给我的感觉是已经相对成熟了。学了一些Spring的东西、IOC等,然后它也解决了Entity Bean的问题,以前J2EE不成熟,最大的问题是Entity Bean。JEE 5.0是一个很成熟的版本,以后会不会取代Struts,Spring和Hibernate等等,很难说,其实他们的标准是一样的,所以没有这样的问题。 现阶段的问题是,JEE 6会到哪里去。JEE已经很大,很复杂,所以要尽量简化,但是简化以后很多人想加一些新的东西进来,比如很多人就想,比如你的应用服务器已经做得很成功了,像SCA、JBI,包括SOA的观念,我认为能不能把这些东西变成JEE 6.0,这是正在讨论的问题,我觉得以后的走向是把一些东西慢慢成熟,然后放进来。有些东西还会简化。比如说现在Security,J2EE或JEE 5里面,很多人还不能完全使用Security,还是蛮局限的。也许JEE 6.0版会有一个新的Security Model。Java的目标是让它变得实用,我对JEE 6还是蛮有信心的,但现在因为JCP的存在,它出来的时间会比较慢,这是开源的竞争优点,到最后JEE 6.0可能到最快最快要到明年年底才会出来,另外一个,我觉得JEE 5已经是相对成熟的。 袁红岗:JEE 6这几天刚刚才提交,相信还会有一段很长的路才会正式发布。从它提交的提案来看,它不是对JEE 5的一个重大改进,而是对JEE 5目前存在的缺陷做一些补充。比如将来会使用一些Profile,它的目的是让我们的应用服务器产品能够更加容易使用。如果完全按照整个规范应用服务器产品,可能会使产品越来越复杂,使用越来越不方便。有了Profile以后,比如我们只关心某一部分,我们不需要集群,不需要很复杂的功能,我们只选择一个最简单的Profile来使用,这样就使得这个产品更加简单,更加容易使用。当你发现在这个Profile上面,你的应用不能满足需求的时候,你可以再往上用更高级的一个Profile。这样一步一步的完成你的应用部署。 主持人:下一个问题,SOA可以说是现在最热的一个话题,应用服务器继续往前发展,SOA是不是各个厂商的突破口,是不是各个厂商现阶段努力的重点呢? 王文彬:我上午已经讲过SOA了,我重新再讲一次。SOA这个问题我觉得跟应用服务器有什么直接关系?很难回答。因为SOA不是一个标准,而是一个概念,今天讲概念就很大了,怎么把概念变成标准是一个最大的挑战。从这个角度来看,当慢慢成型的时候,今天我们先不讲SOA,就讲integration,有一天也许SCA或JBI会放进应用服务器的标准里面。但是在这一天来临之前,很不幸,不管是开源或闭源的厂商还是什么,一定会有自己的SOA解决方案,那么这个SOA的解决方案里面,应用服务器肯定会占很大的部分,但其他的概念现在都没有一定的标准,只能期望以后,当SOA慢慢成熟以后,大家有一个共识,就是有标准出现,下一步才有可能放进应用服务器里面。从这个角度来讲,应用服务器现在只是SOA里面的一部分,而不能代表SOA,不是说以后不会,但是可能在下一个阶段才会代表。 Brian:SOA在因特网出现以前就已经出现了,那时候,它试图建立起一套所有应用都遵守的协议。显然这是不现实的。但今天,你无论设计任何应用之前,你都会考虑一下是否应该把它做成基于因特网的。这类应用并不仅仅是一些可以用浏览器打开的HTML页面,而是你可能会先考虑把它设计为SOA应用,然后再构建一些HTML页面来使用这些服务接口。我觉得这肯定是一种构建复杂应用的好方法,更加便于使用者的应用。你可以说:“好,这就是我的SOA接口。”,而不需要把应用的细节对外公开,这样应用起来就很方便。 主持人:有人问,Tomcat有没有考虑提供EJB容器? Brian:现在里面还没有,可能在Geronimo里面才有。 主持人:JBoss和Apusic都是微内核体系,两者有何不同? 王文彬:不同到没有很大的不同,我觉得软件的产业进展并不是跳跃式的,而是渐进式的,JBoss 的微内核大概是2000年出来的,那时候算是很新的。后来,有些人从JBoss出去了,可以进一步发扬光大。JBoss的微内核体系现在发展到5.0版,也就是Micro Container。这其实也就是大家所谓的POJO化,现在的Java Object大家也(倾向于)是用POJO来做的,其实大家的东西是很一致的。POJO今天用Annotation来做的话,你就可以直接在外面定义你的service,你就不必自己再去用XML,(不必)再自己去实现这些interface。我觉得Geronimo、Apusic和JBoss之间并没有太大的不同。 同样的道理,OSGi也不是新的东西,以前就有,只是大家做法不一样。现在JBoss的Micro Container的精神已经非常像OSGi,我们以后也会支持OSGi,从这个角度来看,软件创新,尤其是开源的东西,是会让大家更进步的,因为会互相学习对方的长处。我不觉得差别非常大。 袁红岗:我们现在的微内核体系这个概念是从内核系统引申过来的,核心的部分是最稳定的,需要一个并不是很庞大的软件系统,它提供最基础的服务。在Apusic里面同样的概念也是存在的。在最核心的部分,我们有最基础的服务,包括对现场的管理、对事故的管理、对资源的管理,以及一些最基本的服务,我们放在一个非常小的软件系统里面。这一部分功能是不易变的,外部的服务不管怎么增加,比如EJB,内核是不会轻易改变的,保证它的稳定性,不容易出错的一个核心体系。将来不管你有什么样的东西出现,我们都可以在这个核心的基础上增加新的功能。 主持人:其实大家看到Brian先生已经把行李箱拿到现场了,他要赶到机场,但是很多网友向他提了问题。下一个问题,我是一个J2EE的狂热分子,我认为JSF的能量被低估了,不知道几位先生怎么看? 袁红岗:其实JSF很早就出现了,我觉得(JSF普及度不够的)一个原因是厂商对它的支持不够,SUN提出规范后就再也不管它了。其实我们一开始对这个规范也不是特别的关心,但是我们在做JEE 5的时候就发现,JSF是个很好的技术。我们可以有很多技术的创新在JSF上面实现,我们将来会在这方面投入比较大的精力,来推动它的发展。 王文彬:我觉得JSF是一个很好的技术,关键是厂商有没有支援,再好的技术,使用者不多也没有办法普及。它也许能在JEE 5里面有所突破。我觉得这个东西也许要靠市场来决定,它今天能否被接受。 袁红岗:在网上有一篇文章,说到JSF为什么不叫JSP 3.0。SUN起这个名字起的不好,让大家错失了对它的了解的机会。事实上现在还有一个新的技术,JPA技术,但SUN把它叫做EJB 3,我觉得也不合适。
|
||
|