I have a Delphi background, also C++ background. But last several years, I involved in web projects, and worked primarily with PHP. Now I am looking for a platform to develop simple desktop applications (interacts with server). I was thinking of Java as I am used with Eclipse IDE, and have C++ background. But I see Lazarus became a mature environment. its applications even work on Java Virtual Machine. In the past I have seen that some Amateur looking technologies have became popular than professional ones like PHP, Flash even Object Pascal. So should I choose Java, or lazarus for desktop application development.
-
3I think you should choose the one that allows you to do everything that you require. Does Lazarus have all the functionality you need? Does Java? What about third party libraries? I think this is more a personal choice per task than something we can help you with. – Brandon Buck Dec 02 '11 at 16:31
-
Lazarus is native, like Delphi. Their compiler (Free Pascal) has some support for LLVM and JVM bytecode, but that is all in the initial stages, and lazarus doesn't support that. – Marco van de Voort Dec 03 '11 at 12:10
3 Answers
If you have a C++ background, try the Nokia Qt framework which has everything you want to develop desktop application. the Qt SDK is shipped with its own IDE (which's really great) and rich APIs.
Enjoy :)

- 1,060
- 1
- 7
- 18
-
Lazarus can use QT/GTK/win32/win64/Carbon as backend. And some more experimental – Marco van de Voort Dec 08 '11 at 20:34
-
1I developed in Qt and in Java. I choose Java because on Qt you can't make commercial applications, can't separate shared libraries (should pay to Qt license), so I've ended with Java. – Marin Sagovac Dec 18 '13 at 10:18
-
Of the two options, I would certainly choose Java (larger support base, more stable, more 3rd party libraries, etc).
You mention that you come from a C++ background. Why not just use C++ (theoretically easier than picking up a new language).

- 242,243
- 40
- 408
- 536
-
I would prefer C++ too, but I see Java as a refined version of C++. I do not use C++ because of development tools and support. When Delphi first came I did not have the option for choosing C++ for RAD development. And when I took web projects I did not have the option for choosing C++. Now I want to develop desktop applications that works everywhere (OS and Device) and C++ is not a option for this too. I think I will go with Java. – bkilinc Dec 02 '11 at 16:40
If Lazarus runs on the JVM, it should have access to the same libraries as every other JVM language, so you'd be learning swing, etc.
If you are going to do desktop apps and you want a decent GUI toolkit you really have two choices as far as I know, either go with a JVM language or .net
If you go with a JVM, why in specific Lazurus? There are dozens (well technically hundreds--possibly thousands) of JVM languages to choose from. Go with anything stable that helps you get the job done.
Hmm, that is UNLESS you don't work alone. If you work with others, I suggest Java (or C#) period (Maybe Scala). Otherwise you will have a heck of a time hiring and training.
There are also probably C++ GUI frameworks, even cross-platform sometimes but none will be as rich as everything that is available on the JVM or .net platforms.

- 62,186
- 18
- 105
- 157
-
You are right, I'll go with java, it is more open to teamworking. I don't work alone in web development & design business. I am just investigating for Desktop Application Development. – bkilinc Dec 02 '11 at 16:51