暂时不分顺序,自己学习一年多来想的可能有误😆,以后每一部分都会记录
具体转接
- 算法+数据结构、计算机网络、操作系统、(c++)、JavaScript、Ruby、Linux、Objective—C、Swift
- Runtime、RunLoop
- Http、Tcp、Udp、Socket
- 多线程
- 组件化开发(中间件重要MGJRouter、)、MVVM、MVC、链式编程、函数响应式编程(RAC)、hook、面向协议编程、封装、依赖注入、aop(Aspects)
- 生命周期 顺逆传值 ?xib、StoryBoard、布局相关
- 常用框架的底层实现原理
- Crash搜集、符号化、DSYM
- QuartzCore(CoreAnimation)、CoreGraphics(Quartz2D)、UIDynamic、pop、事件响应
- 音视频相关:AVFoundation、GUPImage、VideoToolBox、AudioToolBox、推流与拉流、CDN分发、IJKPlayer、KXMovie、IM、弹幕
- Instruments、其他优化相关、OHHTTPStubs
- 蒲公英 Jenkins fastlane 持续集成、单元测试
- 越狱开发、反编译、编译原理
- 持久化:SQLite、
- TouchID、指纹、Widge、远程控制
- 正则(NSRegularExpression、NSTextCheckingResult、NSPredicate、NSString)
- 本地+远程推送
- ML+AR+NSL
- Git、SVN
- 加密
- 上架流程、马甲包
- Swift与OC、C++与OC混合开发,js交互、Hyrb、桥接、cookie
- app间的几种交互方式
- 二维码
- IAD
- KeyChain、App Groups
- Map
- iPad
- iCloud
- 支付
- 第三方登录
- 不同版本适配
- 通讯录、邮件
- 创建一个Framework 项目 打包封装SDK(app Thinning、封装动态库.dylib、封装静态库.a、封装.framework、封装.bundle)
- 封装sdk对第三方库是怎么处理比较好 假如用了sdweb和afn,那么就要将这两个单独做成lib,然后外部依赖了
- 运动 HealthKit
- 内核相关
- 编程思想
- 埋点
- MRC
- 预编译指令
- 常用命令行 调试技巧
- 常用SQL语句
- 常用Linux指令
- YYAsyncLayer 异步绘制
- 微信小程序开发,我看知乎分享之后变成了微信小程序