自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(106)
  • 收藏
  • 关注

原创 构建积极心理学资源站:从零到一的旅程

自己搭建的心理学资源网站:致力于推动积极未来 ,这是一个致力于积极心理学的资源站。欢迎来到kuakua.app!

2024-08-02 14:11:04 466

原创 全网最全的国外心理学资源导航站

从心理学AI工具(国内外)到心理学专业院校、心理学期刊论文、心理学线上课程、心理咨询平台、各类心理学专家blog,甚至你想不到的心理学博物馆,这里都可以找到。当然,如果有还没有收录的也欢迎留言和提交,我们会及时收录。Kuakua | 发现心理学网站,应用程序和AI工具。想学心理学不知道去哪儿看权威的内容?中文搜索心理学广告多?

2024-06-26 10:16:30 498

原创 我自己搭建的心理学导航站,已升级到nextjs15

1、nextjs15的体验整体不错,除了一些比较老的依赖项目需要淘汰外,大部分基本上完美兼容,从14升级到15基本没啥问题。2、浏览速度方面,整体速度提升很快,体感在20%左右,实际上性能提升可能超过50%。构建和部署的包有更小,也因此性能更好了。3、部署时和日常错误检查的也更详细具体了,尤其是水合错误,之前14花了很多时间调试,15基本都会明确指出问题点。升级到 Next.js 15,瞬间优化了一些内容。- 优化的多语言搜索引擎优化。

2024-06-25 10:30:41 638

原创 从零开始学代码写了一个心理学知识导航站

探索心理学、人工智能工具、正念、生活方式、治疗资源。寻找快乐的语言、任务、网站和应用程序来提升您的幸福感和快乐。

2024-06-20 17:51:57 469

原创 一位匿名人士分享了数千份泄露的 Google 搜索 API 文档: 做SEO的每个人都应该看一遍

泄漏似乎来自 GitHub,对其曝光的最可信的解释与我的匿名消息来源在我们的电话中告诉我的相符:这些文件无意中被短暂公开(文档中的许多链接都指向私人 GitHub 存储库和内部页面)需要特定的 Google 认证登录的 Google 公司网站)。可悲的是,我不知道还能把这种潜在的开创性的东西发送到哪里。然而,我将分享我在仔细阅读中发现的五个最有趣的早期发现,其中一些为谷歌长期以来被认为正在做的事情提供了新的线索,而另一些则暗示了该公司的公开声明(尤其是那些关于他们“收集”的内容) ) 曾有过错误。

2024-05-30 07:30:00 1041

原创 算法的秘密:谷歌搜索的内部工程文档已经泄露

Google, if you’re reading this, it’s too late.谷歌,如果你正在读这篇文章,那就太晚了。Ok.Cracks knuckles. Let’s get right to it.Internal documentation for Google Search’s Content Warehouse API has leaked. Google’s internal microservices appear to mirror what Google

2024-05-30 07:00:00 782

原创 Google Search Console:优化网站可见性的终极指南

Google Search Console 是一项由 Google 提供的免费服务,可帮助您监控和维护您的网站在 Google 搜索结果中的展示情况以及排查问题。即使没有注册 Search Console,您的网页也可能会显示在 Google 搜索结果中,但 Search Console 可帮助您了解并改进 Google 处理您网站的方式。

2024-05-29 17:12:31 979

原创 使用 Rust 的 Web 应用程序:通过后端集成增强动态性

Rocket 和 Actix-Web 等工具允许开发人员构建可靠的 Web 服务器,这些服务器不仅具有弹性,而且速度快得令人难以置信。Actix-Web 因其使用 Rust 的异步功能及其安全保证而成为 Web 框架中的佼佼者。通过使用 Rust 集成强大的后端服务,您的 Web 应用程序不仅强大,而且具有令人难以置信的性能和安全性。Rust 强大的异步功能使其成为 GraphQL 的完美匹配,实现高效、灵活的数据查询,并可根据用户需求进行扩展。定义了一个返回问候语的简单 GraphQL 查询。

2024-05-23 07:30:00 1297

原创 使用 Rust 的 Web 应用程序:实现安全身份验证和授权

我们将深入研究高效的异步编程,最大限度地减少 WebAssembly 包的大小,并利用 Rust 强大的并发功能来确保您的应用程序不仅安全,而且速度极快且响应迅速。通过实施这些高级身份验证和授权技术,您的 Rust Web 应用程序不仅会更加安全,而且还能安全有效地处理复杂的用户交互。我们将探索使用 JWT 和 OAuth 等流行策略来实现这些,确保您的应用程序安全地处理用户数据。我们将逐步生成和验证 JWT,解释每个步骤,以确保您了解如何在自己的应用程序中应用这些技术。Conclusion 结论。

