Rust的问题是自身太过于复杂,这个复杂有别于C和C++的复杂。先说说C的情况。有人说C是仅次于C++的复杂性的语言,也有人说C是比C++还要复杂的语言,这都不重要。虽然个人认为C语言是最适合专业人士使用的编程语言,但坦白的说C语言确实先天不足。
先天不足的部分有2点:1、先天缺乏泛型的支持;2、对异常处理的支持不是很好。由于缺乏泛型,所以有时候编程不是很方便,但并不是说无法实现泛型,只是丑陋而已。对异常处理的支持不友好,体现在异常处理代码与正常的业务逻辑混在一起。
说实话,我觉得C语言是所有语言中最简单、最容易学的。如果有人觉得C语言的语法复杂,只能说他对计算机结构的认识还不到位。非专业人士并不会去了解计算机结构,或者认识不够一定程度,但这对于专业人士不存在大问题。
Rust为了实现编译时内存安全检测,引入一些噪音是完全可以接受的。Python倒是看着干净,除了语法词法检查,啥也没有,变量函数使用时是否定义(比如敲错名字的时候)都不知道,非要运行时报错才知道问题。