Does Really ABAP Perform Better in Portal Development than Java?
Well, ABAP vs. Java topic is hot according to me. Today I went to SDN and saw a new article titled “Why ABAP Performs Better in Portal Development than Java” by Axel Angeli and Lynton Grice about the topic.
They have put several criteria for comparison between ABAP/BSP vs. Java. Here they are:
- J2EE versus SAP Web AS
- Finding the Right Technical Skills
- Language Complexity
- ABAP is easer to Learn
- Database Access
- Session Handling
- Development Environment
- Transport and Version Management
- Post-Deployment Adaptation
Among all criteria, they have decided the winner is ABAP. The winner is Java just for “Finding the Right Technical Skills” criteria, but there is comment there like that:
When trying to source SAP Portal developer skills, one can immediately see that there is potentially a much larger pool of Java developers out there than ABAP developers. This is mainly due to the large output from universities that have a passion for Java nowadays. However, this assertion is relative, and hence debatable, because the vast majority of Java developers have no (or only title) experience in enterprise application development. They write programs, but not applications, and have difficulties and communicating in understanding practical business issues.
They are right in terms of business issues. I always say that the ABAP language is not hard to learn for a computer programmer. Experience is very important in SAP world not only for functional consultants but also for technical consultants. When you develop ABAP programs, you have to be able to understand functional consultants’ requirements and negotiate them. To do so, you have a basic knowledge of business issues, transactions, scenarios, etc… And even as you know, there are no good documentations about technical objects (functional modules, ABAP objects, IDOCs, etc…); therefore it can be say that experience is crucial. How can be experience gained? Projects, projects, all types of projects?
Their conclusion is like that:
… There are definitely many more areas to compare, but that is not the argument here, so we look at a short selection of arguments from a Portal developer’s view only.
- ABAP introduced a fully transparent source-code just-in time compiler.
- ABAP has an unmatched deployment and version management service, TMS.
- ABAP allows easy source code debugging (also in production environment)
- ABAP integrates the Data Dictionary into Development Environment.
- Current BSP versions have more elaborate intrinsic data entry validation methods.
- Currently there are far more ABAP developers with in-depth business process know-how on the market than for any other development environment.
- Java introduced standard algorithms and data-structures through the Design Pattern School.
- Java has an abundance of independent and open source libraries.
- Java provides more features for sophisticated Web effects.
- Modern schools and universities favor Java, and hence the Java community is growing with high speed.
It is clear that SAP has a strategic direction they wish to pursue with Java, and the J2EE stack has got plenty offer in terms of open-ness and flexibility to the SAP world.
ABAP will continue to rule the back-end, and Java the front-end. Our recommendation would be to use the BSP development in 80% of “general” Portal development and Java in select, justified cases, in that 20% of the development that is hugely complex on the front-end (depending on resources of course). The SAP NetWeaver Developer Studio (Eclipse) is not mature enough to compete with the ABAP Workbench directly, and still has some way to go. … , ad future developers can mix and match the two languages as need be.
I would like to mention that they say they used SAP EP 5.0. But latest version of SAP EP is 6.0. I think they mostly have used SAP JCo Library. But SAP says we don’t need to use JCo anymore, and I believe that SAP’s strategy for Java Development is to give all resources of ABAP development environment. It means Java development will be robust, consistent than they mentioned. Actually it means that Java development will robust and flexible in terms of SAP?s infrastructure like ABAP, if you obey the SAP’s rules. Well, it’s better later to write an article about that.
Well, what do you think about all that stuff?