Rust 入门实战系列(1)- Hello World

Rust 五分钟了解,三十分种入门 Rust 快速入门基本变量 - 常量 基本 Rust官方学习文档(中文): https://kaisery.github.io/trpl-zh-cn/title-page.html 变量 - 常量 基础 let a:i32=1; //变量默认不可变 //a=2 报错 let mut b=1; //加mut则可变 const c:i32=1; //常量必须指明类型,变量通常可以推断出类型 隐藏特性 可以说就是重新定义了一个变量,只是名字一样而已,当然它并没有破坏作用域 按官方的话说就是: R 阅读详情

专栏开篇

Rust 这门语言有很多优势,但最令我好奇的地方在于,这还是第一次见到一个语言,从前端展示,到后端业务,到系统编程都能做。这一点太了不起了。

我们能想象用 JS 来写 Linux Kernel,或者用 C++ 写前端么?简直天方夜谭,但是这两个领域,Rust 可以。

第二个吸引我的点在于内存管理。Java,Python,Go 这类语言提供了 GC,工程师只管分配内存,不用管删除,提高了开发效率。而 Rust 则没有 GC,且不用手工管理内存,不会有野指针,并发安全,它通过【共享不可变,可变不共享】的理念,让运行时风险降低,现代高级语言能做到这一点很厉害。

作为这个系列第一篇,希望首先收集所有官方,权威的专栏,课程,资料。并通过 demo 来简单上手。

Rust 是什么

Rust is a multi-paradigm, general-purpose programming language. Rust emphasizes performance, type safety, and concurrency. Rust enforces memory safety—that is, that all references point to valid memory—without requiring the use of a garbage collector or reference counting present in other memory-safe languages.

简单说就是五个点:通用语言,高性能,类型安全,并发,无GC。

毕竟笔者主语言还是 Go,直观来看跟 Rust 相比有两个劣势:

  • 通常来说,Golang 的性能一般来说是足够的,无论是gc开销还是goroutine调度。但是如果你想追求极致性能,还是建议考虑 Rust,毕竟没有GC而且可以自定义并发运行时与 allocator。

  • 从代码风格上来看,golangci-lint 只会告诉你你不应该怎么样,而 cargo clippy 不仅可以告诉你不应该如何,还会告诉你你完整的上下文(一个lint可以同时标记多处代码)。

当然,Rust 陡峭的学习曲线跟 Go 还是有差距的,毕竟 Golang 整体非常简洁,上手成本很低,认真学的话一周以内就可以完全上手,但 Rust 还是需要理解很多概念,尤其是【所有权】。

但既然这么牛逼,这个成本还是非常值得的。

学习资料(持续更新)

专栏开篇还是希望把市面上已知的 reference,教程汇总一下,以后有需要了随时过来找。如果有遗漏的欢迎大家指出。

Rust后端开发的项目实战案例 利用 Actix-web 框架构建一个 RESTful API 服务,用于管理图书信息,包括图书的添加、查询、更新和删除功能。- API 设计:遵循 RESTful 架构原则,设计清晰的 API 接口,包括正确的 HTTP 方法、状态码和响应格式。- 文章管理:实现文章的创建、编辑、删除和查询功能。- 使用 Rust 和 Diesel 库构建一个博客平台的后端服务,包括文章管理、用户管理、评论管理等功能。- 数据库设计:设计合理的数据库结构,包括文章表、用户表、评论表等,以及它们之间的关系。 阅读详情

相关推荐

如何在Windows、Linux和macOS上安装Rust并完成Hello World

如何在Windows、Linux和macOS上安装Rust。如何编写、编译和运行一个简单的“Hello, World!”程序。如何使用Cargo管理Rust项目。接下来,你可以继续探索Rust的更多特性,比如变量、函数、所有权等。Rust的学习曲线可能有点陡峭,但它的强大功能和安全性绝对值得你投入时间!如果你有任何问题或需要进一步的帮助,欢迎在评论区留言。🚀参考资源Rust官方安装指南Rust官方文档。

美味小鱼的杂货铺 1872

从用Rust 写 Hello world 入门WebAssembly | WebAssembly 教程

在上一篇文章里,我们介绍了学习 WebAssembly 的常见问题。 现在先从 Rust 开始动手实践吧。 Rust 是当今编写 WebAssembly 应用程序的最佳语言。 本文所用到的源代码Repo请点击:https://github.com/second-state/wasm-learning/tree/master/rust 虽然 WebAssembly 支持多种编程语言,但迄今为止,...

weixin_44597631的博客 848

【Rust指南】快速入门 开发环境 hello world_rust开发是啥

本篇博客是Rust语言系列的开篇之作,以后有关Rust语言的文章也都会收录在我的《进军Rust》专栏里,我会精心打造这个专栏,帮助大家快速入门Rust语言,享受Rust语言带来的编程乐趣。虽然Rust相比其他语言入门慢,但这恰巧说明了Rust语言的特色——安全高效。对Rust语言感兴趣的朋友可以订阅此专栏,我将会持续输出Rust语言编程技能。

2401_89213119的博客 542

rust教程 第一章 —— 初识rust

本文主要的目的就是认识一下rust这门语言的基本概念

余识- 5万+

【Rust开发】Rust快速入门,开发出Rust的第一个Hello World

