Answer the question
In order to leave comments, you need to log in
What is the best and fastest way to write a GUI application?
There was such a need - you need to write a simple application for receiving ads in a newspaper. So the application already exists, but it is done crookedly, slows down and does not have some of the necessary functions.
Previously, I only wrote web applications on RoR. All my experience in developing desktop applications comes down to Delphi, because my friend used it and taught me at the same time.
So what's the best way to write an application? Multiplatform is desirable, but in principle only the Windows version will do.
My options:
- Ruby + some GUI framework, but I think that it will be inconvenient to build an interface and the program will slow
down - C ++ using Visual Studio (or take Borland Builder? I'm already familiar with Delphi). There is only one drawback - I do not know C ++ well
- Python - I always wanted to learn it, is it worth writing a GUI program on it?
- Good old Delphi, because he already wrote something on it.
In principle, I have already chosen the database - sqlite, because it is convenient, fast and in one file.
Answer the question
In order to leave comments, you need to log in
Do not listen to those who recommend Delphi.
1. It does not develop (unicode was only added in 2010 (or 2009)!).
2. Not only is it proprietary, it's also paid!
As for C ++, then in no case try to use Visual Studio and all sorts of perversions like MFC, only you will take out your brain and hate the pluses, from which, in truth, there is only a name.
What remains?
Nokia Qt, and you can code both in C ++ and in your favorite ruby, python.
C# WPF, everything will be told for me.
The rest is not worth attention, IMHO.
Why can't everything be done on the web? Cross-platform will be available everywhere))
If there are no strict performance requirements, then I would advise WPF (or Silverlight if you are ready to sacrifice some of the features for the sake of makosi and work from the browser).
C# is much simpler and develops much more dynamically than C++. Although it’s still worth reading Richter over time, since simple and concise pieces of C # code sometimes turn out to be terribly inefficient.
Personally, it's hard for me to imagine something more convenient and simpler than C# WinForms. If the task is really "here and now", then, imho, you should choose this option. If I'm looking forward to learning something new and interesting, I would choose WPF. From a strategic point of view, it's probably best to learn some good Javascript UI toolkit and do everything on web interfaces.
If you need to write quickly:
Then C# plus WPF.
And if there is time for development, plus a desire, then Python or Ruby can be tried)
If you have a task to write a simple program, and at the same time you would like to learn something new and you know Ruby, then I would advise you to try IronRuby - this is an opportunity to write an application in a language you already know, but at the same time get acquainted with the power of the . Net.
Of course, you can start learning Java, C # or C ++, but in my opinion it will be too laborious for such a task.
My choice: Nokia Qt. Now this framework has grown a lot and allows you to simply do complex things.
Just wondering why you don't consider the same Delphi as a candidate? At least in the text of the question, I did not find direct contraindications. The only limitation is multi-platform. But under the same Linux, a simple Delphi program under Wine will run without problems.
Each sandpiper praises his swamp :)
If you need to quickly and well, you need to use a ready-made framework. Anything can slow down if you feed it with a “phantom”. In your case, qt would be the best choice, I think.
Delphi?
Java (SWT)?
dotNet (any language from the family, which one is closer)?
Depends on the task: if you just need to quickly write an application, you need to take a familiar tool that you already know, i.e. Delphi. If you are learning something new, then Python, I think, will be a very good option, because. you can write desktop applications on it and use it as a server version, i.e. the experience gained will be very useful.
It all depends on the goals of development: If you need cheap and cheerful, then
Writing is based on what you know best for the target platform, or what you can learn the fastest. For Windows with installed office - MS Access - everything is in one file, if desired, you can connect the client to the SQL server or to the file server, you can distribute it as one file as an application for Access Runtime - without installing Akses itself.
If you need to write for the sake of learning something new, then look at which platform developers are paid more or which developers are more often required on freelance and job search sites.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question