记录学习iOS开发的知识和实践demo
- 掌握这些GitHub搜索技巧,你的开发效率将翻倍 https://github.com/shenchunxing/better-ios-developer/wiki/掌握这些GitHub搜索技巧,你的开发效率将翻倍!
- 读《Objective%E2%80%90C高级编程:iOS与OS-X多线程和内存管理》的记录总结 https://github.com/shenchunxing/better-ios-developer/wiki/读《Objective%E2%80%90C高级编程:iOS与OS-X多线程和内存管理》的记录总结
- 读《EffectiveObjective%E2%80%90C》的记录总结 https://github.com/shenchunxing/better-ios-developer/wiki/读《EffectiveObjective%E2%80%90C》的记录总结
- Swift提高代码质量的一些Tips https://github.com/shenchunxing/better-ios-developer/wiki/Swift提高代码质量的一些Tips
- 新增iOS组件化过程中的几种路由方式 https://github.com/shenchunxing/better-ios-developer/wiki/iOS组件化过程中的几种路由方式
- 新增关于卡顿优化的一些思路 https://github.com/shenchunxing/better-ios-developer/wiki/关于卡顿优化的一些思路
- 新增深入了解苹果的动态库链接器dyld https://github.com/shenchunxing/better-ios-developer/wiki/深入了解苹果的动态库链接器dyld
- 新增YTKNetwork是基于AFNetworking和命令模式的网络框架 https://github.com/shenchunxing/better-ios-developer/wiki/YTKNetwork是基于AFNetworking和命令模式的网络框架
- 新增VVeboTableView:异步绘制tableViewCell提高性能的一种方案 https://github.com/shenchunxing/better-ios-developer/wiki/VVeboTableView:异步绘制tableViewCell提高性能的一种方案
- 新增使用libextobjc框架的@onExit关键字来实现OC的defer https://github.com/shenchunxing/better-ios-developer/wiki/使用libextobjc框架的@onExit关键字来实现OC的defer
- 新增iOS-Crash防护 https://github.com/shenchunxing/better-ios-developer/wiki/iOS-Crash防护
- 新增耗电检测 https://github.com/shenchunxing/better-ios-developer/wiki/耗电检测
- 新增不要滥用多线程 https://github.com/shenchunxing/better-ios-developer/wiki/不要滥用多线程
- 新增App包体积大小的优化方案 https://github.com/shenchunxing/better-ios-developer/wiki/App包体积大小的优化方案
- 新增APP内存使用达到上限被强杀(OOM),怎么查找原因 https://github.com/shenchunxing/better-ios-developer/wiki/APP内存使用达到上限被强杀(OOM),怎么查找原因
- 新增App通过注入动态库的方式实现热重载 https://github.com/shenchunxing/better-ios-developer/wiki/App通过注入动态库的方式实现热重载
- 新增iOS12开始Auto Layout目前已经没有性能问题了 https://github.com/shenchunxing/better-ios-developer/wiki/iOS12开始Auto Layout目前已经没有性能问题了
- 新增JavaScriptCore可以做什么 https://github.com/shenchunxing/better-ios-developer/wiki/JavaScriptCore可以做什么
- 新增LLVM编译器 https://github.com/shenchunxing/better-ios-developer/wiki/LLVM编译器
- 新增Mach‐O文件是怎样被加载到内存中的 https://github.com/shenchunxing/better-ios-developer/wiki/Mach‐O文件是怎样被加载到内存中的
- 新增React Native、Flutter跨端方案的选择 https://github.com/shenchunxing/better-ios-developer/wiki/React Native、Flutter跨端方案的选择
- 新增使用Aspects减少Runtime Method Swizzling使用的风险 https://github.com/shenchunxing/better-ios-developer/wiki/使用Aspects减少Runtime Method Swizzling使用的风险
- 新增使用好用的GUI框架来提高界面性能 https://github.com/shenchunxing/better-ios-developer/wiki/使用好用的GUI框架来提高界面性能
- 新增使用静态分析工具查找App内部潜在的代码问题 https://github.com/shenchunxing/better-ios-developer/wiki/使用静态分析工具查找App内部潜在的代码问题
- 新增利用苹果自带的工具和代码就能实现监控CPU和内存 https://github.com/shenchunxing/better-ios-developer/wiki/利用苹果自带的工具和代码就能实现监控CPU和内存
- 新增启动速度怎么做优化与监控 https://github.com/shenchunxing/better-ios-developer/wiki/启动速度怎么做优化与监控
- 新增如何全面监控iOS的崩溃 https://github.com/shenchunxing/better-ios-developer/wiki/如何全面监控iOS的崩溃
- 新增如何利用RunLoop原理去监控卡顿 https://github.com/shenchunxing/better-ios-developer/wiki/如何利用-RunLoop-原理去监控卡顿
- 新增无侵入的埋点方案 https://github.com/shenchunxing/better-ios-developer/wiki/无侵入的埋点方案
- 新增链接器:符号是怎么绑定到地址上的 https://github.com/shenchunxing/better-ios-developer/wiki/链接器:符号是怎么绑定到地址上的
- OC对象
- Block
- Runtime
- Runloop
- 多线程
- 内存管理
- Swift简介、Swift编译原理、基础语法
- 函数、枚举、可选项、集合
- 闭包
- 结构体、类
- 属性、inout、方法、下标
- 继承、多态、初始化
- 可选链、协议、错误处理、泛型
- Strin与Array的底层分析、高级运算符、扩展Extension
- 访问控制、内存管理、指针
- 字面量、模式匹配
- 从OC到Swift、函数式编程
- 面向协议编程、响应式编程、Swift源码分析
- OC语法之OC对象本质
- OC语法之Notification
- OC语法之KVC
- OC语法之KVO
- OC语法之Category
- Block之内存管理
- Block之循环引用
- 深入理解OC/C++闭包
- Runtime之Runtime的原理
- Runtime之消息发送机制
- Runtime之Runtime的应用
- Runloop原理和使用
- 多线程之GCD
- 多线程之线程保活
- 多线程之线程同步方案
- @synchronized原理
- 内存管理之内存布局
- 内存管理之属性和成员变量的修饰符
- 内存管理之TaggedPointer
- 内存管理之定时器的循环引用
- 内存管理之3种内存管理机制
- iOS各种Crash防护
- 抖音品质建设 - iOS启动优化《原理篇》
- 抖音品质建设 - iOS启动优化《实战篇》
- 性能优化之启动优化
- 性能优化之卡顿优化
- dyld加载过程
- 二进制重排
- 今日头条品质优化 - 图文详情页秒开实践
- iOS性能优化实践:头条抖音如何实现OOM崩溃率下降50%+
- 抖音品质建设 - iOS 安装包大小优化实践篇
- DoKit-滴滴出行的开发工具