It’s very difficult to choose a programming language, but it’s also important. It’s no less important than where you choose to buy a house or where you choose to take root. Because when you start to learn a programming language, you not only choose the programming language, but also choose the technical fields related to the programming language.
My fate with rust came from my study of Libra, and then I was attracted by it. Although most of the time, choosing a programming language is just like your love and marriage, which starts unconsciously, I still want to use a more logical reason to explain why you choose rust.
Technical point of view
Technically speaking, rust language has a very significant and eye-catching advantage, which is not only reflected in its pursuit of replacing C + +, but also in its excellent performance in industry: excellent performance, high control, memory security.
A Microsoft survey shows that 70% of the vulnerabilities in Microsoft’s system are caused by the use of C / C + + language. However, these vulnerabilities can not be avoided by using C #, because it can not have the performance comparable with C / C + +. Rust is considered by Microsoft as the only candidate to replace C / C + + because of its excellent performance and security. If used, it can solve 70% of the vulnerabilities in Microsoft system.
In addition to memory security, high performance and high degree of control, rust also has strong attraction in other aspects, such as strong type security guarantee. In fact, many people compare rust with C + +, but from this point alone, it is difficult to choose.
Engineering implementation Perspective
When making a language choice for a project, we usually consider the following problems:
(1) Is it easy to hire developers for such languages?
(2) Is it easy to customize programming standards?
(3) What is the average delivery time for developers?
Although rust language was founded in 2006, its first version was released in 2015. At present, there are not many domestic experts, but many large factories are beginning to use this technology. As a language comparable to C + +, rust is easier to use than C + +, especially when C / C + + is familiar with it.
Rust language itself has a development specification, such as structure, trait and so on, which requires initial capitalization and hump naming, and function requires snake naming, so it is very conducive to the unified style of the project team. In addition, the time of rust language is still short, and there will not be such a huge syntax gap between C99 and C11 as C + +.
Rust is powerful, which is suitable for both web development and embedded system level development. It has rich software library, and the compiled software has less probability of bugs, so the development efficiency is far better than C + +.
From the perspective of economic benefits
I don’t want to elaborate this point from the perspective of development cost, because the first two points have been fully reflected. What I want to illustrate is the benefits of choosing rust for personal growth and personal benefits. As a new language, rust is much less proficient than other languages in China, and it is more difficult to use than go. But because of its excellent performance and security, it has gradually become the favorite of the industry. As mentioned above, both Microsoft and Google use rust in their projects, and Facebook, which has been storming the city a while ago, uses rust to build its blockchain system, Libra. All sorts of things show that this is a very valuable language.
As I mentioned earlier, choosing a certain language means choosing the relevant technology stack. Rust language is naturally suitable for the development of blockchain, a highly secure system. It is a good choice for individuals to learn rust and further into blockchain related technologies.
The above list seems to be more logical, but in fact it is not important, because as an IT technology practitioner, there is only one sentence: learning is over.
This work adoptsCC agreementReprint must indicate the author and the link of this article