除了MVC模式 你还熟悉什么设计模式
代理模式:当一个类的某些功能须要由别的类实现,可是又不肯定具体是哪一个类实现的
单例模式:当确保程序运行期间,某个类只有一份实例,用于进行资源共享
工厂模式:工厂模式建立的实例,多与proxy模式配合,建立不可替代的类
观察者模式:通常为model层,对controller和view层进行通知,不关心谁接收,只负责发布消息
策略模式:定义算法,封装起来,使他们之间能够相互替换
进程和线程之间的区别和联系?谈谈多线程
(1)一个进程能够有多个线程 一个线程只能属于一个进程
(2)资源分配给进程,统一进程的全部线程共享该进程的全部资源
(3)处理机制分给线程,即正在处理机上运行的是线程
在你开发的项目中,用到了哪些数据存储方式,ios中常见的方式有哪些?
(1)归档(2)NSUserDefault(3)write写入,永久保存在磁盘中(4)sqlite数据库(5)coredata数据库管理工具
arc的程序出现内存泄露怎么办?
用ARC的只是编译器帮你管理什么时候去release retain 不用ARC 就须要你本身去管理,说到底就是谁去管理的问题,若是实在找不到问题,建议你找到泄露的对象,将其值赋值为nil ,由于在ARC中,一旦对象没有指针指向,就会立刻被释放
简述ios应用开发流程
(1)产品经理作需求调研,肯定产品需求,编写需求文档
(2)产品人员完成产品原型
(3)产品经理召开会议(产品,UI,开发,测试,服务器)
(4)服务器与客户端成员一块儿定制接口文档
(5)项目经理制定开发进度,分配任务,预算开发周期
(6)移动客户端开发人员根据UI界面和需求文档,开始编码,开发模块上的功能
(7)开发者提交给测试
(8)测试部分完毕 提交给产品经理 验收产品
(9)提交app storeios
说一说你经常使用的类库
算法
CoreData.framework 数据库
CoreLocation.framework 定位
MapKit.framework 地图
CoreAnimation.framework 动画
AddressBook.framework 通信录
AVFoundation.framework 流媒体
CFNetwork.framework 网络通讯(套接字)
Coretelephoy.framework (核心通信框)打电话
CoreText.framework 图文混排
GameKit.framework 实现蓝牙的相互通讯 既是服务端又是客户端
HealthKit.framework 分离数据收集,数据处理和社会化(苹果主推健康数据chu处理)
Security.framework 网络安全框架(加密 秘钥)
Social.framework 社会化分享(新浪 微信 QQ)
OpenAL.framework 播放音频流
MessageUI.framework 发短信 发邮件
NewsstandKit.framework 后台下载 ,推送
简述KVC/KVO之间的区别有什么关系
KVC是一种经过字符串去简介操做对象属性的一种机制
假如咱们去访问一个对象的属性 person.age 也能够用KVC的方式[person valueForKey@“age”];
KVO就是在一个语言框架层面实现的观察者模式,经过KVC的方式去修改属性石,会主动通知观察者
ios中frame和bounds的区别
frame和boudns都是UIview的两个属性(property)
frame指的是 该view在父view坐标系中的位置和大小(参照的是父视图坐标系)
bounds指的是 该view在自己坐标系中,位置和大小(参照物是自己坐标系)sql