美文网首页
iOS面试自我回顾

iOS面试自我回顾

作者: Taoai_M | 来源:发表于2018-04-16 13:51 被阅读9次

    2018年4月13号

    上午:

    一个公司的面试,本来以为可以面试通过的。回顾一下,面试中还是有一些缺陷的。

    1,app的流畅度怎么处理?

    2,手环数据的并发上传处理?

    3,职业规划

    4,手势单击和双击的触发。

    下午:

    1,类和类别的声明的相同的方法,执行顺序。

    (1.执行顺序是先执行子类中分类中的方法)

    2,关于runtime的知识点。

    (1,动态创建一个类:KVO的底层实现)

    (2,动态的为某个类添加属性和方法,修改属性和方法)

    (3,遍历一个类的所有成员的变量(属性),所有方法)例子:修改 UIDatePickerView  的线条消失

    3,核心动画。

    4,断点续传功能的实现。

    5,声音的降噪处理。 

    6,FMDB的多线程的处理。以及事务(因为项目中基本没有使用FMDB,时间长了忘了)。

    (1,事务是为了处理大量数据写入磁盘的操作,即打开一次数据库,将所有的数据写入数据库)

    (2,事务在插入一个数据到多个数据库时,如果插入一个数据库失败,即不会往其他的数据库插入,可以回滚)

    7,关于assign,weak,strong,copy,automic,nonatomic 的使用。程序会不会造成循环引用的问题。

    (1,代理和block的使用)

    (2,strong和copy 当不可变的对象时,没有区别,只是一次浅拷贝,当可变对象的时候,copy是对对象的一次深拷贝,即分配一块内存空间。strong是随着对象的改变而改变。)

    8,内存管理,引用计数+1的方式。

    9,autoreleasepool 的作用

    (1,初始化执行main函数的时候,自动创建内存释放池:创建的对象时引用计数加1,自动在对象不再被对象引用的时候,使计数-1操作,即【obj release】)(2,循环遍历比较大的数组或者对象时生成临时对象的时候,引用autoreleasepool可以释放临时生成的对象,避免内存暴涨)。

    10,KVC和KVO的底层实现

    (1,KVC 是通过属性的set方法去赋值,查找_,查找子类的属性,有相应的key值既可以赋值)

    (2,KVO的实现,即生成监听类的临时子类,通过监听属性的set方法,动态通知属性的变化)

    让自己变成更好的自己。

    相关文章

      网友评论

          本文标题:iOS面试自我回顾

          本文链接:https://www.haomeiwen.com/subject/zaxekftx.html