Gerry,
Here's my opinion on the matter, for what it's worth.
First of all, while Thomas wrote one of the more insulting replies in
this thread, he also managed to be exactly right about at least one
thing. So I quote:
Thomas said:
I think you are naive to believe that such a translation would help you.
The most common thing between Java and C++ is the syntax. Java's class
library (usually heavily used in any Java application), and Java's
garbage collection are fundamentally different from what you have in
C++. As a consequence, a Java program is most likely structured very
differently from a C++ program.
This is a very reasonable explanation of what you can expect from a
conversion tool. If you were familiar with a language that exhibits
wildly different syntax, I could see translating just so you're more
comfortable with the resulting code. Java, though, is almost identical
to C++ regarding its procedural language features and general syntax.
The only major things that differ are exactly those things that you will
not be able to translate in an automated way.
I expect if you've really got a bunch of poor code, that it's mostly
poor in how it interacts with the core library or other third-party
APIs. You're absolutely not going to be able to automate a conversion
from a Swing-based application to an MFC application with Visual C++.
The means of performing common tasks are just so different from each
other that this would be better done as a translation by hand.
If I were you and had a project of this size, I'd start learning Java
and try to improve as you go. Write unit tests. Use automatic
refactoring support. Make changes that you think should still work and
then repeat your unit tests to verify that they do. If you're
experienced with C++, you should have a fairly good idea what
constitutes good design in an OO environment, so you are qualified to do
this. The change across languages, though, just introduces more work
and more cleaning up to get done.
And, of course, if you have specific questions we're happy to address
them.
--
www.designacourse.com
The Easiest Way to Train Anyone... Anywhere.
Chris Smith - Lead Software Developer/Technical Trainer
MindIQ Corporation