第一节课是搭建环境,rust的环境配置和包管理真是太舒服了,成功输出hello, world!
今天阅读了The Book的前三章,感觉被语言特性轰炸了。
今天读了所有权这一章,还是有点迷糊,找了Rust程序设计来读,书里配合着其他语言来讲,稍微理解清楚了点。
通读了一遍结构体和枚举的章节,match和if let感觉没怎么理解清楚。
做完了struct章节的rustlings作业。
读完了第七章包管理。
做完了enum章节的rustlings作业。
学习了Vector,String,HashMap的使用方法,str, &str, String, &String 没怎么分清楚。
做完了strings和modules的rustlings作业。
学习了错误处理章节。
做完了hashmaps和options的rustlings作业。
学完泛型已经有点晕了,生命周期更晕了。
做完了error_handling和generics的rustlings作业。
学习了测试章节,越来越能感受到rust的魅力了。
做完了traits,tests,lifetimes,iterators的rustlings作业。
跳过了The Book的实践章节,阅读了迭代器与闭包,智能指针,并发章节。配合题目针对性地读了后面的高级特征章节。
做完了剩下基础章节的rustlings作业。
开始做algorithm板块,第一道题是链表题,明明知道应该怎么做,但是怎么写都是违反所有权
再战链表,打算直接抄一遍链表题目的框架,看看框架是怎么处理链表的。抄到一半的时候大概知道应该如何处理链表了,看明白框架的add函数就可以完成第一个合并题目了。
第二道题是反转链表,有了第一道题的铺垫,这道题就轻松一点了
后面的算法题是树、队列、栈、堆,感觉没有像链表那样跟其他语言差特别多,而且框架已经搭好,实现起来还是比较轻松。
终于到最后一题了,实现图的接口,熟悉了搭建的框架后,理清楚思路就好写一点了。第一阶段完结撒花!