- 使用OC完成一个Demo,掌握property的用法
- 使用OC完成一个Demo,掌握Block和各种容器的用法
- 使用OC实现选择排序、快排、堆排序
https://github.com/TD21forever/BytedanceHomework
对于任务一,主要研究以下问题:
- 不使用Property,手动创建成员变量的存取器
- @dynamic关键字和@synthesize关键字的作用
- Property的各种修饰符
- readonly的作用
- atomic是否能保证线程安全
- copy修饰可变容器导致的问题
- 循环引用
对于任务二,主要研究以下问题
- 浅拷贝与深拷贝
- 不可变对象的copy和MutableCopy
- 可变对象的copy和MutableCopy
- 可变数组的单层深拷贝
- 各种block的写法
- 一个无返回值无参数的闭包
- 简化版本的无返回值无参数闭包
- 有返回值有参数的闭包
- typedef 定义闭包类型
- 将block作为函数参数
- 实现三种不同的排序