rust语言前景(rust语言优点)

http://www.itjxue.com  2023-02-03 06:14  来源:未知  点击次数: 

如何看待 Rust 的应用前景

1.

根据Rust的特点和定位适用于对控制性比较强,对性能很敏感的领域,比如底层软件(OS/driver),基础系统软件(Compiler/VM/DB等),性能要求比较高的应用软件(浏览器/图形图像处理/游戏/高性能服务器软件等, 或者可能包括近来很火的ML应用方向)。

2.

底层软件(比如OS/driver)部分是和C 应用领域有很大重合度的,在这个领域我认为对C冲击不大。

在这里C已经足够好了,而且这些领域技术性很高,但业务逻辑其实并不算太复杂,Rust的优势作用有限。而且 Rust相比于C语言,带来了一定的“黑盒” 和 这些领域一些不需要的语言复杂特性。

C 作为“可移植的汇编” 恰到好处的非常适合这个领域,其他语言基本无法构成挑战。

3.

前面1 中提到的领域 除了 底层软件(OS/driver之类)剩下的领域,C++ 目前最具有优势。

在这些领域 C++相对于C 提供了更多高级特性方便开发,相对于JVM系的 性能更高内存更少。(虽然这些领域有些知名软件是C和JVM系的,比如postgresql/redis/nginx/Hadoop/spark等,但在这些领域目前只有C++一个是全能型)

我认为rust的主要战场就在这里,需要对决的对手就是C++。

C++ 既有的力量(系统/代码/人员/习惯)太强大了,在这些领域完全打败C++是非常困难的。而且C++ 也在不断发展,近年来发展的步伐也快了起来,C++11/14/17等等。

但C++的历史包袱是很重的,越发展其实复杂性也在不断提高,何况有些问题(像安全/异常/复杂继承等等)是基因里的,通过增加feature打补丁是弥补不了的。

Rust最容易吸引的人群可能是C++程序员:因为,一方面解决了不少C++的痛点,另一方面Rust的很多特性其实有点复杂也有点门槛的。这些特性背后的动因有C++背景的程序员是非常容易理解,也是不少C++程序员梦寐以求的。

相对而言,其他语言背景出身的程序员,对Rust的共鸣性远远没有C++程序员强烈。

猜测 Rust会:

a. 蚕食掉一定的C++份额。一些可能本会选择C++开发的新项目,可能会选择Rust。

b. 蚕食掉一定的Java份额。有些项目选择JVM系是由于C++开发太复杂,同时该项目对性能又有一定的要求。那么Rust出现以后也会蚕食掉一定的此类项目。

c. 蚕食掉一定的golang份额。不满意gc(即使1.5改善了,gc的先天问题是无法彻底解决的),不满意泛型,不满意性能的一部分项目。不过也要依赖于Rust未来并发的解决方案是否足够理想了。1.0这种是没戏的。

d. 移动端Rust从自己实力上说是够的。不过这个真的要看出品移动端设备的 “爹”的意思了。

Rust自身有一些优势非常明显,在这些领域是很有竞争力的。

Rust社区一定要重视IDE开发环境,花费精力出eclipse/intellji/vs 的高质量的IDE插件,对于推广和流行大有帮助。

只要Rust社区不要犯D语言曾经反复折腾的毛病,能像golang社区那样基础做的不错并且工程质量优秀,那么未来Rust出几个杀手级的应用,前途还是很可期的。

未来比较有前景的8种编程语言,看看有没有你已经掌握的?

目前,软件开发人员正在使用大量不同的编程语言,大多数工作需要熟悉很多技能,如Java、Java、PHP和C#。然而,随着软件需求的发展,新的和尚未被普遍接受的编程语言越来越突出,为程序员提供了针对某些工作的正确工具。

预测哪些语言最终会上升到编程语言排行榜的顶部是困难的,很多语言的受欢迎指数都呈上升趋势,以下是八种目前还没有大火的编程语言竞争力分析,看起来未来几年将在在企业中发挥巨大作用。(排名按照开源社区受欢迎程度,swift最受欢迎)

在2014年的苹果WWDC大会上首次亮相,旨在替代OSX和iOS开发的Objective-C语言。苹果于2015年12月,根据Apache许可证开源了该语言,这意味着所有源代码都可以编辑,程序可以在不归属于苹果的情况下运行。

RedMonk分析师Stephen O'Grady表示,Swift与Ruby和Python这些更现代的语言相似,自发布以来一直享受着高速增长。苹果公司表示: Swift采用安全的编程模式,并添加了现代功能,使编程更容易、更灵活、更有趣。

