17
AUG
@xzdbd
16
APR
@xzdbd
为了「略懂」Rust,开始学习 Rust 的官方教程。
Java 与 Rust 在改善C/C++上走了完全不同的两条路,他们主要改善的问题就是C/C++ Safety的问题。所谓C/C++编程安全上的问题,主要是:内存的管理、数据在共享中出现的“野指针”、“野引用”的问题。
对于这些问题,Java用引用垃圾回收再加上强大的VM字节码技术可以进行各种像反射、字节码修改的黑魔法。
而Rust不玩垃圾回收,也不玩VM,所以,作为静态语言的它,只能在编译器上下工夫。如果要让编译器能够在编译时检查出一些安全问题,那么就需要程序员在编程上与Rust语言有一些约定了,其中最大的一个约定规则就是变量的所有权问题,并且还要在代码上“去糖”,比如让程序员说明一些共享引用的生命周期。
Rust的这些所有权的约定造成了很大的编程上的麻烦,写Rust的程序时,基本上来说,你的程序再也不要想可能轻轻松松能编译通过了。而且,在面对一些场景的代码编写时,如:函数式的闭包,多线程的不变数据的共享,多态……开始变得有些复杂,并会让你有种找不到北的感觉。
Rust的Trait很像Java的接口,通过Trait可以实现C++的拷贝构造、重载操作符、多态等操作……
学习Rust的学习曲线并不平,用Rust写程序,基本上来说,一旦编译通过,代码运行起来是安全的,bug也是很少的。
24
FEB
@xzdbd
安装部署 Minikube 和 Istio
环境:AWS EC2, Amazon Linux 2, 16G RAM, 2 CPUs
20
JAN
@xzdbd
日子竟然晃晃悠悠已经来到了 2020 年。好久没有更新这个版块了。断断续续的终于看完了《Deep Learning with Python》。
稍微总结下吧。
24
SEP
@xzdbd
Deep Learning with Python 第五章:Deep learning for computer vision
主要讲以下几部分内容
12
SEP
@xzdbd
30
AUG
@xzdbd