C and C++ is the first Programming Language that I learned in my college days and that most undergrad Computer Science students learn at the beginning of their programs.
If you are starting into Programming and want to build a strong foundation in Programming and Computer Science, then you should definitely go first with C/C++ language.
C and C++ is one of the most powerful and fast Programming Languages.
Therefore, C++ is widely used for game development as a small delay in game can ruin the whole gaming experience.
Reasons to Learn C/C++
C/C++ helps in making your basics and computer fundamentals crystal clear. C/C++ are the Programming Language which will help you in becoming a better programmer for sure. You will learn a lot about memory management, pointers and object- oriented programming. So, after you have learned C/C++, you will be able to learn any Programming Language. C/C++ increases your logic building ability more than any other language. It is comparatively more difficult to learn C/C++ than other languages. But once you learned it, other Programming Languages will becomes just a piece of cake for you. C/C++ have a great community support. During your learning process, you will find lots of tutorials for C/C++ very easily. C/C++ is among the most efficient and fast Programming Language. With C/C++, memory management becomes much easy. That is why most of the popular software and games are build with C/C++. Majority of the operating systems are build using C/C++. So, if you know C/C++, you will came to know much about Operating System and how it works.
REASONS WHY YOU SHOULD KEEP LEARNING C/C++
Many programmers are frustrated with and leaning away toward the C/C++ programming languages because of the following reasons:
(1) Very steep learning curve.. Many people joined the programming world by learning C or C++, but it’s rare for them to keep learning and mastering these two languages well because they get frustrated in handling the low-level programming elements such as pointers, the memory storage model, address alignment, templates expansion, multi-thread data races, and so on. If these elements are not handled properly, the app will have a high probability of crashing, which will frustrate the new programmer.
Mobile application development: iOS (Objective-C, Swift), Android (Java).
Distributed systems, Big Data, Cloud Computing: Java, Go, Groovy, Scala.
Data science, AI (Artificial Intelligence), ML (Machine Learning): Python.
It looks like C/C++ are rarely used in these modern application development areas. So why should we still learn C/C++? Here are 5 reasons why you should:
2. Bring performance. When programming in the advanced programming languages, we mainly focus on the implementation of functionalities. We usually use guidelines of best practice to avoid silly mistakes but it is not nearly enough when you need to gain better performance. Better performance requires careful profiling and analysis to find out which code are the performance hot spot and how to rewrite them in a more efficient way. If you know C/C++ enough, then it will aide you in gaining a better performance because you know how these advanced programming languages run at its lowest level. You will be able to discover the issue faster which may be performance decay, the expensive CPU instructions, the cache miss, the tradeoff of context switching, or something else.
4. C/C++ powers the world C/C++ is everywhere. In particular, they power more technologies than we give it credit for.
Most operating system kernels are written in C, including but not limited to Windows, Linux, Mac, iOS, Android and so on. Modern browsers are also written in C/C++. like Chrome, Firefox etc. Modern game engines are written in C/C++, like Unity3D, Unreal Engine, cocos2d-x etc. As mentioned above, programming languages compilers and interpreters are implemented in C/C++ too. According to the TIOBE Index for March 2018, C/C++ are still the most popular languages. So don’t hesitate to keep learning these two languages that are still powering the world.