JHBlog
iOS文档
GNUstep是GNU计划的项目之一,它将Cocoa的OC库重新开源实现了一遍 源码地址:http://www.gnustep.org/resources/downloads.php 虽然GNUstep不是苹果官方源码,但还是具有一定的参考价值
iOS底层
- 1、一个NSObject对象占用多少内存
- 2、OC对象的分类
- 3、KVO实现原理
- 4、KVC实现原理
- 5、分类
- 6、Block底层解密
- 7、RunLoop实现原理
- 8、RunTime实现原理
- 9、多线程
- 10、内存管理
收集的一些面试题
很多还没有给出答案,以后会慢慢总结的。
- 1、3张图片下载完了之后合并一张图
- 2、设计一个缓存机制(底层数据结构是什么样子的)LRU
- 3、翻转链表
- 4、tableview 重用机制 滑动性能调优方法
- 5、圆角效率问题 离屏渲染
- 6、如何比较两个浮点类型 为什么要这么做
- 7、如何比较两个浮点类型 为什么要这么做
- 8、进程和线程的区别 为什么切换线程代价小
- 9、如何实现进程间的通信
- 10、信号量 管道 共享内存 效率比较
- 11、hppts加密过程详细讲一下
- 12、抓包原理
- 13、如何验证加密过程的证书
- 14、最低公共父结点
- 15、同步异步 串行 并发 区别
- 16、设计题:根据文字长短动态设置cell
- 17、设计题:上面题目再加一个button button 文字内容长短不一
- 18、如何提高上传视频大成功率 设计方案
- 19、加载图片卡顿是为什么 有哪些优化方案
- 20、图片解码时机
- 21、cpu和gpu的区别 离屏渲染
- 22、项目亮点 野指针处理
- 23、内存管理
- 24、异步加载图片原理
- 25、平常调试怎么做的
- 26、网络请求库的封装
- 27、内存管理 解决循环引用又出什么问题
- 28、循环引用出现的常见情况
- 29、timer为什么在子线程中不工作
- 29、散列表实现原理
- 30、iOS内存管理方式
- 31、了解哪些网络协议
- 32、信号量与锁的区别
- 33、手写LRU、股票算法题
- 34、kingsiher图像库的异步加载原理
- 35、多线程面试题
- 36、如何检测项目中的卡顿问题(比如假死)
- 37、一个二叉树逐层打印的算法题
- 38、如果现在做一个新的网络层框架,有哪些需要考量的点
- 39、(算法)找出一个页面中漏出部分面积最大的试图,重合的部分按照最上层的面积算漏出,会有时间复杂度的要求。
- 40、控件的点击事件和添加在上边的手势谁先响应,并说明原因
- 41、谈对于 bitcode 的理解和作用。
- 42、介绍编译的过程和原理
- 43、介绍对于静态库和动态库的理解。
- 44、问了一些 APM 向上的问题
- 45、比较的深入的聊了内存管理的内容,包含引用计数和 weak 修饰的对象的内存管理的过程
- 45、在实际开发中遇到过哪些多线程问题以及如何进行解决的
- 47、对于内存泄漏的了解,以及介绍知道的解决方案
- 48、二叉树翻转
- 49、讲如何将一张内存极大的图片可以像地图一样的加载出来
核心动画
- 1、iOS核心动画高级技巧-1
- 2、iOS核心动画高级技巧-2
- 3、iOS核心动画高级技巧-3
- 4、iOS核心动画高级技巧-4
- 5、iOS核心动画高级技巧-5
- 6、iOS核心动画高级技巧-6
- 7、iOS核心动画高级技巧-7
- 8、iOS核心动画高级技巧-8
- 9、用UIKit和UIView在视图上执行iOS动画
iOS开发课程笔记
他人文章
启动优化
关于Hook Method类的
- Apple 操作系统可执行文件 Mach-O
- 静态插桩的方式来实现Hook Method
- fishhook 原理探究
- 开源 | Objective-C & Swift 最轻量级 Hook 方案
- 静态拦截iOS对象方法调用的简易实现
iOS大杂烩
-
1、LLDB使用
-
2、基本数据类型
-
3、App信息监控
-
4、Crash系列
-
14、浅谈性能优化
-
16、加载大图的优化算法
-
17、App启动时间优化
-
19、页面间跳转的性能优化
-
20、常见耗电量检测方案调研
-
22、写一个好的单例
-
23、事件响应机制
-
26、git使用
-
27、iOS内购
-
29、UIButton
-
30、UIResponder
-
31、UIControl
-
32、UI绘制的原理
-
34、什么是离屏渲染
架构
网络
设计模式研究
常见的设计模式有23种,根据目的,我们可以把模型分为三类:创建型,结构型,行为型
-
1、创建型设计模式:创建型模式与对象的创建有关
-
2、结构型设计模式:结构型模式处理类和对象的组合
-
3、行为型设计模式:行为型设计模式对类或对象怎样交互和怎么分配职责进行描述
创建型
结构型
- 6、Adapter 适配器模式
- 7、Bridge 桥接模式
- 8、Composite 组合模式
- 9、Decorator 装饰者模式
- 10、Facade 外观模式
- 11、Flyweight 享元模式
- 12、Proxy 代理模式
行为型
- 13、Chain of responsibility 责任链模式
- 14、Command 命令模式
- 15、Interpreter 解释器模式
- 16、Iterator 迭代器模式
- 17、Mediator 中介模式
- 18、Memento 备忘录模式
- 19、Observer 观察者模式
- 20、State 状态模式
- 21、Strategy 策略模式
- 22、Template Method 模板方法模式
- 23、Visitor 访问者模式
RxSwift学习历程
基础概念
- 1、Observable - 可被监听的序列
- 2、除了Observable其他的可被监听的序列
- 3、subscribe订阅
- 4、观察者(Observer)
- 5、Subjects介绍
- 6、Schedulers - 调度器
- 7、Error Handling 错误处理
- 8、操作符
- 8.1、变换操作符
- 8.2、过滤操作符
- 8.3、结合操作
- 9、Driver
UI操作
代码风格
工具
这里记载了一些常用的工具,有许多都是转载的别人的博客,里面我有写转载地址,如果有作者感觉不适,请联系我,我会及时停止转载的
- 1、如何优雅地使用Sublime Text
- 2、官方 Swift 风格指南
- 3、iOS 程序员效率提升利器之 AppleScript
- 4、NPM 使用介绍
- 5、APP Store官方网站
- 6、如何在mac上创建txt文档
- 7、Mac清理内存
- 8、一个比较详细的抓包工具
- 9、正则表达式
- 10、免费API