iOS面试题整理

上海面试题1:

1.设计模式有哪些?

2.异步下载几张图片然后合并为一张显示,如何实现?

3.RunLoop和多线程的关系

4.介绍下你做iOS的经历

5.你的app是怎么架构开发的

你的项目主演功能模块是怎么实现的?

6.你之前公司老板叫啥?

公司有多少人?(从你之前的公司里选)


杭州面试题1:

1.项目开发中遇到的问题,是怎么解决的?

2.项目的开发周期,你是处于什么样的角色?

3.如何改变在线程内部的变量?

--通过__block;

对于__block有什么理解?

为什么可以这样改?

4.在哪里用到了copy(多说几个)?

5.你的职业规划是什么?

6.用什么来管理代码?服务器是自己公司的吗?

7.runtime有什么作用?syshsize成员变量什么作用?

8.介绍下项目的流程以及细节?

9.3个月周期的项目是怎么分配时间?


杭州面试题2:

1.什么是GCD?

2.__block在哪里应用?

为什么这样使用?

3.在哪里用copy?

和strong有什么区别?

4.介绍下runtime?

5.OC里面的方法调用时怎么实现的?

用了什么方法?

如何找到这个方法?

6.如何打包APP?


杭州面试题3:

1.GCD和NSOperstion

2.内存管理ARC和MRC的理解?

有什么注意事项?

3.图片如何缓存?

4.app框架是如何搭建的?

5.runtime平时有没有用过?

用来做什么的?

6.分类怎么添加属性?

用什么方法?

7.有没有用过storyboard?

8.swift中?和!代表什么?

9.怎么实现oc和swift混合编译?


杭州面试题4:

1.你们项目的开发流程?

2.你们项目使用什么框架?



上海面试题2:

1.项目中哪些地方用了数据存储?

2.NSOperation和GCD的区别?

3.三个任务,如何实现执行完前面2个任务再执行第三个?

4.语音发送怎么实现?

5.XMPP音频是怎么处理的?


上海面试题3:

1.代理通知block和kvo的区别?

2.runtime运行时原理和应用场景?

3.多线程的几种实现方式?

4.数据定义的类型

5.控制器的生命周期?

6.storyboard 的实现原理?


上海面试题4:

1.runTime运用的地方?

2.GCD和NSOperation的应用场景?

NSOperation可以控制最大并发数,可以暂停等,GCD可不可以,怎么实现

3.Masonry的编程思想是什么?链式编程

同样是点语法,Masonry中的点和Swift中的点有什么异同?

4.响应者链条中事件传递的过程?

5.在Swift中发送网络请求的时候,如果服务器返回的JSON数据为空怎么处理?

6.Swift除了语法和OC有差别之外,在编程思想上有什么区别?

7.那些情况会产生循环引用,怎么解决?

block循环引用中,如果用weakSelf会不会造成对象提前释放?

8.下拉刷新的实现原理?

9.sqlite存储的数据类型有哪些?

怎么去管理和使用?

10.KVC、KVO、代理、通知、Block你认为的应用场景?

有哪里区别?

11.git和svn有哪些区别?


上海面试题5:

1.App的声明周期?

2.UIView和CAlayer的区别?

3.事件的响应和派发?

4.KVO和KVC的区别?

5.数据持久化类型?

6.Runtime为什么可以动态获取属性方法?

7.做过什么动画?

8.GCD怎么用?

NSOperation和GCD的延迟处理有什么区别?

9.网络请求包的流程?

10.如何实现网络优化?


上海面试题6:

1.简单介绍下http协议

2.死锁产生的原因和避免

3.客户端和服务器的交互方法

4.FMDB是否能封装成单?

单利在高并发的时候对性能是否有影响?

5.父类实现和未实现的子类怎么实现深拷贝?

6.如何让一个函数在主线程中执行,列举开发中常用方法


上海面试题7:

1.block作为属性要注意什么?

2.block与代理的区别是什么?

3.YYModel的底层是什么?

4.runtime是什么?

平时应用在哪里?

5.单利的弊端是什么?

6.定时器有哪几种?


上海面试题8:

1.用过coredata吗?

2.内存管理

3.屏幕适配

4.第三方框架用过哪些?

5.数据存储方式?

6.数据库如何存存储


上海面试题9:

1.运行时是什么?

2.static的作用是什么?

3.SDWebImage的实现原理?

4.单例是什么?

5.同步锁是什么?


上海面试题10:

1.分类和继承的区别?

2.CoreData怎么使用?

3.MVVM中怎么封装?

4.用什么来控制请求回的数据?答block

5.请求的数据在哪里处理?答在ViewModel中处理的

6.如何做联动效果?什么思路?

7.无限轮播的scrollview和nstimer怎么实现的?

8.又没用用ASI?

9.做过哪些复杂动画?

10.swift的代码敲过么?

11.支付会哪些?

12.地图做过么?

13.代码打包用什么?

14.之前开发团队对少人?

15.你负责哪些模块?

16.项目中上传的视频用的是AFN哪个类?

17.又没用写过基类?

18.有没有给某个类添加方法或者属性?答runtime还有分类

你可能感兴趣的:(iOS面试题整理)