Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Will Learning C++ Help for Building Fast/No-Additional-Requirements Desktop Applications? [closed]

Will learning C++ help me build native applications with good speed? Will it help me as a programmer, and what are the other benefits?

The reason why I want to learn C++ is because I'm disappointed with the UI performances of applications built on top of JVM and .NET. They feel slow, and start slow too. Of course, a really bad programmer can create a slower and sluggish application using C++ too, but I'm not considering that case.

One of my favorite Windows utility application is Launchy. And in the Readme.pdf file, the author of the program wrote this:

0.6 This is the first C++ release. As I became frustrated with C#’s large .NET framework requirements and users lack of desire to install it, I decided to switch back to the faster language.

I totally agree with the author of Launchy about the .NET framework requirement or even a JRE requirement for desktop applications. Let alone the specific version of them. And some of the best and my favorite desktop applications don't need .NET or Java to run. They just run after installing. Are they mostly built using C++? Is C++ the only option for good and fast GUI based applications?

And, I'm also very interested in hearing the other benefits of learning C++.

like image 281
Srikanth Avatar asked Oct 03 '08 18:10

Srikanth


People also ask

Is C good for desktop apps?

A programmer can use C++ not only for the development of desktop applications but also for systems, browsers, games, and so much more. To edit and debug the source code of C or C++, you can use IDEs like Eclipse, NetBeans, Qt Creator, Visual Studio, and XCode.

Is C programming worth learning?

Learning C is worth it. It is hard to avoid C because it is used to write OS kernels, databases, compilers, and many other applications. Knowledge of C will be required to debug or improve them.

Is C still used in 2022?

The C programming language will turn fifty years old in 2022. Yet despite its long history, C remains one of the top "most-used" programming languages in many "popular programming languages" surveys.

How long does it take to learn C programming?

How Long Does It Take to Learn C? It can take a few weeks to a few months to learn C. Each programmer has their own specific timeline in learning the programming language, especially if they are an absolute beginner. Therefore there is no one-size-fits-all for learning how to code using C.


2 Answers

yep, C++ is absolutely great. Check Qt. It has a great Python binding too, so you can easily prototype in Python, and when/if you need extra performance, porting to C++ is a mostly 1:1 translation.

But in fact, writing C++ isn't so hard either when you have a great platform, the worst part is writing all the class declarations :-)

like image 197
Javier Avatar answered Oct 01 '22 05:10

Javier


If you want to build Windows applications that will run without frameworks such as .NET or virtual machines/interpreters, then your only really viable choices are going to be Visual Basic or C/C++

I've written some small Windows apps before in C++ code, and there is definitely a benefit in terms of speed and ease of deployment, at the expense of difficulty going up for development. C++ can be very fast, natively compiles, has many modern language features, and wide support. The trade off is that it's likely that you'll need to write more code in certain situations, or seek out libraries like Boost that provide the functionality you're after.

As a programmer, working in C++ and especially in C is good experience for helping you understand something just a tad closer to the machine than say, .NET, Java or a scripting language like VBScript, Python, Perl etc. It won't necessarily make you a better programmer, but if you are open to learning new lessons from it you may find that it helps you gain a new perspective on software. After all, most of the frameworks and systems you depend on are written in pure C, so it will never hurt you to understand the foundations. C++ is a different animal from straight C, but if you develop in C++ for Windows you'll likely find yourself working in a mix of C and C++ to work with Windows APIs, so it will have a trickle-down effect.

like image 36
Jay Avatar answered Oct 01 '22 06:10

Jay