Visual Basic for Java?


Picture:Clock Published on June 17th, 2006 in Best of, Java, Other

You gotta be kidding right? Well, I’m not. And this could become something big and meaningful. It could win over a few million people over to the Java platform. But first things first:

As Visual Basic 6 gets older and older, more and more problems start to appear. Microsoft stopped supporting it, hoping most developers would migrate to Visual Basic.Net. But a lot of companies still have huge investments in Visual Basic 6 code, thus not allowing them to simply migrate to the .Net framework. As other technologies like operating systems evolve (remember Vista which is due to release sometime this millennium?), the problems programming for a platform which is not being supported anymore, get bigger and heavier. Not being sure if VB 6 applications will work flawlessly on Windows Vista and Microsoft not planning to do something on this part, means it is about time to start thinking of migrating your code (even if it seems impossible to some companies). If a VB 6 application is running on a dedicated Windows 2000 or XP machine (a point of sale system for example) and it may continue to do so for a couple of years, then I guess it’s okay and you still have plenty of time before migrating. But that’s not the case for most applications. So which options do you have?

Sun comes to the rescue! Sun has a new project called “Semplice”. It made its first appearance on the JavaOne summit. It enables Visual Basic 6 developers to code for the Java platform, while not having to learn the .Net framework which scared a lot of VB 6 developers because of its overly complex nature (although in my opinion it kinda resembles the Java platform). At the current stage, the project is still very young and immature. It allows you to import your VB 6 source code and compile it into a Java class file. This way you get cross-platform compatibility out of the box! But it doesn’t compile every source code you can find. Windows 32 API calls are not supported. As well as OCX (and probably Dynamic Link Libraries, too). So you might eventually have to rewrite parts of your code or cut some features to enable compatibility. This project seams very promising, but I kinda wish it had been done a few years earlier, so that right after Microsoft stopped supporting VB 6, you would have had a mature, working project, enabling you to migrate to the Java platform. Let’s see how fast Sun continues development on this project.

Since I used to count myself to the Visual Basic 6 developer crowd as well, I do not hate them, although I abandoned VB 6 for Java quite a while ago. I still like its simplicity and its efficiency. Often times I wish Java was a bit more like Visual Basic, easier to use and a lot faster to get results with, especially while doing GUI programming.

To end this, I have a valuable tip to all you desperate VB 6 developers (and Java developers maybe too). There are a few good alternatives out there. RealSoftware’s REALbasic provides great features (even cross-platform compatibility) and greatly resembles the look and feel of VB 6. It is being continuously developed and its company, plans to support it for as long as they exist, as they do not have any other products at the moment. They even provide a free edition for Linux (you can’t compile cross-platform binaries with that one though). If you’re a VB 6 developer, you should definitely take a look at it, because it really is the next best thing to VB 6, if not even better and it looks to be very future-prove.

Then there’s also PowerBasic, which seems to be pretty fast, but not as user-friendly. I have not used this product, so I won’t go into detail here, but it seems to be mainly the compiler you get.

FreeBasic is a free, open-source alternative. You’ll only get the compiler, so building GUIs might be awkward. There are compilers available for Windows, DOS and Linux.

And last but not least, is PureBasic. This one owes its roots to the good ol’ Amiga. It’s available for Windows, MacOS X, Linux and AmigaOS. It is pretty inexpensive at $99, enabling you to compile for all four platforms I mentioned and receiving future upgrades for free. It’s also supposed to be very fast, because it directly translates your Basic code to Assembler instructions making it perfect for game development.

Do you know any other great Basic products? If so, please mention them in the comments. I would also like to hear from your experiences with VB 6 or its alternatives.

Share This

Trackback URL for this post:
http://www.yatblog.com/2006/06/17/visual-basic-for-java/trackback/


6 comments

    Jim Bethancourt June 29th, 2006

    IBM Alphaworks posted a tool called “Code Migration Planning and Assessment Workbench for Visual Basic” at http://www.alphaworks.ibm.com/tech/compass?

    It can produce code metrics for a VB6 app, migration estimation metrics for a rewrite effor, and port the forms to the Eclipse RCP. I haven’t put any of our projects through it yet, but I’m going to give it a shot in just a bit.

    Idetrorce December 15th, 2007

    very interesting, but I don’t agree with you
    Idetrorce

    Robert Plakosh August 20th, 2008

    Hi. I’m interested in migration from VB6 to C#.
    I’ve seen some solutions for VB6 to VB.NET, but I don’t like VB.NET I want C#.
    Could you give me any pointers?

    Martin August 20th, 2008

    Hi Robert

    If you try Google, you’ll find a few solutions, but most of the good ones are commercial applications. You’ll probably have to rewrite your app anyways, as C# follows object oriented programming much more strictly than VB6 did. VB6 even didn’t support most of the OO features.

    Robert Plakosh August 20th, 2008

    I found this http:\\www.artinsoft.com. They have great company references. I think I’ll ask for a trial.
    Any other tools?

    Naresh October 1st, 2008

    Has anyone used Artinsoft’s tool? Its been around for a while.
    http://www.newcode.com have migration software tool that is regarded as being superior. There is a free trial too for VB6 to C#, vb.net or Java.

Shout it out!