Sunday, December 11, 2005

JDeveloper 10.1.3 EA

I have been getting a lot of use out of the new version of JDeveloper 10.1.3. So far I feel Oracle has achieved their goals of improving the IDE and beef up refactoring and modeling capabilities. As someone who generally stays away from non-production releases, I have found myself using both 10.1.2 and 10.1.3.

I have always struggled with the modeling features in 10.1.2. They just didn't seem to perform everything I wanted them to do. I am now using the modeling features of 10.1.3 to get past many of the limitations I was seeing. I still have all of my production code in version 10.1.2 but my diagrams are in 10.1.3. I am accomplishing this by setting path settings in my 10.1.3 modeling project to include the source paths of my 10.1.2 model, view and testing projects.

As mentioned, I have a model, view and test project in 10.1.2. This is the actual code that will be deployed to our production servers. My directory structure looks simiar to the following:

c:\projects\MyProject
c:\projects\MyProject\Model
c:\projects\MyProject\ViewController
c:\projects\MyProject\Test

In c:\projects\MyProject resides my workspace file for the 10.1.2 projects. I have also created another workspace in c:\projects\MyProject that is used by 10.1.3. I have created a project named ArchitectureDiagrams in the directory:

c:\projects\MyProject\ArchitectureDiagrams

In my ArchitectureDiagrams project (10.1.3), I open the project settings and add the model, view, and test project source paths to the Java Content settings. After I have done that, JDeveloper 10.1.3 with it's dynamic directory structures automattically pulls in the files from the other projects.

Once I have completed these steps, I can start leveraging 10.1.3 features. Specifically, I am creating use-case and activity diagrams. I am creating class diagrams by simplying dragging and dropping classes onto the diagram. This is great help in keeping my diagrams in sync with my code. Finally, I can also actually open the java files that I created in 10.1.2 and use the additional features of 10.1.3 such as refactoring and code development features.

I do swap between the two different version of JDeveloper and whenever I make a change to a java file in 10.1.3, I make sure the code is still working as I will be deploying and testing using JDeveloper 10.1.2. This approach has allowed me to use the new features of JDeveloper and not lock me into using a tool that is not production release. Although I really don't want to loose my diagrams, I at least will be able to always get support for my production code in case I need it.