Tim: What significant features were introduced in JDeveloper 10g?
Ted: There are two things that are significant over previous versions. The first is productivity with choices. You pick the pieces that make sense to you, and we try and make you productive using those pieces. That goes for the technologies you choose as well as the development styles you choose.
The second major thing is the Oracle Application Development Framework [ADF]. ADF is new in 10g although a lot of the components are proven frameworks that have been in the product or used internally before. ADF is a development productivity framework. It’s a set of libraries that runs on standard J2EE application servers, in fact we’re the only framework that runs on application servers other than our own. Its job is to reduce a lot of the complexity in building a J2EE application and help developers focus on the business logic.
Tim: So how does ADF relate to Business Components for Java [BC4J]?
Ted: BC4J is now called ADF Business Components, and is one of many components in ADF. We’ve refactored some of the functionality in it to make it more applicable to other technologies. A lot of the declarative data binding that we have in Oracle ADF is actually code that originated in BC4J, and we’ve refactored to allow that to work with web services, EJBs, and regular Java classes.
We’re not like BEA and Microsoft saying hey, we’ve come up with this brand new framework, it’s 1.0, we’ve written it from scratch, trust us with all your important data and business. BC4J had a proven track record.
Another component in ADF, called UIX, was actually a set of rich UI components and render kits that we had internally. We built them for our eBusiness suite, so if you’ve ever used our eBusiness products, you’ve interacted with some of our UIX components. We pulled them out, made them more universal and aligned with the standards, and added them to the ADF Framework.
We also added new code to fill in the gaps. ADF is a single end-to-end Framework to solve the entire application development problem. But the key thing is, you don’t have to use all the components of ADF. You can pick the ones you want. If you like BC4J, great, use it. If you have a different solution, that’s OK too, the other parts of the Framework still work.
Tim What is ADF best suited for?
Ted: Previous versions of JDeveloper were focused on the Java coder. We also had Oracle Forms, which was focused on the high-level business user. A lot of other vendors are still in that mode. For example, Sun has NetBeans focused on the developer, and Studio Creator focused on the business RAD developer. IBM has Eclipse focused on the developer and Rational Extreme focused on RAD, We decided that approach wasn’t the way to go. We wanted a single environment that would adapt to any developer. So we started with the core base of the code – if you’re a programmer you can always get to the code – and then we built levels of design-time abstraction on top of that. That allows us to appeal to different types of developers.
The idea is that it’s a base application development framework, so it’s not like some of the MDA tools which are really good at data entry and form-based applications. This is a full-fledged J2EE development environment where you can build any app.
Tim: What place do wizards have in JDeveloper?
Ted: We actually backed off of the wizards a little bit. I think wizards are about doing things for you which you could have done yourself, but saving you time. Some of our wizards had turned into full editors for application data. The problem is that the type of application that you can define and edit in wizards is very focused. So in 10g we actually backed off and added more of a visual environment. There’s more flexibility, but you still get a nice set of visual tools. You can visually edit your web pages, visually build your page flows, visually build your back-end data models. As we move forward you’ll probably see some of the wizards come back a little bit, but in any product when you’re done with the wizard you should have a good idea of what just happened for you.
Tim: Is JDeveloper just for Oracle databases?
Ted: We can work with any SQL-compliant database. We certify on DB2, Oracle, and Microsoft SQL Server. On the application server side, ADF is the only framework that is certified on other application servers. We have Oracle application server, we also certify on JBoss. We certify on BEA. We will certify on IBM. It runs, but until recently we didn’t have a push to certify on WebSphere.
Copyright Tim Anderson Sept 23 2004