2024-05-22 07:30:00 1065

原创 使用 Rust 的 Web 应用程序:通过优化提高性能

优化 Rust Web 应用程序的性能需要结合高效的编码实践、深思熟虑的应用程序架构以及利用 Rust 和 WebAssembly 提供的强大功能。WebAssembly 在 Rust Web 应用程序中发挥着至关重要的作用,尤其是对于客户端操作。利用这些功能可以减少 CPU 密集型任务的执行时间,使您的应用程序更快、响应更快。今天,我们分析性能优化,这是确保您的 Web 应用程序平稳高效运行的关键方面。Rust 的异步生态系统允许您同时处理多个任务,而不会阻塞主线程,从而提高性能。在 Rust 中使用。

2024-05-21 07:30:00 550 1

原创 使用 Rust 的 Web 应用程序:实现无缝性能的状态管理

在 Rust 中,有效地管理状态利用该语言的强类型系统和内存安全功能来确保数据一致性和性能。高级状态管理是 Rust Web 应用程序开发的游戏规则改变者,提供了构建健壮、高效应用程序的途径。为了将理论付诸实践,来开发一个简单的待办事项列表应用程序,使用 Yew 框架(Rust 前端开发的流行选择)来实现 Redux 风格的状态管理方法。有多种工具可以帮助简化 Rust Web 应用程序中的状态管理。此示例演示了如何使用 Rust 的强大功能来有效管理 Web 环境中的状态。为什么要关注状态管理?

2024-05-20 07:30:00 608

原创 使用 Rust 增强您的 Web 开发能力:Web 应用程序的未来

结合 Leptos(让人想起 Solid、React 和 Svelte 等 JavaScript 框架)以及 Rust 自己的 Yew 和 Dioxus,Rust 提升了它的游戏水平。拥抱 Rust 的强大力量,这是一种彻底改变 Web 应用程序的编程语言。Trunk 是一个 Rust 的 Web 程序集应用程序捆绑器,它是您的下一步。然后,将这些样式集成到您的 Rust 组件中,让它们栩栩如生!App 组件由标有“Rust is Awesome”的标头和 Button 组件的实例组成。

2024-05-19 07:30:00 1008 1

原创 如果 Google 不再支持 Golang,分析Google停止支持Go语言的潜在影响及未来可能的情景

一个非营利组织可能会围绕 Go 成立(或者可能直接加入 CNCF),并得到大公司的足够支持,至少在一段时间内是这样。考虑到 Go 目前关注客户成功的趋势,Google Cloud 关闭 Go 的可能性很低。上个月 IT 圈的热门话题是 Google 解雇了 Python 核心团队和 flutter/dart 团队的多名开发人员,据称是为了进行全市范围的重组。根据@Lance Taylor 澄清的过去的理解以及各种来源的描述,可以估计 Go 可能从 Google 收到的内容。Conclusion 结论。

2024-05-18 07:30:00 3745

原创 才发现:我对 WASM 的理解全错了!

它不仅与平台无关,而且还针对执行速度和紧凑性进行了优化,这与 FFI 不同,在 FFI 中,由于在执行上下文之间编组数据和处理不同的内存模型,可能会出现高开销。然而,这不是永久的限制,而是当前的障碍。本案例研究只是一个示例,说明 WASM 不仅可以在性能和效率至关重要的后端系统中有效利用,而且随着工具链的发展,它也为网络带来了巨大的希望。通过将现有的 JavaScript ULID 生成实现转换为编译为 WASM 的 Rust,我实现了显着的性能提升——比原始 JavaScript 版本快大约 40 倍。

2024-05-17 07:30:00 1108

原创 Rust和Go语言在2024年的对比

使用安全的 Rust 代码实现程序通常意味着从根本上重新思考其设计,这可能会令人沮丧,但当可靠性是您的首要任务时,这样做的好处是值得的。Go 和 Rust 都旨在帮助您编写正确的程序,但方式不同:例如,Go 提供了出色的内置单元测试框架和丰富的标准库,而 Rust 则专注于使用其借用检查器机制消除运行时错误。与大多数语言不同,Go 的设计内置了对并发编程的支持,例如 goroutine(线程的轻量级版本)和通道(一种在并发任务之间通信数据的安全有效的方式)。”,唯一正确的答案是“是”。

