【Rust日报】query.rs - 搜索Rust的一切

news2025/5/25 5:27:08

rucola - 在终端中管理你的markdown文档

很酷的一个终端软件。

18f47e79ed3cd5c0879908038b885486.png ec7ee042856776791f7bdaa71bcdcaa7.png

query.rs - 搜索Rust的一切

https://query.rs/

文档,crate,错误代码等等。 就是Rust生态的google.

使用Rust 10年后,我想吐槽几句

这篇文章分享了作者在使用Rust编程语言中的经验,特别是一些主要的痛点和问题。以下是总结:

背景:

  • 作者使用Rust约10年,参与过多种项目,包括桌面GUI应用、服务器后端、CLI程序、通过WASM实现的沙箱脚本接口以及多个游戏相关项目。

  • 作者还熟悉多种其他编程语言,如Java、Python、Typescript、Elixir和C,但更喜欢Rust。

主要问题:

  1. 错误处理(Result<T, E>):

  • Rust的错误处理机制虽然强制开发者处理错误,但在实际使用中,尤其是库开发中,创建和转换错误类型非常麻烦。

  • 在应用代码中,通常只需要传播错误并向用户显示结果,但Rust缺乏Java那样的完善的错误日志和调用栈信息。

  • 作者建议Rust标准化一个类似于Box的类型,自动附加上下文信息,以便在函数间传播错误。

模块系统:

  • Rust的模块系统过于灵活,容易导致意外暴露类型或模块。

  • 管理跨crate的代码组织困难,特别是在大型项目(如Bevy)的单一仓库中。

  • 作者认为Rust应更加显式,类似于Java的模块路径与文件系统文件夹对应的方式。

编译时间和IDE工具:

  • 编译时间和IDE中的错误检查速度太慢,特别是对于大型项目(如Bevy)。

  • Rust的编译单元设计(1 crate = 1编译单元)导致每次修改都需要重新编译整个crate及其依赖项。

  • Rust分析器在大型项目中表现不佳,经常重新索引整个项目。

总结:

  • 作者认为这些问题对Rust的使用造成了重大影响,并希望能有解决这些问题的方案。

  • 尽管有这些问题,作者依然非常喜欢Rust,并且计划继续使用它。

https://www.reddit.com/r/rust/comments/1e978l7/ive_used_and_loved_rust_for_10_years_here_are_the/

自己动手用Rust实现WebSocket

这篇讲了WebSocket的底层机制,以及如何使用Rust一步一步实现WebSocket.

https://www.thespatula.io/rust/rust_websocket/

--

From 日报小组 Mike

社区学习交流平台订阅:

  • Rustcc论坛: 支持rss

  • 微信公众号:Rust语言中文社区

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1968095.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

“postman请求JSON格式,Body内数据无法被idea后端接收,值为null“问题的解决方式

问题描述&#xff1a; 传递数据一切正常&#xff0c;但是&#xff1a; 原因剖析&#xff1a; 这是因为我们实体类里面属性的命名格式不符合驼峰命名&#xff0c;比如我这种“大写字母开头如CAD”/“一个小写字母一个大写字母如aDddddd”都不行。 解决方法: 方法1&#xff1a…

LangChain大模型应用开发指南-大模型Memory不止于对话

上节课&#xff0c;我我为您介绍了LangChain中最基本的链式结构&#xff0c;以及基于这个链式结构演化出来的ReAct对话链模型。 今天我将由简入繁&#xff0c;为大家拆解LangChain内置的多种记忆机制。本教程将详细介绍这些记忆组件的工作原理、特性以及使用方法。 【一一AGI大…

二叉搜索树的第 k 大的节点

题目描述 给定一棵二叉搜索树&#xff0c;请找出其中第 k 大的节点。 解题基本知识 二叉搜索树&#xff08;Binary Search Tree&#xff09;又名二叉查找树、二叉排序树。它是一棵空树&#xff0c;或者是具有下列性质的二叉树&#xff1a; 若它的左子树不空&#xff0c;则左子…

C语言第九天笔记

数组的概念 什 么是数组 数组是 相同类型&#xff0c; 有序数据的集合。 数 组的特征 数组中的数据被称为数组的 元素&#xff0c;是同构的 数组中的元素存放在内存空间里 (char player_name[6]&#xff1a;申请在内存中开辟6块连续的基于char类 型的变量空间) 衍生概念&…

数据安全、信息安全、网络安全区别与联系

关键字&#xff1a; 信息安全 数据安全 网络安全 [导读] 让人更好理解 “数据安全”、“信息安全”、“网络安全” 三者间的区别与联系了&#xff0c;我们汇总了官方机构给这三者的定义&#xff0c;并且网友也给出了自己的看法&#xff0c;一起来看看。 在 “互联网 ” 被广…

tomcat10环境的搭建及发布一个动态服务

Day 15 # 构建项目 [rootstatic-server eleme_web]# npm run build # 将静态的项目移动到nginx [rootstatic-server eleme_web]# ls [rootstatic-server eleme_web]# ls dist/ css favicon.ico index.html js [rootstatic-server eleme_web]# vim dist/index.html [r…

数据虚拟化和传统数据集成方式(如 ETL)有何区别?

要理解数据虚拟化&#xff0c;我们先说一下什么是虚拟化&#xff08;Virtualization&#xff09;&#xff1f; 所谓虚拟化&#xff08;Virtualization&#xff09;&#xff0c;通常指的是对 IT 资源的抽象&#xff0c;它屏蔽了这些资源的物理性质和边界。IT 资源可以是服务器、…

