作者:Matt Danielsson 翻译:冯强
译者:Java在Oracle ERP软件上的成功,客户跨平台和集成电子商务的需求,都对SAP公司C/S构架的R3提出了挑战。SAP R3到4.6D版本提供了很多优秀的接口(RFC、BAPI、IDOC等),也有分布式Java Gui客户端解决方案,但全面支持Java,已是SAP开发者和领导层不得不考虑的问题。也许,当全新的SAP R3 5.0版发布时,将给业界一个惊喜。下面的短文,对业界顾问、开发人员和ERP厂商也许有一点参考价值。
从一开始,ABAP似乎是SAP开发唯一可选择的语言。
这一切在11月(2001年11月-译者注)得到改观,SAP公司和副主席Hasso Plattnert先生张开怀抱,宣布Java将成为SAP的第二开发语言。从此以后,SAP所有的产品都将遵循Java的技术标准,也就是说,现在你可以选择用何种语言进行SAP的开发。
那么哪一个开发语言更适合工作呢?业内的ABAP开发人员有必要再多掌握Java语言吗?Java,或者J2EE是很特别的,从技术上看比ABAP更有优势。但这并不是说曾经风光的ABAP语言已经落后或需要出局了。实际上,两种语言各有短长,这是勿庸质疑的。
哪个开发工具更适合工作?
Karl Kessler(SAP商业开发语言和构架经理)认为如果将来一切都放在Web上,那Java无疑是老大。他说,很显然SAP的选择是为了在Java上运行Web用户接口。按Axel Kratel(Borland公司Java商业应用产品经理)的说法,Java的强大在于它的开放性。它的一些自由开发社团多年来的努力,保证着Java技术的持续改进和领先,使Java的前途一片光明。Java的执行效率常常是被攻击的要害,但新的版本无疑在这方面有了长足的进步。
“Java已被证明了,是易于移植的开发平台”,Kratel如是说,“它提供了强大的跨平台能力,从企业开发到移动应用都有它的身影。现在,Java不仅仅应用于Web。”
ABAP,另一方面也是非常成熟和稳定的综合开发平台,Kessler说。ABAP受益于强劲的后台服务器支持,还有它良好的数据库编程性能,ABAP的优势还在于它强大的性能和轻巧简洁。ABAP显然并不没有日落西山。
以一个开发人员的角度看,Java和ABAP有很多相似之处,Kessler说。它们都面向对象,都可以被编译成字节码,都应用于企业开发服务。
它们的区别在于,ABAP有更多的4GL(第四代语言)数据库编程的功能,而Java则没有。另一方面,ABAP只能运行于服务器端,而Java除此以外也可运行于客户端。还有,ABAP的语法是关键字导向的(类似于Cobol),Java的语法则更象C。
最好掌握两种语言!
和生命中其它事情一样,有选择就好。懂两种开发语言可以让你根据手中的任务,选择最适合工作的工具。在很多开发案例里,并用开发是相当不错的,但结果取决于开发者的偏好。
Kessler相信,职业背景决定了你选择开发语言的偏好。
“如果你是计算机科学家,你可能更喜欢Java,”他说,“如果你是从医师转行做开发,ABAP可以让你更快的上手。”
学习Java。
如果你已经了解ABAP,是不是转入Java很容易呢?显而易见,无论你学何种新语言,你以前编程的经验都将发挥作用。特别在ABAP开发者转学Java这点上,将更容易些。
“SAP多次在介绍ABAP概念的课程中强调ABAP和Java的相似性,” Kratel说到。
举个例子,先从学习ABAP的面向对象概念入手,比如学习ABAP类、接口、例外等等,然后再学习Java的语法,比较两者之不同,Kessler如是说。这两种语言非常相似(感觉有点言过其实—译者注),理解你已知的和你要学的知识的内在关联,会加速你的学习进度。
Kratel认为开始学习Java的最好方法,是充分利用强大的互联网,那儿有大量的文章、指南和有用的小程序帮助你开始学习。
Java相对其它高级开发语言是比较容易学习掌握的(Kratel可能指Java语法相对C++而言吧—译者注)。也就是说,Java天生的强大和灵活性使它成为值得去掌握的复杂开发平台。学习的过程,就是经验的积累,需要很多很多的经验。幸运的是,有IBM Robocode这样的在线辅助学习系统寓教于乐,让学习者轻松地提高技巧。如果你希望迅速开始开发,Borland公司的JBuilder个人版不仅免费,而且对学习Java开发很有帮助。
没有什么理由不赶快行动起来,至少应把熟悉Java编程基础知识做为学习的一个方向。
“Java是外面每个独立开发者的兴趣所在,”Kratel谈到,“如果你将来准备在SAP的体系下做开发,同时掌握ABAP和Java双语,将是你最好的装备。”