I am about to start learning C++. I currently am a PHP programmer, I also know h
ID: 654916 • Letter: I
Question
I am about to start learning C++. I currently am a PHP programmer, I also know how to write Java code and create Java GUI applications. I have browsed http://www.cplusplus.com/doc/tutorial/ and to me it looks fairly similar to what I already know, just a few language syntax differences here and there. I want to create a C++ GUI application, and from what I researched, it sounds like using Qt and Qt Creator is a good place to start.
So, is using Qt and Qt Creator a good/decent way to start to learn C++ GUI programming or should I do it some other way?
Explanation / Answer
I (as a PHP and C# programmer initially) who have been learning C++ for the last three years, would without a doubt recommend that you start with the basics of C++ tbh. PHP is nowhere near C++, as well as Java. Java and C# are more alike, as they introduce garbage collection, no pointer arithmetic etc. There is so much basic ground and principles to cover in C++, before starting.
I would personally recommend that you invest as much time as you can by going through a (or more) "C++ for dummies" books, and when you feel you're getting a good grasp of it, I would also recommend reading "Efficient C++" and "More efficient C++" by Scott Meyers. On the surface C++ could definetly look easy enough, but there is so much details and "hidden" rules that you definetly need to know about.
If you start writing a GUI (for which platform?) in c++ now, without this knowledge, you are absolutely going to end up with a memory leaking and probably slow program. I'm only sincere and honest with you here. Not trying to break your spirit, rather "guide" you towards a more fail-safe approach to learning C++. If you only trial and error from the get-go, I can imagine you adopt "bad-code" techniques, and could possibly get demoralized when things are not going as you want to, because of aspects of C++ you do not know.
This is spoken from experience of that kind of approach.
So, my suggestion; start from scratch when learning C++ when you come from Java/PHP, as they are extremely different.
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.