招人已了,招人心得跟47道面试题加答案放出来

人才济济的iOS开发者,你凭什么脱颖而出?

与岗位要求相去甚远,如何挑战极限?

想去心怡公司,如何马到成功?

那么,你的绝招是什么呢?

在这个iOS岗位供不应求的市场,对iOS开发者对要求日益增长,小编分享一下最近对招人心得,放出47道面试题+答案,供广大iOS开发者参考

底层:
1、runloop和线程有什么关系?

2、你是否接触过OC中的反射机制?简单聊一下概念和使用

3、objc中的类方法和实例方法有什么本质区别和联系?

4、runloop的mode作用是什么?

5、1runloop是什么/runloop的概念?

6、id与instanncetype?

7、什么是GDB和LLDB?

8、模拟栈操作?

9、你是否接触过OC中的反射机制?简单聊一下概念和使用?

10、ldb(gdb)常用的调试命令?

11、block一般用那个关键字修饰,为什么? 哪些情况会引起block循环引用,怎么解决

12、为什么很多内置的类,如TableViewController的delegate的属性是assign不是retain?

13、ViewController的didReceiveMemoryWarning是在什么时候调用的?默认的操作是什么?

14、使用block时什么情况会发生引用循环,如何解决?

15、IB中User Defined Runtime Attributes如何使用?

基础:
16、weak和unowned?

17、什么是GDB和LLDB?

18、static?关键字的作用:

19、Objective-C如何对内存管理的,说说你的看法和解决方法??

20、内存管理的几条原则时什么?按照默认法则.那些关键字生成的对象需要手动释放?在和property结合的时候怎样有效的避免内存泄露?

21、NSOperation queue?

22、什么是延迟加载??

23、BAD_ACCESS在什么情况下出现?

24、0x8badf00d表示是什么?

25、GCD与NSOperation这两者有什么区别?

26、单例的优弊是什么?

27、RunLoop和线程的关系: 怎么让子线程执行完成任务后不销毁

28、nonatomic和atomic对比? 说说你对他们的理解。?

29、两个对象之间相互通信 有哪些通信方式

30、os的数据存储有哪些方式,sqlite数据库是否支持多个线程写入数据,如果不支持怎么解决?

31、一个函数执行10次,有二次结果不正确 八次正确,你应? 该怎么检查该bug。

32、1-1000 个数字,顺序打乱,又丢失了三个数字,找出丢失的三个数字。

33、Object-C有私有方法吗?私有变量呢?

34、堆和栈的区别?

35、能否向编译后得到的类中增加实例变量?能否向运行时创建的类中添加实例变量?为什么?

36、如何用GCD同步若干个异步调用?(如根据若干个url异步加载多张图片,然后在都下载完成后合成一张整图)

37、dispatch_barrier_async的作用是什么?

框架:
38、第三方内存泄漏检测工具:MLeaksFinder原理分析?

39、逃逸闭包

40、cocoa touch框架?

网络:
41、HTTP协议详解?

42、谈谈你对HTTP 、TCP、 IP、socket 协议的理解

测试:
43、单元测试那些事!?

44、为什么使用这个单元测试呢?它给我们带来了什么好处呢?

45、单元测试的重要性:?

swift:
46、swift闭包

47、swift中高阶函数map用法

需要答案阅读原文可以免费获取面试题整理文档+答案;

原文地址:https://www.jianshu.com/u/ff8447b775d9

分享目的是为了寻找志同道合的朋友一起创建一个我们自己的程序员圈子,有意者请联系作者,让我们一起搭建一个属于我们iOS开发者的私有圈子,内推、共享资源。

部分答案截图:

文档

                                                    目录

                                                部分答案

                                                部分答案

          总页数

原文地址:http://blog.51cto.com/13518796/2116192

时间: 2024-11-09 16:21:05

招人已了,招人心得跟47道面试题加答案放出来的相关文章

招人已了,招人心得跟 47 道面试题加答案放出来

