美文网首页
iOS面试题集锦

iOS面试题集锦

作者: 奔向大牛 | 来源:发表于2016-09-06 08:59 被阅读0次

    1、 get和post的区别

    a.安全性问题:get请求的参数全部暴露在接口中,一般叫做明文请求或者傻瓜式请求,post请求的参数一般是以字典的方式进行拼接,相对于get请求而言比较安全

    b.对文件大小的要求:get请求不允许向服务器上传文件(图片,pdf,音视频)

    c.如果从服务器获取数据或者查询数据使用get请求,如果上传数据到服务器或者修改服务器上的数据使用post请求

    2、SDWebImage

    用途:用来加载网络图片的第三方库,实现了异步请求数据,并且实现了图片的缓存

    实现原理:在内存和沙盒目录下(library/cache)各缓存一份文件,内存中的文件到一定程度会自动清除,沙盒目录下的文件需要由用户手动清除,首先检测内存(内存中无数据)->检测沙盒目录(无数据)->再发送网络请求获取数据

    3、iOS7.8.9的PCH文件设置的区别

    PCH文件的作用就相当于Swift中的Swift File,写在这里的头文件或者定义的变量可以全局访问到

    a、iOS7中PCH文件默认时创建好的,直接使用就可以

    b、iOS8中PCH文件需要自己创建(iOS-other-pch.file),并且需要设置文件PCH路径(target-Build settings ->"输入prefix" - 找到prefix.Header设置路径)

    c、iOS9中PCH文件的创建以及路径设置和iOS8中一样,但是需要在PCH文件中添加一个标记(#ifndef __OBJC__  #endif)

    4、类方法和实例方法的区别

    a、定义区别:类方法定义时用 static 关键字修饰;

    b、调用:类方法用类型点方法直接调用;实例方法用类型对象点方法调用;

    c、是否能相互调用:

    在类中绝对不能调用实例方法-实例方法必须有对象(实例),然后实例.方法名;

    类方法只能调用类方法,实例方法可以调用实例方法和类方法

    5、tableView的优化

    1.复用问题

    2.尽量避免使用动画

    3.在图片数量多的情况下,使用异步加载,并且做缓存

    4.自定义cell的时候直接绘制drawRect方法(几乎没人用)

    相关文章

      网友评论

          本文标题:iOS面试题集锦

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