
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
Rust语言凭借其零成本抽象、内存安全和并发特性,成为嵌入式开发的理想选择。本文通过游戏开发中的三个任务展示了Rust在嵌入式领域的优势:1)高效的除法和取模运算通过元组返回商和余数;2)迭代器实现惰性求值和泛型数据处理;3)元组结构体计算曼哈顿距离。这些特性完美解决了嵌入式系统面临的内存限制、处理能力不足等挑战。Rust的无垃圾回收机制、优秀工具链以及编译时内存安全检查,使其在游戏开发、IoT设

在上一章中,我们介绍了如何初始化 Flutter 引擎,本文重点介绍如何添加并跳转至 Flutter 页面。

完整代码见Flutter 鸿蒙版 Demo核心代码如下,通过 OhosView 来承载原生视图OhosView(其中 viewType 为自定义的 ohosView 的名称,onPlatformViewCreated 为创建完成回调,creationParams 为创建时传入的参数,creationParamsCodec 为参数编码格式。

本文详细介绍了如何在鸿蒙项目中初始化Flutter模块。首先,通过编辑ohos_app/oh-package.json文件,根据引入Flutter模块的方式(Har包或源码)添加相应的依赖项。接着,修改EntryAbility.ts文件,使其继承自FlutterAbility,并实现configureFlutterEngine方法以初始化Flutter引擎。FlutterAbility在UIAbi

这种模式适合较大的项目团队,常见的场景是,负责 Flutter 开发的同事开发好指定的模块,以 Har 包的形式交付给鸿蒙原生的开发团队。在这种模式下,鸿蒙原生的开发团队,不需要太多关注 Flutter 部分的内容,甚至不需要安装 Flutter 开发环境,可以更好的职责分离。缺点,由于 Flutter 模块打包成了 Har 包,以 so 文件存在,故 Flutter 无法热重载。

正常情况下,my_flutter_module 创建成功后,会包含一个 .ohos 目录,这个目录是一个鸿蒙工程(里面包含 flutter_module 模块),它可以做为 Flutter 的宿主运行。通过以上操作,我们将 .ohos 目录以软连接的方式,替换成了 ohos_app 鸿蒙工程,这样一来,当我们运行 Flutter 代码时,就会把 ohos_app 做为宿主,这样就实现了联动源码开发

除了使用 Flutter 工程做为主项目开发以外,还有一种常见的开发方式,即混合开发,主项目工程为 HarmonyOS 工程, Flutter 工程以模块形式存在,,以依赖方式加载到主项目工程中,最终实现混合开发。在前面的系列文章中,我们从搭建开发环境开始,讲到如何使用、集成第三方插件,如何将现有项目进行鸿蒙化改造,以及上架审核等内容;让原生鸿蒙工程依赖 Flutter 模块的源码,这样 Flut

Rust过程宏是一种强大的元编程工具,允许在编译时生成代码。本文介绍了三种过程宏类型(自定义派生宏、属性宏和函数宏),重点分析了属性宏的实现。通过太空年龄计算器示例,展示了如何解析TokenStream为AST,使用quote宏生成代码,并改进解析方式与错误处理。相比声明宏,过程宏更灵活但复杂度更高,能执行任意Rust代码来生成代码。文章还对比了两种宏的差异,并演示了如何运用Rust特性(如Tok

摘要 本文探讨了Rust中解决"棋盘麦粒"问题的多种实现方法。该问题源于古老传说,要求计算棋盘第n格(2^(n-1))和全部64格(2^64-1)的麦粒数。核心解决方案采用位运算:左移计算单格数量(!0表示总数),并通过模式匹配处理1-64范围外的输入。文章展示了基础实现、错误处理(Result/GrainError)、防溢出(u128)和性能优化(const fn)等变体,分

Rust中的泛型FizzBuzz实现探索了高级编程概念。该框架通过Matcher结构体定义匹配规则,Fizzy处理器组合多个规则,并支持自定义数据类型。实现涉及泛型编程、trait约束(Display、Rem等)和迭代器模式,可灵活应用于不同数值类型(i32、u8等)。核心功能包括:1) 创建自定义匹配规则;2) 组合多个规则;3) 将规则应用到任意迭代器。标准FizzBuzz规则(3→Fizz,