人才济济的 iOS 开发者,你凭什么脱颖而出? 与岗位要求相去甚远,如何挑战极限? 想去心怡公司,如何马到成功? 那么,你的绝招是什么呢? 在这个 iOS 岗位供不应求的市场,对 iOS 开发者对要求日益增长,小编分享一下最近对招人心得,放出 47 道面试题+答案,供广大 iOS 开发者参考 底层: 1.runloop 和线程有什么关系? 2.你是否接触过 OC 中的反射机制?简单聊一下概念和使用 3.objc 中的类方法和实例方法有什么本质区别和联系? 4.runloop 的 mode 作用是

经典71道Android试题及答案

本文为开发者奉献了70道经典Android面试题加答案--重要知识点几乎都涉及到了,你还等啥,赶紧收藏吧!! 1. 下列哪些语句关于内存回收的说明是正确的? (b) A. 程序员必须创建一个线程来释放内存 B. 内存回收程序负责释放无用内存 C. 内存回收程序允许程序员直接释放内存 D. 内存回收程序可以在指定的时间释放内存对象 2. 下面异常是属于Runtime Exception 的是(abcd)(多选) A.ArithmeticException B.IllegalArgumentExce

为Java程序员金三银四精心挑选的五十道面试题与答案

1.面向对象的特征有哪些方面? [基础] 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象包括两个方面,一是过程抽象,二是数据抽象. 2)继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法.对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类继承了原始类的特性,新类称为原始类的派生类(子类),

208道面试题,答案

---恢复内容开始--- 一.Java 基础 1.JDK 和 JRE 有什么区别? 答:JRE是java运行时环境,包含了java虚拟机,java基础类库.是使用java语言编写的程序运行所需要的软件环境,是提供给想运行java程序的用户使用的. JDK是java开发工具包,是程序员使用java语言编写java程序所需的开发工具包,是提供给程序员使用的 2.== 和 equals 的区别是什么? 答:==是比较两个对象的地址,equals是比较连个对象的内容 3.两个对象的 hashCode()

MySQL45道面试题及答案

create database school;use school; #学生表create table `Student`( `Sno` varchar(20) not null COMMENT '人名', `Sname` varchar(20) not null COMMENT '姓名', `Ssex` varchar(20) not null COMMENT '性别', `Sbirthday` datetime COMMENT '出生日期', `Class` varchar(20) COMM

Apache Derby Network Server - 10.2.2.0 - (485682) 已启动并且已准备好 2015-04-03 00:55:47.102 GMT 时在端口 1527 上接

Apache Derby Network Server - 10.2.2.0 - (485682) 已启动并且已准备好 2015-04-03 00:55:47.102 GMT 时在端口 1527 上接受连接 昨天还用的好好的tomcat,今天启动tomcat,控制台只出现了这个信息 Apache Derby Network Server - 10.2.2.0 - (485682) 已启动并且已准备好 2015-04-03 00:55:47.102 GMT 时在端口 1527 上接受连接 找了半天

数据挖掘150道笔试题

数据挖掘150道笔试题 单选题 1. 某超市研究销售纪录数据后发现,买啤酒的人很大概率也会购买尿布,这种属于数据挖掘的哪类问题?(A) A. 关联规则发现 B. 聚类 C. 分类 D. 自然语言处理 2. 以下两种描述分别对应哪两种对分类算法的评价标准? (A) (a)警察抓小偷,描述警察抓的人中有多少个是小偷的标准. (b)描述有多少比例的小偷给警察抓了的标准. A. Precision, Recall B. Recall, Precision C. Precision, ROC D. Rec

面试题收集-java面试题及答案(基础题122道,代码题19道)

JAVA相关基础知识1.面向对象的特征有哪些方面?1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象包括两个方面,一是过程抽象,二是数据抽象.2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法.对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类).派

(转)Android 50道面试题总结(大家看看吧)

1. 方法重载与覆盖的区别?(Overload与Override的区别)2. String 和StringBuffer的区别3. 字符串“abcde”通过写一个函数不让调用第三方的字符串,实现一个字符串倒序,比如字符串“abcde”变成“edcba”.4. 抽象类与接口的区别(abstract与interface的区别5. 集合的实现类与区别?6. 线程有几种状态,分别是哪些?(调用run()和调用start()的区别7. 线程的实现方式8. sleep() 与wait()的区别9. 线程中wa