Answer the question
In order to leave comments, you need to log in
C++ or C# newbie?
Hello. I'm not exactly a beginner who has never encountered programming at all.
A little bit about yourself. I'm 16, a year of web (half a year front, half a year back), I tried myself - not mine.
Then 3 months of C ++, for 3 months I studied only procedural programming, from OOP I only know about access modifiers, getters and setters =) In general, almost nothing.
I have a course (>300 lessons of 30 minutes) in C++. And then I found the same course on C # ..
And the question arose: mb stop learning the pros and start learning C #?
Please tell me what is more promising in the development of desktop applications?
Ps I have a weird obsession with anything and everything.. I've heard that C++ is a "bad swiss knife" that is pretty hard to master. Difficulties do not frighten me (mb because I'm still stupid and green in this) and the fact that you can write anything on the pluses inclines me towards them.
On the other hand, C#, which is lighter than pros and supported by the Unity engine.
In general, tell me what is better for DESKTOPS / ANDROID and what is MORE PROMISING in the next 10 years.
Thank you in advance.
Answer the question
In order to leave comments, you need to log in
A little bit about yourself
I have a course (>300 lessons of 30 minutes) in C++. And then I found the same course on C # ..
And the question arose: mb stop learning the pros and start learning C #?
C++ vs C#
Of the two, it's better to start with C#, there are fewer ways to shoot yourself in the foot.
The programming language is easy and fast to learn.
Algorithms, paradigms, principles, patterns are difficult to learn.
But! The same algorithms, paradigms, principles, patterns are applicable to another general purpose programming language.
This often happens in our field.
Sometimes, yes - the flow of information makes the brain get high.
They don’t always bring it to the end, they don’t always put it into practice, but study study study study - such behavior occurs.
Anything can be written in any general-purpose programming language.
The average good programmer knows more than one language .
Sometimes it is used several times .
Well, learning another language is not a problem.
You are too bother with the choice, from the fact that choose "wrong" nothing terrible will happen.
And even more so for 10 years.
Technology is turning over several times.
I would suggest C#,
more slender, more logical than C++.
With convenient development tools.
Good for developing desktop applications for Windows.
Learning in addition to it C ++ will not be a big problem.
For Android - Kotlin, Java.
For Windows desktop - C#.
Games on Unity on any platform, including Android - C#
Algorithms, patterns, paradigms, principles of programming.
Learning another language is not difficult.
studied only functional programming for 3 months
In C# on Xamarin Forms, you can write mobile applications for Android / iOS and under the same code base.
For desktop applications - WPF, for web services - .NET Core.
the fact that you can write anything on the pluses inclines me to them.
I will also do my part.
About me: I have been programming for 8 years, mainly in c++/qt. It’s no more difficult than c#, feature-rich, cross-platform, many of those who have programmed it for many years haven’t tried pure pluses, it allows you to strongly abstract from everything low-level.
As correctly noted in other answers, knowledge of algorithms, templates and other things, understanding of the overhead costs for operations, networking, knowledge of sql, operating systems, including poppy and Linux ... in general, everything that is abstracted from the language itself decides.
As for what to steal - my opinion is that C ++ requires more practice, just pure, or in the std / boost variant. If in the evening you prefer instead of watching TV / cinema / taking a walk - staring at the monitor and coding, then learn C ++.
Z.Y. A special joy of a plus programmer is multi-threaded applications. If you are lucky and encounter a particularly elusive bug, then in parallel study the hardware and which families of processes work, and how the msvc compile differs from mingv in behavior. In general, a bunch of everything related that c# programmers are deprived of and don’t worry about.
which is better for desktop
More versatile and older than C++, better than it in the first place.
For C# applications to work, you must have the .NET Framework installed, the so-called. extra dependency. And it comes in different versions, which is important for applications to work, and is not supported by all operating systems. I only know about support on Windows. The scope, respectively, is also limited. As long as .NET is not a must-have, C# can be dispensed with.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question