What programming languages are good for creating cross-platform desktop applications? [closed]
Looked Java. In x64 system, the window HelloWorld eat off around 20 MB of memory, and this number is growing quickly while creating new objects. Mono - just look at the player Banshee to understand that the situation is not better (Music player biting ~ 100 MB of memory, despite the fact that I always keep loaded player I don't like it).
C++/Qt, seems a good idea, but the study will have to spend a lot of effort, despite the fact that it is not known whether justified(in General Qt now as I see it is not the most stable situation, and with the advantages of the new projects people have become more careful)
Python/PyGTK was surprisingly more modest memory than java, but the language itself seems to me so unstable, maybe I just don't understand dynamic typing. The lack of encapsulation and overloading of functions is surprising. It is not clear what value returns a function. Code found is not readable just because of the lack of brackets. Somewhere stumbled upon the advice to use less function calls, especially in cycles because this is an expensive operation in Python. Before my eyes immediately introduced huge methods in 200+ rows.
PS Maybe I do something wrong because look at these languages are very superficial. Cross-platform-level compilation would suit perfectly(with the same code).
"In x64 system window HelloWorld eat off around 20 MB of memory, and this number is growing quickly while creating new objects. Mono - just look at the player Banshee to understand that the situation is not better" - this is all because of improper use and configuration of virtual machines. - 20-05-2011 в 17:46:19
By the way, how do you define 20M or more? Where did the figure of 20? When talking about virtual memory, the virtual machine 20 metres will not start at all. Because it requires a lot of memory to display dynamic native libraries: in this case the real physical memory is not consumed. PS: I have 20 metres even vim cannot start. - 21-05-2011 в 09:55:04
free - look free memory without buffers and caches, then run again free. Why python is eating less a mystery to me. - 21-05-2011 в 10:13:01
What do you think why Python don't write large applications running longer than the CGI script? Imagine that you would have to write it on the application class in Eclipse or IDEA.. I have no doubt that will be epic fail. - 21-05-2011 в 11:04:12
Why it will fail? - 22-05-2011 в 01:04:19
Which is better depends on the selection criteria. In this case, they are:
Development time and the time of the changes (and the second may be more important than the first for custom applications).
About the time of the development of young programmers usually don't bother. And often in life - winning is not the best, and first. Especially when working under the order.
About dynamic typing.
The interpreter/compiler YAP with dynamic typing would never be able to run/generate code of the same efficiency of the implementation is that with static typing.
To the question - likes/dislikes any programming language.
First, often the "not like" this - "didn't know don't know don't want to know"
Secondly, when after several completed and running programs remains "not like" is he really worth to think about changing the programming language. Development favorite programming language is a very important motivator to reduce development time and improve its quality.
(About myself - professionally(ie for money) written on plain C, Java, Python)
the only noteworthy response in the midst of plenty of topics for holivarov - 28-07-2011 в 19:53:03
I will add that for Python there is a library PyQt - 20-05-2011 в 12:05:43
Thank you for such a detailed answer. And what IDE to use for python you personally? And what pleasant side of dynamic typing? (If to consider that to declare variables and, if necessary, allow the types of clearly - not a problem) - 20-05-2011 в 14:37:17
I use [PyCharm] from a team of JetBrains. Very happy with this IDE and auto-completion works fine, and the debugger, and evolve she is very active. About dynamic typing added to the response, this does not fit =) : jetbrains.com/pycharm - 20-05-2011 в 17:40:57
you write on py3k in PyCharm? - 21-05-2011 в 15:24:07
Yes. But frankly, in military projects Python is only used as triggers in postgresql. - 21-05-2011 в 23:13:54
Qt itself is not so difficult if you are familiar with C++. But the possibility is powerful. Cross-platform total! Appreciate Qt also for the fact that the layout of appearance of objects is almost automatic - it is impossible gaudy curves (as often love to make programmers Delphi). For any operating system's appearance will be identical - you can not fear to write under Windows application which will be later compiled under Linux, and it will look the same here and there. A powerful set of classes for all occasions - multimedia, graphics, text editors, databases, etc. Stability and support for a very large company. Regular releases. Free version and version for mobile devices.
The complexity of studying the language and the set of libraries pays for itself many times over.