RDi is where you should be doing your RPG development work. Period. Here are some goodies in RDi 9.5 to make your life easier.
Written by Brian May
I am amazed every time someone asks me why SEU's syntax checker complains when he or she uses a new feature of the RPG language. In case you haven't heard, SEU is dead. I don't mean it's dying. I mean it's dead. As of IBM i 6.1, IBM is no longer enhancing the editor. New language features will never be added to the syntax checker. IBM is investing its development dollars in Rational Developer for i. If you haven't moved to RDi, the time is now.
The latest major release of RDi is 9.5. If you're not on version 9.5, it's time to upgrade. This newest release has lots of added functionality to make your job easier. Let's take a look at a few of the most significant enhancements.
Full Free-Format RPG Support
IBM has made some much-needed changes to the RPG language. As you have probably heard, RPG now supports free-format code for all specifications, not just calculations. This is an absolute necessity for bringing in new developers. The fixed-format versions of RPG code are archaic and foreign to new developers.
Fully free-format RPG allows any developer to easily understand the syntax and become productive quickly. I currently have two interns in my office who knew only a few languages from classwork when they joined our team. They learned the RPG language in a matter of a few weeks, thanks to the new syntax. After only a couple of months, they developed a major interface server for our company, including triggers, data queues, and web services written entirely in RPG.
RDi 9.5 fully supports this new syntax, including the latest enhancement to remove the restriction on the length of source lines. RDi will properly parse, colorize, outline, and navigate your new free-format code, making you more efficient and assisting you in learning the new syntax. If you aren't sure how to code something in the new syntax, just try one of the wizards found in the Source menu.
Figure 1: RDi 9.5 does an excellent job tokenizing new free-format code.
Let's face it. Sometimes you just need to get to the command line and do some hardcore work. Perhaps you need to configure a subsystem for your new application or to change some system values and test their effect on your code. While there are graphical means to do these types of tasks in IBM i Access Client Solutions or IBM Navigator for i, if you know your way around the command line, it's often faster to just crank out a couple of commands and get the job done.
Before, that meant leaving RDi and opening your 5250 emulator of choice to do the job. If you're working on a customer system, that may also mean configuring a new connection. Wouldn't it be great if you could just open a session from the Remote Systems Explorer (RSE) in RDi? Well, now you can, and it couldn't be easier. Just right-click the connection in RSE and you'll find a new option: Host Connection Emulator.
Figure 2: Right-click the connection in RSE to find the new Host Connection Emulator option.
Just select that option and you should receive a green-screen session right inside of Rational Developer.
Figure 3: RDi 9.5 can open a 5250 session next to your code editor.
If you need to customize the connection to use SSL or a different code page, just click the Host Properties tab under the green-screen window and make your adjustments.
Figure 4: Use the Host Properties tab to change connection settings for your 5250 session.
The single most important feature for writing easy-to-read code in any free-format language is indentation. The use of indentation and whitespace is, of course, unimportant to the compiler, but the mind of a developer is very different from a compiler. Indentation and spacing allow our eyes and minds to follow code and understand complex nesting blocks of code.
Just as good indentation creates clear and maintainable code, improper indentation can cause confusion and mask logic errors. After code is modified by multiple developers, there can often be different indentation styles used within the same application. Whether caused by differing opinions or just sloppy coding, the result can lead to maintenance headaches down the road.
Figure 5: Inconsistent indentation can make code difficult to read.
In the example above, lines of code are indented two spaces, one space, or not at all. Blocks of code are out of alignment with the rest of the code. While certainly not the worst example I've seen, it does work nicely for demonstrating the code formatter. Simply right-click anywhere in the code and select Source and Format.
Figure 6: The Format option can be found by right-clicking the source code and navigating to the Source menu.
The formatter then goes through the source code and realigns the code into properly nested blocks. By default, the indentation is two spaces, but it can be configured to any number of spaces.
Figure 7: The formatter applies consistent indentation throughout a source member.
The aforementioned were not the only enhancements in RDi 9.5, but they were the ones I found most useful in my day-to-day coding tasks. The following are some of the other enhancements that may interest you.
- Exporting and distributing snippets
- Major enhancements to the Code Coverage Tool
- Automatic notifications of RDi updates
- Java 8 support
- Eclipse 4.4
- Eclipse Marketplace for finding plug-ins
If you're not using Rational Developer for i or are running an older version, it's clearly time to give RDi 9.5 a try. The enhancements in this release make an already-great development environment even better. The time savings of the outline view, content assist, color coding, service entry points for debugging, and all of the other standard features of RDi make any version a huge leap forward from the days of SEU. Even the ability to view more than 17 lines of code on a screen will make you more productive.
RDi is the best option for building modern RPG applications. It's time to download a trial at http://www.ibm.com/developerworks/downloads/r/rdi/, upgrade your version, or talk to management about purchasing a license. There really are no excuses anymore. So get out there and get to it.