2024-05-16 07:00:00 1815

原创 Benedict Evans:Ways to think about AGI思考 AGI 的方法:

​Benedict Evans本文发布于2024 年 5 月 4 日How do we think about a fundamentally unknown and unknowable risk, when the experts agree only that they have no idea?当专家们一致认为他们一无所知时,我们如何看待根本上未知和不可知的风险?The manuscript for ‘A Logic Named Joe’《乔的逻辑》手稿In 1946, my

2024-05-15 21:19:00 927 1

原创 2024 年 Rust 值得关注的精选库列表

const-type-layout :通过派生相对于 Rust 原生类型描述(TypeLayout)的宏,实现类型布局信息的常量表示,有利于编译时检查结构布局。Cargo-outdated :Cargo 子命令,用于检查项目的 Cargo.lock 或 Cargo.toml 文件中列出的依赖项的新版本是否可用。Numpy:一个 Rust 库,提供与 NumPy C-API 的绑定,允许 Rust 通过 PyO3 与 Python 的 NumPy 数组交互。

2024-05-15 07:30:00 737

原创 Rust开始分叉,Rust基金会与开源CrabLang社区关系紧张

面对这样的独裁政策和种族歧视,Rust项目的核心贡献者JT愤怒地辞去了Rust的工作,并写道:“基金会羞辱了该领域最重要的专家之一。在新草案中,Rust基金会希望禁止在Rust相关工具或用Rust编写的软件的名称中使用“Rust”,甚至对域名或子域名进行有针对性的限制。Rust基金会长期以来的官僚行为引起了Rust开源社区用户的抱怨,而最近的“商标闹剧”更是将Rust内部的风波推向了高潮。在CrabLang的官方介绍中,他们表示,社区分支的创建是对企业和基金会提出的限制性商标政策的回应。

2024-05-14 08:28:40 1058 1

原创 深入探讨利用大型语言模型的力量的策略 (LLMs)

这样做可以帮助 LLM 保持对每项内容的清晰理解,降低错过信息的可能性,尤其是在更复杂的任务中,例如这个具有较长指令的任务。您可能遇到过这样的情况:LLM“意外忘记”您在较长提示中给出的某个指令 - 例如,如果您要求提供 100 个字的响应,而 LLM可以首先消化它应该做什么,然后在接下来提供的数据集上执行它。值得一提的是 NVIDIA 团队开发的 NeMo Guardrails,它允许您配置用户与 LLM 之间的预期对话流程,从而在聊天的不同点设置不同的护栏,从而实现动态护栏随着聊天的进行而演变。

2024-05-10 08:00:00 1665

原创 延迟加载过多对性能的影响

如果您的网站使用原生图片延迟加载,请检查其实现方式并运行 A/B 测试,以便更好地了解其性能开销。若能更加刻意地加载首屏图片,则可能有所助益。如果您拥有 WordPress 网站,很可能会有一个补丁登陆 WordPress 核心。如果您使用的是其他 CMS,请确保其了解此处所述的潜在性能问题。试用相对较新的 Web 平台 API 可能会带来风险和回报,它们被称之为前沿功能是有其原因的。虽然大家都已经开始感受到原生图片延迟加载的棘手问题,但也看到了使用这种加载方式的益处。

2024-05-09 07:30:00 1283

原创 软件开发的 20 条基本原则:LoD、SoC、SOLID 等

例如,控制器模式是纯粹的制造。“在某种程度上,开发商或架构师的成熟可以体现在他们对实现光伏发电的更广泛机制的了解不断增长,选择值得打的适当的光伏战争,以及他们选择合适的光伏解决方案的能力。该原则强调了前面讨论的分离不同对象之间职责的原则的重要性:您需要应用间接来轻松地在不同实现之间切换,您需要使用信息专家来决定谁应该负责满足需求,您需要在设计系统时考虑到多态性,以引入不同的可插拔解决方案等。根据语言的不同,可以通过多种方式来完成,但常见的是实现相同的接口或使用继承,特别是为不同对象的方法赋予相同的名称。

2024-05-08 10:54:38 701

原创 揭秘依赖注入:软件开发人员的基本指南

