C ++ is an incredibly fast and efficient programming language. Its versatility has no limits and its maturity ensures that support and reliability are second to none. The code developed in C ++ is also extremely portable, all major operating systems support it. Many developers begin their coding journey with language, and this is not a coincidence. Being object oriented means that you do a very good job teaching concepts such as classes, inheritance, abstraction, encapsulation and polymorphism. Its concepts and syntax can be found in modern languages such as C #, Java and Rust. It provides an excellent base that serves as a high ramp speed for the most popular, easiest-to-use and modern alternatives.
Now everything is not rosy. C ++ has a very steep learning curve and requires developers to apply best practices to the letter or run the risk of ending up with an insecure and / or poor performance code. The small footprint of the standard library, although most of the time is considered a benefit, also increases the level of difficulty. This means that using C ++ successfully to create useful complex libraries and applications can be a challenge. Very little is also offered in terms of memory management, developers must do it themselves. Novice programmers could end up with debugging nightmares since their lack of experience leads to memory corruption and other difficult situations. This last point has led many companies to explore fast, safe and equally powerful alternatives to C ++. For Microsoft today, that means Rust.
Most of the vulnerabilities repaired and with a CVE [Common Vulnerabilities and Exposures] assigned are caused by developers who inadvertently insert memory corruption errors into their C and C ++ code.
Gavin Thomas, Microsoft Security Response Center 
Rust began as a personal project of a Mozilla employee named Graydon Hoare sometime in 2006. This ambitious project was under development prior to launch for almost a decade, and finally released version 1.0 in May 2015. In what seems to be the In the blink of an eye, it has stolen the hearts of the hordes of developers who came to be voted the most beloved language four years in a row since 2016 in the Survey of stack overflow developers.
Hard work has definitely been worth it. The end result is a very efficient language, characteristically object oriented. The fact that it was designed to be syntactically similar to C ++ makes it very easy to address. But unlike what was mentioned above, it was also designed to protect memory and at the same time employ a form of memory management without the explicit use of garbage collection.
The ugly truth is that software development is largely a trial and error effort. That said, Rust has gone further to help us debug our code. The compiler produces extremely intuitive and easy-to-use error messages along with an excellent direct link to the relevant documentation to help with troubleshooting. This means that if the problem is not obvious, most of the time the answer is one click away. I rarely have to turn on my browser to find solutions outside of what the Rust compiler offers in terms of explanation and documentation.
Rust does not have a garbage collector, but most of the time he still allocates and releases memory for you. It is also designed to protect memory, unlike C ++, which allows you to easily get into trouble with hanging pointers and data runs. In contrast, Rust employs concepts that help prevent and avoid such problems.
– Rust website
How fast and predictable is its performance. Everything in our lives evolves. Our smartphones, our cars, our appliances, our own bodies. Although C ++ is still incredibly powerful, fast and versatile, it can only take us so far. There is nothing wrong with exploring alternatives, especially one as exceptional and as promising as Rust.
What do you think? Have you tried or would you give Rust a chance? Let us know your thoughts in the comments section below.
Additional readings: C ++, oop, rust, Visual Studio, WASM, WebAssembly