任成珺老师:超过20年研发经验,大型通信设备,网络设备软件研发团队负责人,架构师,熟练使用C/C++, Rust开发语言,参与过Rust Arm Cotex-M适配项目。
作者开源著作《inside-rust-std-library 》:https://github.com/Warrenren/inside-rust-std-library (github超250星项目)
1.RUST的裸指针:只有掌握了指针,才能认为对C编程登堂入室。RUST与C类似,只有掌握了裸指针,才可以被认为能够用RUST作一些复杂工程编程。本课程将对RUST的裸指针进行详细的分析,包括:
2. RUST的所有权/借用/生命周期高级课题:从代码细节了解所有权/借用/生命周期的坑,及应用的原则
3. 内部可变性类型Cell<T>, UnsafeCell<T>, RefCell<T> 实现详解
4. 泛型与trait约束深入认识:
5. 对引用作为match变量的分析:
6. 自动解引用与类型推断结合实例分析
1. 状态变化图
2. 单元结构体与状态模式
3. 状态寄托的结构体
4. 《RUST权威指南》教材当中的问题
1. 数组排序编程:给出一个泛型数组[T;N],及泛型大小比较的函数指针Fn(&T, &T) -> bool,编写快速排序算法对数组进行排序——因为RUST自身的特性,数组排序实际非常考验对RUST语言的理解,需要深刻理解RUST泛型概念,切片类型方法,unsafe rust的使用,裸指针及方法,内存模块方法,并理解所有权的本质。在这些的基础上排序算法也是对编码的一个好的训练。
2. 字符串转换数字:给出数字的进制,扫描一个字符串,将字符串中的数字都找出并打印出来,数字有正负,也可能是具有小数点的浮点数,要求使用设计模式的状态设计模式。——本例主要集中在如何用RUST完成良好的程序结构设计,要设计良好的抽象结构表示不同的进制。分析可能的状态,设计状态的Trait。利用状态的转换得到数字。
1. CPU是单核的时候应用程序异步编程的通用框架模型
2. 单核CPU启动异步事件框架也适合多线程的程序模型
3. 多核CPU带来的多线程/并发式程序模型成为必须
4. 分布式程序与并发多线程的区别与联系
5. 操作系统提供的线程间通信机制:共享内存,Mutex临界保护,socket/msg/pipe等
6. RUST的线程
7. RUST语言提供的线程间通信:所有权move /通道 /Mutex<T>/Arc<T>本质解读
8. RUST async/await机制分析
项目实践
RUST异步编程简易框架搭建
学习时间安排:
1. 每周二/周四/周六的晚上8点-10点
2. 学习时间共两周,其中第一周侧重内存安全和语法难点,第二周侧重RUST并发编程和异步编程等知识。
报名费用说明:
1. 课程学费3600元,包含2周共6次课程,每次课程2小时。
2. 报名缴费后,中途如果放弃学习,则已经发生的课次按每次500元收费,剩余费用退还。
序号 | 昵称 | 年级 | 性别 | 备注 |
---|---|---|---|---|
暂无数据 |
序号 | 课堂内容 | 开始时间 | 备注 | 课堂回放 |
---|---|---|---|---|
暂无数据 |