Github上Star:39.8K

这种开源语言被视为比较成熟的语言(如Java和C)更快速、更易于使用。它已被许多企业使用:BBC、SoundCloud,Facebook以及英国政府获奖的GOV.UK网站。

Type在年初开始普及,上半年保持着强劲的增长势头。这反映在其技术出版商RedMonk的排名中,在第一季度Github的排名中位列17位,其中Erlang和Rust并列。

被描述为“Java的超集”,Type最大的优点就是程序员可以利用Angular,这是一个用于创建以Type编写Web应用程序的框架。

Github上Star:24.6K

由Mozilla创建,Rust 1.0于2014年发布,已经开发了多年。

与C和C ++在某些方面类似,Mozilla将其描述为一种专注于性能、并行化和内存安全的新型编程语言。通过从零开始构建语言并结合现代编程语言设计的元素,Rust的创建者避免了传统语言必须处理大量”baggage“(向后兼容性要求)。经过一段时间的发展,该语言正在引起程序员的兴趣。

Github上Star:22.9K

快速编译并与Java一起运行,Kotlin是一种静态类型的编程语言,可在Java虚拟机上运行,可编译为Java源代码。

由俄罗斯软件开发公司JetBrains创建,Kotlin正在Pinterest,Evernote,Uber和Coursera上使用。

Github上Star:16.6k

Clojure于2009年推出,是Lisp编程语言的一种方言。它是一种强调函数式编程的通用语言。它将代码视为数据,并具有宏系统,如其他“Lisps”。

它被成功应用到沃尔玛、Puppet实验室和各大软件公司。

Github上Star:6.5k

Haskell将自己称为“高级纯函数式编程语言”,1990年发布了第一个版本。它具有类型推理系统,主要在学术界内使用,但有一些行业应用案例,例如ATT,BAE Systems,Facebook甚至Google的项目。

2016年,开始编制2020版本。

Github上Star:681

R提供用于统计计算的开源软件环境。

首先出现在1993年,R在数据驱动的职业之中,例如数据挖掘、统计学家甚至学者,受到了越来越多的欢迎。它提供了一个简单有效的方式来分析数据,尽管它不能与像Hadoop这样的大型架构相竞争。

普通程序员目前对R语言的接受程度一般,随着大数据以及人工智能的发展,R语言未来的发展前景还是很不错的。

Github上Star:240

c++前景如何

C++发展前景

◆ 从C++目前的活跃程度,以及应用现状来说是完全能够肯定C++仍然是软件工业的基础,不会退出历史舞台的。

◆ 另外从Boost,Loki这些库中我们也能够看到C++的发展非常活跃,对于新技术新思维非常激进,C++仍然广泛受到关注。

◆ 从ACE在高性能通信领域的应用,以及MTL这样的库在数值计算领域的出色表现,我们可以看到C++在高性能应用场合下的不可替代的作用,而嵌入式系统这样的内存受限开发平台,比如Symbian OS上,C++已经发挥着并且将发挥更大的作用。

◆ 可以预见的是以后的软件无论上层的应用怎么变,它的底层核心都会是由C/C++这样的系统级软件编写的,比如Java虚拟机,.NET Framwork。因为只有这样的系统级软件才能完全彻底的发挥机器的功能。

C++发展趋势

C++是一个多泛型的编程语言,它既可以面向过程,也是一门面向对象的语言。C++是一门使用非常广泛的计算机编程语言,因此它受到了越来越多程序员的亲睐。

C++相关专家介绍:c++的就业领域很广泛,相对于java和其他语言来说有很多优点,很多大公司的服务器程序也都是基于C++开发的。目前c++软件开发主要集中在以下几个领域。

1.目前70%以上的网络游戏都是基于C++开发的,掌握C++已经成为游戏开发的基本要求。

2.目前计算机使用的Windows/Linux等操作系统内核均采用C语言写,在涉及大规模、高性能计算时,C/C++的运算速度和稳定性优势非常明显。

3.C++还用于目前非常流行的移动互联网应用程序的开发,比如苹果系列产品都是使用Object‐C语言开发,它是一种根据C语言衍生出来的语言。

C和C++这门语言40年来经久不衰,是所有语言系统的基础。广泛应用于基础软件、桌面系统、网络通讯、音频视频、游戏娱乐等各个领域。所有的操作系,windows、linux、android等操作系统都是用C写出来的,因此它能长盛不衰。

(责任编辑:IT教学网)

更多

推荐Fireworks教程文章