Microsoft and Rust vs C/C++: a developer’s perspective


Rust versus C

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 [19659002]

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.

There are many other factors that have taken me away from C ++ and led to Rust. But to be honest, it has nothing to do with all the great things we just explored. I arrived in Rust on a trip that started with WebAssembly. What started with me looking for a more efficient alternative to JavaScript for the web became how powerful Rust is. From your perfect interoperability …

Automatically generate link code between Rust, WebAssembly and JavaScript API. Take advantage of libraries such as web-sys that provide pre-packaged links for the entire web platform.

– 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

For More Updates Check out Blog, Windows Softwares Drivers, Antivirus, Ms Office, Graphic Design Don’t Forget to Look Our Facebook Page Get Into Pc like us & follow on Twitter- @getinpc


Please Note: This content is provided and hosted by a 3rd party server. Sometimes these servers may include advertisements. igetintopc.com does not host or upload this material and is not responsible for the content.

List of 20+ Best Smart Watches Under $30

Open

Close