专业的Python选手转行成为新手Rust——一个数据科学家的转变故事
身边的每个人都知道我是大🐍 Python的粉丝。大约15年前,我开始使用Python,当时我对Mathworks Matlab感到厌倦。尽管Matlab的想法很好,但在掌握了Python之后,我再也没有回头。我甚至成为了我所在大学的Python传教士,”传播教义”。
编码的能力并不能让你成为一名软件开发者。
在我目前的雇主TenneT(荷兰和德国的大型输电网)中,我们与一个由大约10人组成的团队一起构建一个文件解析和验证解决方案。构建这样的解决方案,特别是在团队中,比我想象的要困难得多。这也让我对软件工程的正确范例更感兴趣。我一直以为自己的代码还不错,但在看了我的软件工程师朋友的工作之后,我才知道还有很多东西要学习!
当我了解到诸如强类型、SOLID原则和通用编程架构等主题时,我也浏览了其他编程语言及其解决问题的方式。尤其是Rust引起了我的注意,因为我经常看到一些基于Rust的Python软件包(例如Polars)。
为了对Rust有一个适当的介绍,我学习了官方Rustlings课程,这是一个具有96个小编码问题的本地Git存储库。虽然它还算容易,但Rust与Python非常不同。Rust编译器是一个非常严格的小伙子,对于可能性问题不抱希望。下面是Rust和Python之间的三个主要区别。
免责声明:虽然我对Python很精通,但我对其他语言还有点生疏(故意的双关语)。我仍在学习Rust,对其中部分的理解可能有所错误。
1. 拥有权、借用和生命周期
拥有权和借用可能是Rust编程语言最基本的方面。它旨在确保内存安全,而无需所谓的垃圾回收器。这是一个独特的概念…