This_Wei

Come on!

概述

本文介绍了 Rust 中的结构体(struct)与枚举(enum),内容包含结构体的定义、实例化、使用与示例,枚举的定义与使用。

结构体和枚举

结构体是一种允许用户自行定义的数据类型,可将多种类型的数据打包成有意义的组合,并给每个数据命名。与 C 语言中的结构体不同,Rust 中可以为结构体和枚举声明方法。

枚举是一种允许用户列举所有可能类型的数据类型,Rust 中枚举允许携带数据,每个枚举变体可以携带不同类型、不同数量的数据。

阅读全文 »

概述

这篇文章介绍了将 Hexo 静态博客部署到云服务器的方法,内容涉及到域名解析、云服务器配置、nginx安装与配置、https证书申请与配置。

原理其实很简单

Hexo 博客编译后会得到一些静态的前端页面和文件,将它们放到服务器上,并启动一个 nginx 作为 web 服务器,就可以访问了。

如果想让访问更加友好,那就申请一个域名,将域名解析到服务器,就可以通过域名访问了。

如果想让博客访问更安全,就申请一个免费的 https 证书,改一下 nginx 配置就行了。

阅读全文 »

概述

这篇文件介绍了 Rust 中最核心,也是最特别的一个概念:所有权,想学好 Rust 就必须充分的理解所有权。所有权让 Rust 在无需垃圾回收机制就可以保证内存安全,而且在其他编程中从未有过所有权的概念,因此从其他编程语言转来学 Rust 时会感觉难以理解。

什么是所有权

所有权是 Rust 的核心特性,Rust 中使用所有权系统来管理内存使用,它让 Rust 无需 GC (垃圾回收)就可以保证内存安全。所有权机制不像 java、C# 使用垃圾回收器管理内存,也不像 C/C++ 语言一样需要程序员显式的申请与释放内存。

所有权系统让 Rust 在编译时就可以完成内存使用的检查,因而程序在运行时就不会产生任何额外开销,这样既保证了内存安全,又提升了运行速度。真是妙啊!

阅读全文 »

概述

这篇文章介绍了 Rust 语言的基础语法规则,学会了这些语法内容,就可以使用 Rust 编写简单的程序了,文章内容包括 Rust 中最基础的程序结构、注释、基础数据类型、变量定义、函数定义、分支与循环结构。

一个简单的 Rust 程序代码

1
2
3
4
5
6
7
fn main() { 
// 定义变量
let mut name = "C/C++";
println!("Hello, {}!", name); // 打印输出
name = "Rust"; // 修改变量值
println!("Hello, {}!", name);
}
阅读全文 »

概要

这篇文章介绍了 cron 的含义、cron 表达式语法和应用场景。

什么是 cron

cron 读作 “克龙”,是一种时间单位,1cron 等于百万年。在计算机世界中,cron 被用作定时任务,即在指定时间、周期自动执行预置的任务。cron 表达式广泛用于各种定时任务、调度服务。

阅读全文 »

概述

Rust 是一门系统编程语言,在 Stack Overflow 的年度开发者调查中,多年获得 “最喜爱的编程语言” 奖项;Rust 已被 Google、亚马逊、微软、华为、百度、阿里等大厂使用。本文介绍了 Rust 语言的基础特性、优缺点、适用场景,介绍了Rust的使用,包括安装Rust、创建基础体验代码以及代码编译执行,介绍了Rust的开发工具及配置方法。此外,还介绍了一些优秀的 Rust 开源项目和 Rust 学习项目与资料。

关于Rust

官网: https://www.rust-lang.org/

Rust 是一门赋予每个人构建可靠且高效软件能力的语言。

Rust 语言是 2009 年由 Graydon Hoare 设计,由 Mozilla 实验室资助和完善,现已成为 Mozilla 官方项目。Rust 最大的特点是安全可靠、运行速度快,可作为 C/C++ 的替代语言,相比 C/C++,Rust 和它们具有相同的运行速度,却可以避免 C/C++ 中很多常见的 bug,比如悬垂指针问题、内存泄漏问题。Rust 语言的应用场景包括:系统级编程、嵌入式开发、并发编程、高性能WEB服务、跨平台开发、数据处理和机器学习等。

阅读全文 »

概述

2023年10月15日,我们来到了位于大邑县的雾山乡云中屋徒步,初秋的微凉天气很舒服,孩子们在户外也玩的很开心。

阅读全文 »

概述

这篇文章介绍了作为一个 IT 工作者从开始工作,到工作三五年,到长期的职业规划建议,希望能对迷茫的人有所启发。

总体规划

工作年限 时期 建议
1~3年 技术筑基期 补齐基础知识和短板,扩展技术栈
3~5年 沉淀提效期 提升工作效率,持续学习,理解技术背后的原理
5~10年 优秀提升期 明确发展方向,努力变得比别人优秀
阅读全文 »

概述

这篇文章介绍了当前常见的流媒体服务架构和实现协议,以及各种流媒体协议的特点对比。

关于流媒体服务

流媒体服务是提供音频、视频等多媒体数据传输和存储服务,比如视频直播服务。

阅读全文 »

概述

这篇文章介绍了在 JavaScript 中通过 WebAssembly 调用 C 语言编写的函数,以及在 C 代码中调用 JavaScript 函数。

web 使用 wasm 流程

在 web 项目中使用 WebAssembly 时,需要先编写 C 语言代码,然后使用 emscripten 编译成 .wasm.js 文件,最后在 html 文件中引入 js 文件,就可以调用在 C 中定义的函数。在 wasm 中是无法操作 dom 的,需要结合 js 使用。

graph LR;
C(C代码) ---> WASM ---> HTML
JS ---> HTML
C -.-> JS

注意:使用 emscripten 自动生成的胶水 js 文件是对 wasm 的实例化和调用函数的封装,方便使用,这个 js 文件中对各种运行环境(node、shell、web、worker)做了支持,实际使用时可以根据自己的业务需求,排除不需要的代码以缩小 js 文件代码量,或自己编写封装成 js 文件。

阅读全文 »
0%