Some mainframe programming knowledge might translate into learning Java.
First, what do you know about object-oriented programming (OOP)? If your mainframe development has been restricted to procedural languages like COBOL or PL/1, you will need a foundation in OOP concepts such as classes, encapsulation and inheritance. You will also need to understand how OOP influences program structure and logic.
Classic procedural programs basically crank data through a more or less linear transformation process. OOP programs, in contrast, manipulate classes, which require programmers to analyze a problem as a way of herding objects. Half the struggle in developing Java skills is breaking an algorithm into classes and then assigning attributes to those classes along with methods to change their state.
Your company may offer resources if you're interested in pursuing a Java programmer job. For instance, many corporations will pay for college classes. Go get your bachelor's or master's degree and learn Java in the process. Larger companies' training departments might offer in-house courses. Look for a pipeline class designed for trainees.
If you're on your own during this skills transition, there's a wealth of information in books and online. Cay Horstmann's Core Java 1 – Fundamentals helped me a lot, as both a reference and tutorial. My copy included a CD-ROM with examples.
Once you've developed some Java fundamentals, write some programs of your own. I have developed Java code on the mainframe, but not on Windows or Linux.
Find out if your company owns a development environment like IBM's Rational Developer for System z. This Eclipse-based platform makes it easier to create, compile and debug Java.
Without a developer platform, coding Java on the mainframe is primitive but not impossible. Interactive System Productivity Facility can edit Java programs, but if you want to use highlighting to identify language elements, you have to set the edit profile to C++. Not perfect, but it works. You will also have to get familiar with z/OS UNIX System Services for compiling and executing programs.
Java 9 due for release in 2016 with variety of new features
Five Java programming tips for junior software developers
Greenfoot programming highlighted by Java expert Barry Burd
Dig Deeper on IBM system z and mainframe systems
Related Q&A from Robert Crawford
For better mainframe capacity planning, how do I convert CPU hours to MIPS? And is there a way to calculate the relationship between MIPS and MSUs? Continue Reading
I want to replicate DB2 from the mainframe to an AIX box since it's cheaper and the copy can be used for testing. Is this possible? Continue Reading
What's the impact on I/O when you run in a CPU-constrained mainframe environment? Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.