私下和很多朋友交流过这个话题,大部分求职者认为,我能做基本的 iOS 开发工作,就达到公司的要求了,殊不知公司招聘员工,更希望的是这个人能够在关键时候能够发挥一般人做不到的能力。 这篇文章是来自微信读书的 bang ,我完全同意他的观点。除了他的这些面试方法外,我还认为做比说更重要,所以我更喜欢在面试的时候,拿出一张白纸,让求职者写一段富有逻辑性的代码,看看他的思维是否严谨,对于一些常见的数据结 ...
私下和很多朋友交流过这个话题,大部分求职者认为,我能做基本的 iOS 开发工作,就达到公司的要求了,殊不知公司招聘员工,更希望的是这个人能够在关键时候能够发挥一般人做不到的能力。 这篇文章是来自微信读书的 bang ,我完全同意他的观点。除了他的这些面试方法外,我还认为做比说更重要,所以我更喜欢在面试的时候,拿出一张白纸,让求职者写一段富有逻辑性的代码,看看他的思维是否严谨,对于一些常见的数据结 ...
从一些问题开始 什么是 AutoreleasePool ? 说明一下 NSAutoreleasePool 具体机制? ARC 时代和 MRC 时代的 AutoreleasePool 机制有什么区别? AutoreleasePool 的实现机制? AutoreleasePool 和 NSRunloop 有什么关系? `AutoreleasePool ...
Clang 编译器提供了 OC 自动合成属性的功能。如果一个属性没有被声明为 @dynamic 或者开发者没有自定制它的 getter 或者 setter 方法实现。那 Clang 会自动为你合成 getter 和 setter 方法的实现同时生成对应的成员变量,检查 Clang 编译器是否支持自动合成使用`_hasfeature(objcdefaultsynt ...
@property 和 attribute 的中文翻译都是属性,所以本文就只用英文做区分了。property 的不同 attribute 大致包含下面这些 strong //default weak copy assign //default unsafe_unretained atomic & nonatomic //default atom ...
@property 的本质是什么? @property 和运行时有什么关系? @property 一个 demo property 的本质是什么 @property 的本质就是成员变量加 getter 和 setter 方法。getter 和 setter 方法是编译器自动为我们生成的。我们也可以尝试去复写 getter 和 `se ...
访问系统的一些资源的时候,不可避免的会遇到一些错误,我们需要告诉用户或者提醒我们自己遇到什么问题了,方便定位解决。比如移除指定路径文件或者目录的时候,可能文件不存在或者路径有问题等等,我们需要知道究竟为什么不能成功移除,这时候错误信息就很重要了,看下系统是怎么设计这类 API 的。`- (BOOL)removeItemAtPath:(NSString )path error:(NSError ...
先提问几个问题 什么是 Bonjour? Bonjour 提供了哪些服务? Bonjour 的工作机制是什么样子的? Bonjour 实践 Bonjour 异常分析 什么是 Bonjour Bonjour 被认为是 0 网络配置,自动发现 PC,普通设备和 IP 网络服务的协议。Bonjour 使用工业标准的 IP 协议,允许一台设备在不需要输入对方 IP ...
GCD 为多核上的并行程序执行上的提供了全面支持。GCD 的出现就是系统帮助开发者管理了一些线程方面的工作让开发者将重心放入自己的业务。减轻了开发者的负担,同时也保证了并行执行的高效。