依赖类依赖于注入器或容器来提供所需的依赖项,并且依赖项本身被定义为契约或接口,从而允许可互换的实现。您可以创建自己的算法来注册和注入依赖项,也可以使用 DI 容器或 DI 框架来为您执行此操作。客户端:依赖类,也称为客户端类,是依赖依赖来实现其功能的类。总之,依赖注入是设计灵活、模块化和可测试的软件系统的一项有价值的技术。在 DI 中,类或其他依赖组件的依赖关系是从外部构造和提供(注入)的,而不是由依赖组件开始创建的。类应该专注于其自身与汽车行为相关的职责,而引擎的创建和配置可以在代码的不同部分中处理。

2024-05-08 10:53:21 788

转载 2024 年 Rust 学习资源推荐

在过去的两年里,Rust 几乎一直是我关注的焦点。Rust 已经成为我的首选语言。作为学习 Rust 的副作用,与我所学的语言(Python、Matlab、C++、Go、JS/TS)相比,我获得了更多关于计算机科学的知识。自从我开始 Rust 之旅以来,我消耗了大量的书籍和其他资源。我希望这些能够帮助您获得更多知识,无论您是初级用户还是中级用户。Youtube Channels Youtube 频道。Online Courses 在线课程。Newsletters 时事通讯。Podcasts 播客。

2024-05-08 07:30:00 245

原创 Rust教程:贪吃蛇游戏(第 2/2 部分)

如果尾部和头部在同一个块中重叠,实际上有一段时间头部将在该块中,尾部也会在该块中,我们不希望这导致失败状态,所以我们。因此,如果我们吃一个苹果,该方法将运行,并且尾部将被推入我们的链表主体中。,因为它允许我们创建一个线程本地随机数生成器(这样我们就可以使用我们的操作系统来创建一个随机数)。我们还将创建一个基于我们的尾巴的块。(显然,您可以将其设置为您想要的任何值)更喜欢),然后我们将创建一个可变窗口,它将是。我们将检查蛇是否还活着,如果是的话我们将< b6> 并检查是否吃东西,如果不是,则。

2024-05-07 11:11:12 1186

原创 Rust教程:贪吃蛇游戏(第 1/2 部分)

在本教程中,我们探索了如何使用 Rust 创建贪吃蛇游戏,重点介绍了游戏环境的设置以及蛇、苹果、墙壁和游戏板等关键组件的初始化。例如,如果它向左移动,而我按了右键,它就无法后退,这会导致游戏进入失败状态,因为蛇实际上无法触及自己。另外,如果蛇撞到墙上,它就会死。好吧,各位,由于本文太长并且有点难以管理,而且坦率地说,我们还有更多步骤和概念要介绍,我将创建第 2 部分,我们将在其中完成。,它将接受一个 i32 的游戏坐标,然后我们想要返回一个 f64。唯一真正的区别是,我们将块大小乘以宽度,将其转换为。

2024-05-07 11:05:11 1240

原创 学习Rust的第29天: cat in Rust

否则,假设提供了文件名,并且它将继续读取和打印这些文件的内容,当前将其作为注释保留。函数将命令行参数收集到字符串向量中,删除第一个参数(程序名称本身),然后。方法当前留空,可能会被实现来读取和打印指定文件的内容。方法读取由名称指定的文件的内容并将其作为 a 返回。它首先检查是否没有提供文件名,在这种情况下它调用。它检查是否没有提供文件名,在这种情况下它调用。文件名中是否存在该标志,如果存在,则调用该。文件名中是否存在该标志,如果存在,则调用该。否则,它会迭代每个文件名,使用 读取其内容。

2024-05-06 09:00:00 1435 1

原创 学习Rust的第28天:rm in Rust

过去几天以来,我们一直在 Rust 中重新创建 GNU 核心实用程序的基本功能,今天我们构建了另一个工具,用于从文件系统中删除文件和目录。则打印帮助信息,否则迭代提供的路径以执行删除操作(当前未实现)。箱的一个非常易于使用的功能,如果指定的路径是目录,则使用。这就是我们所要做的,让我们测试一下,看看它是如何工作的。如果它是一个目录,它会使用。run() :执行逻辑和错误处理,调用其他函数。如果路径不是目录(可能是文件),它会尝试使用。它检查是否有足够的参数,如果提供了。,否则传播任何遇到的 IO 错误。

2024-05-06 07:30:00 900 1

原创 学习Rust的第27天:Rust中的pwd

过去几天我们一直在重新创建 GNU 核心实用程序的基本功能,而今天,我们将做一些有点太简单的事情,函数毫无困难地重新创建它,让我们在新的 Rust 项目中创建一个库箱和一个模块来开始使用它。失败,则执行此分支,打印一条错误消息,指示发生应用程序错误。的函数,该函数返回一个结果,其中包含表示当前工作目录的。是我们当前所在的目录,在 Linux Shell 中。模块,该模块提供与当前进程的环境变量交互的函数。模块中的一个函数,它返回表示当前工作目录的。的模块,可以从其他模块访问该模块。

