1. iOS动态类型和动态绑定简述
NSObject * 也就是id类型---动态类型
动态绑定: 先明白引用多态---父类指针可以指向子类对象
方法多态: 方法名相同,方法的实现却不同
动态绑定就是当程序运行的时候,才去查找对象的类型.
一种是静态载入,一种动态载入
2. 简述你对UIView、UIWindow和CALayer的理解
UIWindow 就是程序的窗口,一个程序可以有多个窗口,但是屏幕大小限定的在同一时间内,只能显示一个窗口,窗口上面显示的UIView,可以展示的数据,所有人们能够看到文字图片音频,视频,都是通过View来展示的,而CALayer则是用来表示图层的渲染.动画切换.
3.TCP/IP Socket
TCP协议是面向连接的,就是三次握手建立连接-----http 协议,短连接,当握手完毕,开始传送数据,数据传输完毕之后.,断开连接
UDP协议 是面向非连接的,一个数据发送过去之后就不管了.这里只负责发送,至于是否能够接受得到,不重要,效率高,但是不太安全.
Socket 是对TCP/IP协议的封装,在其中包含两个重要东西,第一个是IP地址,也就是我们口中的服务器地址,第二种则是端口号,这个东西决定着在你请求服务器的时候,服务器会给你提供哪一种服务.
服务器随时都保持着监听,可以这样理解,a是服务器,b是客户端
a随时保持监听状态,当b有请求的时候,向a发送请求,a的监听收到,返回消息,确认链接.并且查看端口号,提供某种服务,返回.
4.类与类之间的通讯,以及优缺点
类与类的通讯 ----发消息,消息发送机制
通知:一对多
代理:条理很清晰
block:代码少,实现简单,但使用多的话条理不清晰
通过字符串访问的对象的属性
4.可以在后台运行的程序
音频 location voip require blackfroud mothele (字段)导航,定位,网络电话
5.coreData 是对数据库的封装,其实就是面向对象的,
NSManagedObjectContext被管理的对象上下文与增删改查有关 蛋糕出炉后的位置
NSPersistentStoreCoordinator持久化存储助理 面包师
NSPertentStore持久化存储 取材料的人
NSMangedObjectModel所有实体的描述 蛋糕模型
NSMangedObject
File 原材料
6.关于性能优化
个人感觉用户最不忍受的就是UI卡顿现象
封装代码 规范的代码方便管理内存
图片的异步加载,缓存使用SD(用得最多)
处理内存警告
懒加载
UIImage
推送通知(省电)