DjangoRF-11-创建testcases子应用--任务模块

这里先写任务应用&#xff0c;再写套件&#xff0c;然后写接口&#xff0c;最后再写请求&#xff0c; 这个是新的应用&#xff0c;要创建子应用&#xff0c;然后添加到settings的注册里面 1、和往常一样先写模型&#xff0c;序列化&#xff0c;权限&#xff0c;视图&#xf…

【正版软件分享】FastCopy Pro:Windows 文件复制的加速器,让数据传输更高效

在数字化时代&#xff0c;数据的快速、安全传输是每个用户和企业的核心需求。今天&#xff0c;我们将深入探讨一款名为 FastCopy Pro 的 Windows 文件复制、备份和删除软件&#xff0c;它以其卓越的性能和易用性在众多工具中脱颖而出。 FastCopy Pro 简介 FastCopy Pro 是一款…

jetbrain插件市场无法下载插件/idea插件install无效

最近把电脑重装了一次系统&#xff0c;发现idea插件市场可以搜到插件&#xff0c;但是不显示overview之类的信息&#xff0c;点install也没反应。 于是打算直接到插件市场的官网plugins.jetbrains.com下载插件安装。 结果发现同样可以搜索到插件&#xff0c;但是无法下载。 在…

多地气温连创新高,快递小哥高温补贴有多少

被热浪笼罩的多个城市&#xff0c;再度进入“烧烤模式”。朋友圈都在被同一句话刷屏——“我和烤肉之间只差一撮孜然的距离”。 在如此炎热时&#xff0c;快递小哥们依旧头顶烈日&#xff0c;穿梭在城市的车水马龙和摩天大楼之间&#xff0c;电话不离耳、腿脚不停歇&#xff0…

LLaMA-Factory私有化部署 -- PAI-DSW

LLaMA-Factory是一款比较流行的大语言模型微调框架。本文主要记录在阿里云人工智能平台PAI的DSW实例中部署LLaMA-Factory的过程&#xff0c;主要参考的教程是B站视频LLaMA-Factory私有化部署。 LLaMA-Factory的私有化部署与部署大模型的过程大体相同&#xff0c;都包括创建Pyt…

培训第十九天(安装nginx代理tomcat)

上午 1、构建vue发行版本 [rootserver ~]# cd eleme_web/[rootserver eleme_web]# npm run buid //项目未执行时运行该命令&#xff0c;创建发行版本 [rootserver eleme_web]# cd dist/ //dist中包含发行版本的所有文件[rootserver dist]# lscss favicon.ico img in…

git创建远程仓库

注册 请自行注册github账号 创建远程仓库 自己在上图那里可以创建一个远程仓库 克隆远程仓库 我们需要将远程仓库克隆到本地之后&#xff0c;在本地修改最后上传到远程仓库&#xff0c;关系如下&#xff1a; 由于我们的仓库是私密仓库&#xff0c;需要通过ssh密钥的方法才…

day19(安装nginx代理 + tomcat)

1、构建vue发行版本 [rootserver ~]# cd eleme_web/ [rootserver eleme_web]# npm run buid //项目未执行时运行该命令&#xff0c;创建发行版本 [rootserver eleme_web]# cd dist/ //dist中包含发行版本的所有文件 [rootserver dist]# ls css favicon.ico img index…

⌈ 传知代码 ⌋ 基于矩阵乘积态的生成模型

&#x1f49b;前情提要&#x1f49b; 本文是传知代码平台中的相关前沿知识与技术的分享~ 接下来我们即将进入一个全新的空间&#xff0c;对技术有一个全新的视角~ 本文所涉及所有资源均在传知代码平台可获取 以下的内容一定会让你对AI 赋能时代有一个颠覆性的认识哦&#x…

SQL语句分类;查看MySQL存储引擎

文章目录 SQL语句分类查看MySQL存储引擎存储引擎对比 SQL语句分类 数据本身权限&#xff1a;定义 修改 DDL【data definition language】 数据定义语言&#xff0c;用来维护存储数据的结构 代表指令: create, drop, alterDML【data manipulation language】 数据操纵语言&…

第十九天内容

上午 1、构建vue发行版本 2、java环境配置 jdk软件包路径&#xff1a; https://download.oracle.com/java/22/latest/jdk-22_linux-x64_bin.tar.gz 下午 1、安装tomcat软件 tomcat软件包路径&#xff1a; https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.26/bin/apache-to…

水库大坝安全自动监测系统位移测点布设

水库大坝安全自动监测系统中的位移测点布设是大坝安全监测的重要环节&#xff0c;其目的是为了及时、准确地获取大坝的位移信息&#xff0c;评估大坝的稳定性&#xff0c;确保大坝的安全运行。位移测点的布设需要综合考虑大坝的结构特点、地质条件、运行工况及监测需求等多方面…

tomcat多实例配置-Linux(CentOS)

多实例配置 一、安装 tomcat二、多实例配置 tomcat 官网 tomcat 安装包下载地址 一、安装 tomcat 解压tomcat压缩包到 /usr/local 下 tar xf apache-tomcat-*.gz -C /usr/local/# 可选 添加一个软链接&#xff0c;方便查找 ln -s /usr/local/apache-tomcat-* /usr/local/tom…