2024-05-05 07:15:00 898

原创 学习Rust的第26天:Rust中的cp

看起来很简单,我们将创建一个 lib.rs 并像昨天一样执行基本设置任务。代码将与前文代码保持相似,我们只会更改程序的核心功能和一些变量名称以匹配用例。),并将子目录的路径作为新的源,并将目标与当前条目的名称连接起来。实用程序的功能,我想默认使其递归,因为每次我想复制时都输入。此行解开目录条目迭代的结果,处理可能发生的任何潜在错误。这就是我们需要做的所有设置任务,现在创建一个复制功能,如果当前条目不是目录(即,它是文件),则执行此块。结构表示文件系统路径,用于操作和使用文件路径。

2024-05-04 07:30:00 928

原创 学习Rust的第25天:Rust中的mkdir

好吧,看起来很简单,让我们从新的货物库箱开始,创建一个简单的结构体和一个。函数,它引用 self 并根据我们在伪代码中指定的条件调用我们的私有函数。否则,它会迭代提供的目录名称,尝试创建每个目录并打印遇到的任何错误。现在我们已经拥有了制作目录所需的一切,那么让我们制作一个目录吧?如果没有提供目录名称作为参数,则将错误消息打印到标准错误。现在基础知识已经设置完毕,我们将创建一个二进制板条箱,函数创建由输入字符串指定的目录。创建私有函数,让我们的工作变得更容易一些。指示成功或失败,到目前为止,这是我们的。

2024-05-03 07:00:00 1093 1

原创 学习Rust的第24天:在Rust中构建ls

现在让我们开始实际获取文件并将其打印出来的主要逻辑,如果用户没有传入任何我们想要索引当前文件夹的数据的参数,我们可以通过导入。虽然这可行,但如果我传递一个不存在的目录名称,程序就会出现恐慌,这不太令人愉快。由于它是一个引用,因此必须指定它的生命周期,因为 Rust 需要确保该引用的生命周期至少与保存它的。结构体并不拥有它引用的数据,而只是借用它,并且它受生命周期。是我的板条箱的名称,请使用您的板条箱的名称来代替......) 的引用的生命周期。现在我们对必须构建的内容有了基本的了解,让我们开始吧?

2024-05-02 07:30:00 73 2

原创 学习Rust的第23天:闭包

Rust 闭包提供了简洁、富有表现力的匿名函数来捕获周围的变量。从本质上讲,闭包是 Rust 的基础,可以提高代码的清晰度和简洁性。在 Rust 中,闭包是可以从周围环境捕获变量的匿名函数。Rust 中的闭包具有灵活而强大的语法,允许它们在各种上下文中使用。闭包执行后,捕获的变量将移至闭包中,并且无法再在外部作用域中访问。此特性适用于需要使用捕获的变量、将所有权转移给闭包的闭包。用法示例:使用捕获变量的函数,例如移动语义中使用的闭包。捕获的变量仍然可以访问,并且可以在闭包执行后使用。

2024-05-01 07:00:00 1368

原创 学习Rust的第22天:mini_grep第2部分

书接上文,在本文中,我们学习了如何通过将 Rust 程序的逻辑移至单独的库箱中并采用测试驱动开发 (TDD) 实践来重构 Rust 程序。相反,它返回一个空结果向量,从而表明它没有存储与不区分大小写的查询匹配的原始行。文件目前有点臃肿,我们所有的逻辑都存储在一个地方,为了解决这种情况,我们可以创建一个库板条箱并将所有逻辑存储在那里,我们的。请记住,默认情况下,rust 中的所有内容都是私有的,这就是我们可以使用。将查询和行转换为小写后,它检查该行的小写版本是否包含查询的小写版本。文件中,所以让我们开始吧。

2024-04-30 07:00:00 875

原创 学习Rust的第21天:mini_grep第1部分

我们的 main 函数目前有很多职责,所以今天我们将把它分成函数和结构体,剩下的在明天的文章中完成。我们涵盖了读取命令行参数、读取文件内容,并开始通过将程序构造为函数和结构体来重构程序。这里我们并不真正关心二进制路径,我们只需要这个向量的最后两个元素。为了阅读,首先让我们在板条箱的根目录中创建一个文件,我将其命名为。现在我们已经有了程序设置的基础知识,让我们重构程序......正如你所看到的,我们得到了传递到项目中的参数。:提供与进程交互的功能(例如,退出进程)。方法,这将返回一个我们可以使用的迭代器。