Rust于2015年发布第一个稳定版本 连续四年stackoverflow的最受欢迎的语言 特点: 高性能,媲美C/C++,可以做嵌入式开发 没有GC,同时也不需要手工管理内存(所有权机制) 没有野指针,当多个指针指向同一个对象,当通过其中一个指针见将对象删除时,剩余指向该对象的指针就成了野指针。就访问不到对象了,再访问就会报空指针错误 并发安全 集所有语言之大成者

景天科技苑 8万+

【Rust指南】快速入门|开发环境|hello world

本篇博客是Rust语言系列的开篇之作,以后有关Rust语言的文章也都会收录在我的《进军Rust》专栏里,我会精心打造这个专栏,帮助大家快速入门Rust语言,享受Rust语言带来的编程乐趣。虽然Rust相比其他语言入门慢,但这恰巧说明了Rust语言的特色——安全高效。对Rust语言感兴趣的朋友可以订阅此专栏,我将会持续输出Rust语言编程技能。..................

叶落秋白的博客 3475

k8s RoCE 部署: k8s-rdma-shared-dev-plugin + macvlan cni

写给自己的入门篇 文章目录前言一、创建 k8s 集群二、启用 primary network三、启用 secondary networkk8s-rdma-shared-dev-pluginMultus CNISecondary CNIMulti-Network CRD四、启用 pod五、在 pod 中启动 RoCE 流量总结 前言 写给自己的扫盲篇。后续会在原理方面持续更新 一、创建 k8s 集群 k8s 集群的创建有多种方法,可以按照官方文档的说明来.

sunshuying1010的博客 9789

阿里开源最强数字人工具 EchoMimicV2,本地部署(一)

EchoMimicV2是阿里推出的半身人体AI数字人项目,基于参考图片、音频剪辑和手部姿势序列生成高质量动画视频,确保音频内容与半身动作的一致性。现在本地部署,安装体验一下。

缘分天空的专栏 4619

VTK四视图联动避坑指南:解决vtkImagePlaneWidget窗宽窗位同步与切片序号更新的那些坑

本文详细解析了VTK四视图联动开发中的关键技术点与常见问题,包括切片位置同步、窗宽窗位同步的实现原理及回调机制设计。针对开发中遇到的回调事件不触发、渲染性能低下等问题,提供了实用的解决方案和优化技巧,帮助开发者高效构建医学影像和科学可视化应用。

weixin_42638178的博客 392

433M无线遥控器EV1527协议解码实战:从逻辑分析到代码优化

本文详细解析了433M无线遥控器EV1527协议的实战解码过程。从使用逻辑分析仪抓取波形、理解同步头与数据位编码原理开始,逐步深入代码实现。文章重点对比了原始定时器轮询法的痛点,并提出了基于“边沿捕获+时间戳”的优化方案,构建了高效、可移植且具备抗干扰能力的解码引擎,最后分享了跨平台移植的核心技巧。

weixin_29168813的博客 928

C#菜鸟教程学习笔记

C#菜鸟教程学习笔记 C#简介 C# 是一种编程语言,它是由微软开发的。 C# 编程是基于 C 和 C++ 编程语言的,它与 Java 也非常相似。 C# 是 .Net 框架的一部分,且用于编写 .Net 应用程序。 .Net 框架(.Net Framework)能编写出下面类型的应用程序: ①Windows 应用程序 ②Web 应用程序 ③Web 服务 常用的C# 编程的开发工具:Visual Studio(VS:可视化工作室) C#程序结构 一个 C# 程序(C# 文件的后缀为 .cs)主要包括以下部分

mlc_WTMOTW的博客 4979

别再自己写消息提示了!5分钟用WPF+Material Design打造专业级Snackbar(支持.NET 6)

本文为WPF开发者提供了一份快速集成专业级Snackbar消息提示的实战指南。通过引入MaterialDesignThemes开源库,在.NET 6 WPF项目中,仅需5分钟即可告别传统的MessageBox,实现遵循Material Design规范、动画流畅、支持队列管理的非侵入式Snackbar控件,显著提升应用的用户体验与现代化交互水平。

year5的博客 173

超详细流式细胞术全流程解析:从样本制备到结果分析全攻略

流式细胞术(Flow Cytometry)是现代生物学和医学研究中不可或缺的高通量分析技术,可实现对细胞表型、功能状态、细胞周期等多维度参数的快速检测。本文将从实验全流程出发,详解样本制备、上机操作、参数设置及结果处理的核心要点,帮助科研人员精准掌握流式实验关键技术。

good_rrrrr的博客 3869

Android 13.0 app进程保活白名单功能实现

在13.0的系统rom产品开发中,在某些重要的app即使进入后台,产品需求要求也不想被系统杀掉进程,需要app长时间保活,就是app进程保活白名单功能的实现, 所以需要在系统杀进程的时候不杀掉白名单的进程,接下来就看怎么样来实现这些功能

安卓兼职framework和app工程师的博客 3143

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

上一篇: Shiro反序列化漏洞利用详解(Shiro-550+Shiro-721)
下一篇: 手把手教你SpringBoot集成SFTP客户端实现文件上传下载
java_lujj
博客等级 码龄4年 18粉丝 152原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值