Rust是炒作还是真实力
每一位程序员都知道他们所用语言的优缺点,其中一些语言的优势显而易见,但其不足之处常常令人绞尽脑汁,却无能为力。
Rust是炒作还是真实力
Rust,一种产生于2015年的编程语言,并在2016年被StackOverflow列为开发人员最喜欢的语言。世界上很多著名的互联网和科技公司都采用了Rust,利用Rust对各种技术进行优化和重构,如Bytruds,Google的Fuchsia,Linux内核,等等。所以Rust的好处是什么?
一开始罗斯特没有历史包袱,采百家之长。Rust通过语言的核心重新塑造了人们对基本概念的认识。例如,清楚地定义变量的生命周期,不仅抛弃像GC这样的内存和性能杀手,也不需要考虑手工管理内存,以保证内存安全和高性能。
从语言的外观上来说,它使用起来与Python/TypeScript等高级语言非常相似,而且表达能力也是一流的,但是性能绝对不比C/C++差。
因此,Rust集表达力、高性能、存储安全性于一体,可以在许多场景中大显身手。Rust除了在传统的系统开发领域大放异彩,比如操作系统、设备驱动、嵌入式等,而且Rust在服务方面表现优异,高并发场景遍地开花。
但对于这样一种非常好用的新底层语言,却仍然有许多人“抨击”Rust是在炒作。一个有30多年编程经验的开发者在这里高呼,快停下来!
Rust为何被“炒作”?
实际上,对Rust的每一次讨论都以对Rust的过度宣传而结束,也有不少人认为Rust的宣传太过夸张了”,认为说Rust好话的人是在炒作Rust。
有没有人记得Java被发现的时候?也许许多人已经忘记了,也许是因为你太年轻了。关于Java文章的讨论在过去的几年中很多。对于Java的前景,这里不乏赞美之词,当然有些人“鄙视”Java,贬低它,称Java已经死了。毫无疑问,我们都知道最终的结局。Java不负众望,在这一行业中风生水起了20多年。那个时候,网络还不算仇恨,但对Java的攻击就像现在的Rust一样,请不要再去攻击Rust宣传这样毫无意义的东西。咱们将目光放在真实的解决方案中,首先要首先解决实际编程问题。
反复强调Rust之前不能解决的问题,是没有意义的。Java可以帮助解决缓冲溢出问题,比如Java,而Python可以帮助改进开发人员的数据结构。而且,像easeofcomposition和内容安全性这样的问题并不需要讨论,因为只有重新设计一种语言,才能找到任何可行的解决方案。毫无疑问,近几十年来,关于内存安全问题已成为人们广泛了解的问题种类,但是要解决这个问题,就需要在性能和可维护性方面进行折衷(Python,Ruby,Erlang)或者,没有真正解决这个问题(Java,JavaScript,PHP)。
在各种问题面前,每个人都除攻击外,都找不到最好的解决办法。虽然不同的技术只能解决不同的问题,但是Rust的诞生改变了这一状况,人们使用Rust可以解决大多数问题。这样,Rust就能出现在各种程序中,让人感觉它无所不在,并且与我们的程序密切相关。他可以帮助技术员写出更好的程序,正因为这个程序足够好,才有那么多的宣传。
技术员和工程师都有一个特点,那就是他们善于冷静的评估系统,能抛开“炒作”,只关心这项技术是否能帮助他们解决问题,而不绝对不去做。也就是,他们不会抵制Rust,因为他们觉得Rust是炒作的。
不是从Rust基金会那里骗你用Rust。身为一名有30年编程经验的开发人员,我在不使用类型安全的语言中成功地进行了大量重构,还曾经在具有GC开销的语言中实现快速服务,并且对内存支持较差的语言编写了严格的代码,还在微型机上编写程序,也曾经编写过分布式多核集群的代码。因此,在看到Rust发布更新后,我知道这对于开发人员来说,又多了一件“利器”,因为它能让开发人员解决许多令人头痛的问题。
为什么我在你的话题里提到Rust,是因为这与你所谈论的话题有某种联系,甚至可以解决你遇到的问题。即使Rust让你觉得无聊,也不能改变它对你有帮助。您当然可以选择不同意我的观点,那么请您就我所说的观点提出异议,并且像我真诚地向您表达我的观点一样,真诚地回应我。
因特网技术不断地更新换代。
一切编程语言都是“时髦”,一旦热度消退,我想这不是Rust的问题,也不是某种语言的问题。因特网的发展和行业的发展,意味着总有一些技术在逐渐没有人利用到最后消亡,但是新技术总是可以取代的。
您能够记住程序中的所有缺陷,并了解编程过程中的所有编程技巧和注意事项,以避免出现问题。但另有另一种语言的人会让你替换,因为他的程序不必在这些问题上浪费时间。也有其他公司选择不在重构和调试方面花费太多,以便降低安全性测试的花费,因此,你想要的对这些公司来说是没有用的,你仍然会被逐步淘汰。而且我可以像编写Python那样快速地编写Rust,并将Java的优点结合起来。这样我就可以更快地编写安全稳定的程序了。这样的话我会被企业重视,而你只能被淘汰。与个人能力无关,而是企业所需要的人才和技术不断地更迭。