2024-04-29 07:15:00 620

原创 学习Rust的第20天:运行测试

特性,顾名思义,它告诉rust编译器忽略特定的测试,我们有一些命令行参数,我们可以使用它们来运行被忽略的测试或包含被忽略的测试,但是考虑到这是一个你必须完成的任务,这将帮助你在阅读手册时更好地理解。一般来说,我们可能不想这样做,因为这会使我们的测试运行得更慢,但是如果有测试修改了环境变量或文件,测试可能会同时尝试修改实体,这可能会导致潜在的失败。一般来说,每个测试都有自己的线程来运行,但是如果我们想一个接一个地运行测试(串行地),我们会使用。的测试,要运行这两个测试,我可以使用以下命令。

2024-04-28 07:00:00 845 1

原创 情绪:本来无一物,何处惹尘埃

但我非常为你感到高兴,因为你发觉自己的变化,虽然在当下花了一些精力去做调整,但是拉长时间维度来看,你的及时调整和复盘,让自己对自己有了更稳定的掌控力,这本身是一种往好的方向发展的表现。我说,这其实非常好,因为你开始觉知了自己的波动,发现了自己的变化,这样无论你是否能够及时察觉并调整,都说明你的觉知力,对自己的合理关注有所上升。不同的"观"之下,你能感受到的格局与能量场不同,不同的场域下,人会做的思考、决策都会有不同。但从情绪和烦恼来看,它们有时候属于无根之木,无源之尘,附着在你身上,只是因为你在关注他们。

2024-04-28 06:30:00 658

原创 不用冥想!也能提高自我意识和正念的几种方法

例如,在对一名员工异常发脾气后,新经理可能会立即得出结论,认为发生这种情况是因为她不适合管理,而真正的原因是严重的低血糖。鉴于我们的身体、感觉和经历固有的可变性,为任何一项诊断的无数表现贴上一个标签,或者暗示一个标签可以概括一个人的身份、状况、经历或潜力,都是具有误导性的。当我感到兴奋时,我更愿意冒险。以自然为灵感的教练的基本前提是,接近自然会刺激身体的某种智力,而当我们过着典型的城市生活时,这种智力仍然处于阴暗状态。难相处的人是那些不做任何故意伤害人的事情,但他们只是按照自己的方式“触动你的按钮”的人。

2024-04-27 08:01:56 1293

原创 学习Rust的第19天:编写测试

Rust中的测试涉及编写专门设计的代码,以验证其他代码是否按预期工作。它很重要,因为它有助于通过在开发过程的早期检测错误,回归和边缘情况来确保Rust程序的可靠性,正确性和健壮性。要开始测试,我们需要创建一个库crate,我们可以通过运行以下命令来完成。创建一个新的库crate,可以参考第11天的lib.rs文件。In thelib.rs在lib.rs文件中,我们已经有了一个预先编写的测试,让我们分解它以更好地理解它。The。

2024-04-27 07:30:00 987

原创 学习Rust的第18天:Lifetime

在本文中探讨了Rust生命周期中的关键概念,包括基础知识、借用检查器、通用生命周期注释、生命周期省略规则、结构中的注释和静态生命周期。Rust中的泛型生命周期注释允许函数接受具有任何生命周期的参数,从而在处理具有不同生命周期的引用时提供灵活性。在Rust的生命周期省略规则中,输出生命周期是根据输入生命周期和函数或方法参数的结构来推断的。结构中的生存期注释允许在结构字段中指定引用的生存期,确保它们遵守Rust的所有权规则。在Rust的生存期省略规则中,输入生存期用于推断从函数返回的引用的生存期。

2024-04-26 07:00:00 750

原创 学习Rust的第17天:Traits

Rust traits,包括自定义trait声明,trait边界,实现trait的返回类型,条件方法实现和blanket实现。在Rust中,trait bounds用于将泛型类型限制为实现某些trait的类型。Rust 中的 taits 定义了一组类型可以实现的行为,从而实现多态性和代码可重用性。Rust中的Blanket实现允许您为满足某些条件的所有类型实现trait,同时为多个类型的trait提供默认实现。这个函数返回任何实现Sound trait的实例,到目前为止,我们通过这个函数返回。

2024-04-25 09:00:22 1100

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除