iOS学习提升资源汇总

程序员必备基础知识点(活到老学到老的知识点)

算法和数据结构

  1. LeetCode
  2. 算法导论
  3. 剑指 offer

计算机系统原理

  1. 深入理解计算机系统

操作系统原理和基础

网络方面

  1. 图解HTTP我的GitHub上书籍地址
  2. 图解TCP/IP

C语言和汇编语言

  1. C语言程序设计

iOS基础的知识点

内存管理方面

(ARC、MRC、autorelease、autoreleasepool)

  1. 内存管理官方文档
  2. 黑幕背后的Autorelease

Runtime方面

  1. runtime官方文档
  2. 消息传递机制、消息转发流程、方法缓存查找过程原理及其应用可以查看这几篇文章:Objective-C Runtime 杨萧玉对象关联-NSHipsterMethodSwizzling-NSHipster
  3. Objective-C Runtime 1小时入门教程
  4. KVO实现原理Category的本质
  5. Weak实现原理:runtime维护了一个weak表,用于存储指向某个对象的所有weak指针。weak表其实是一个hash(哈希)表,key是所指对象的地址,Value是weak指针的地址(这个地址的值是所指对象指针的地址)数组。 runtime 如何实现 weak 属性
  6. Category实现原理-美团技术团队
  7. Runtime应用:Method Swizzling处理crash如数组越界、字典和模型的自动转换如MJExtension、自动归档和自动解档、万能跳转界面方法、JSPatch
  8. Objective-C Runtime源码

Runloop方面

  1. runloop官方文档
  2. 深入理解RunLoop

Block方面

  1. block官方文档
  2. objc 中的 block

多线程方面

  1. 关于iOS多线程,你看我就够了

iOS架构相关

  1. iOS架构补完计划--浅谈MVC及其衍生架构模式
  2. iOS架构模式——MV(X)的理解与实战
  3. iOS应用架构谈 view层的组织和调用方案

其他

  1. HTTPS通信过程
  2. UITableView的优化手段方法(iOS 保持界面流畅的技巧
  3. SDWebImage源码分析
  4. 事件传递以及响应链(史上最详细的iOS之事件的传递和响应机制
  5. 图片的解压缩
  6. iOS 启动时间优化:iOS App 启动性能优化 腾讯Bugly
    iOS Dynamic Framework 对App启动时间影响实测 没故事的卓同学
    优化 App 的启动时间 杨萧玉WWDC 2016 Session 406 Optimizing App Startup Time一次立竿见影的启动时间优化
    iOS启动速度优化
    iOS应用启动性能优化资料汇总
    支付宝客户端架构解析:iOS 客户端启动性能优化初探
    iOS启动时间优化如何精确度量 iOS App 的启动时间
  7. 静态库和动态库(iOS 开发中的『库1』iOS 开发中的『库2』iOS 动态库改造
  8. load 方法全程跟踪你真的了解 load 方法么?

进阶的知识点

APM方面(内存泄漏检测、crash监控、卡顿监控以及底层的实现原理等等、

  1. iOS APP 性能检测-腾讯Bugly

  2. ios爆内存问题解决方案-OOMDetector组件-腾讯Bugly

  3. iOS微信内存监控 -腾讯WeTest

  4. iOS崩溃堆栈符号化,定位问题分分钟搞定-腾讯Bugly

  5. 了解和分析iOS Crash-腾讯WeTest浅谈iOS Crash-向晨宇iOS异常捕获iOS应用崩溃日志分析漫谈iOS Crash收集框架-念茜分析iOS Crash文件:符号化iOS Crash文件的3种方法iOS中使用PLCrashReporter收集CrashiOS异常捕获如何定位Obj-C野指针随机Crash(一):先提高野指针Crash率如何定位Obj-C野指针随机Crash(二):让非必现Crash变成必现如何定位Obj-C野指针随机Crash(三):如何让Crash自报家门汇编语言入门教程

  6. 低于0.01%的极致Crash率是怎么做到的?-腾讯WeTest(里面有讲ARM64指令集的寄存器知识)

  7. 组件化方:蘑菇街 App 的组件化之路iOS应用架构谈 组件化方案在现有工程中实施基于CTMediator的组件化方案iOS 组件化方案探索iOS 组件化--路由设计思路分析滴滴的组件化实践与优化滴滴出行跨地域 iOS 构建优化与持续集成

  8. 持续化集成(Jenkins+fastlane)

  9. JSPatch成长之路滴滴 iOS 动态化方案 DynamicCocoa 的诞生与起航OCS ——史上最疯狂的 iOS 动态化方案

其他iOS学习资源

  1. iOS学习笔记
  2. 禅与 Objective-C 编程艺术
  3. iOS 开发面试问题
  4. iOS 技能图谱
  5. 招聘一个靠谱的 iOS
  6. 小专栏的iOS 面试指南 需要订阅
  7. iOS程序员简历模板
  8. 如何写面向互联网公司的求职简历

高效开发资源

  1. 查找项目工程中未使用的类-fui
  2. awesome-ios
  3. app包瘦身(基于clang插件的一种iOS包大小瘦身方案iOS瘦身之删除无用的mach-O文件LSUnusedResourcesFengNiaoiOS APP分析无用代码相同或相似代码检测iOS微信安装包瘦身

自我介绍

  1. 这篇文章挺不错的,重点是要简洁大方,突出自身的优点面试的时候,如何自我介绍?
  2. 10大经典面试题回答技巧

优秀博客推荐

努力向这些大神学习

  1. 美团点评技术团队
  2. WeRead团队博客
  3. 雷纯锋的技术博客
  4. ObjC 中国
  5. NSHipster
  6. limboy
  7. bang's 陈振焯博客
  8. ibireme
  9. sunnyxx
  10. 唐巧的博客
  11. 杨萧玉博客
  12. 戴铭的博客戴铭Github
  13. casatwy
  14. 向晨宇的技术博客
  15. 程序媛念茜

推荐阅读更多精彩内容