一个合格(优秀)的iOS都应该阅读这些文章

512 阅读8分钟

前言

入行也七年时间了,最近在准备面试,从八股文到网络再到计算机基础,算法整体都撸了一遍。之前也在其他平台写了几篇流水账,就不公布出来了,把最近一两年看过的一些好文章贴出来,供大家学习使用,希望可以有同行者一起学习进步,早日拿下大厂offer!!!

个人好文收藏

个人真知灼见:古人说行万里路,读万卷书。吾以为,代码需要多写多想多看多分享,方能更上一层楼

iOS基础-八股文

逻辑教育总结 iOS

理解 iOS 的内存管理

iOS内存管理的那些事儿-原理及实现

iOS 底层解析weak的实现原理(包含weak对象的初始化,引用,释放的分析)

关于block

关于weak

iOS****多线程:『GCD』详尽总结

iOS多线程:NSOperation,NSOperationQueue详尽总结

iOS****内存优化

iOS Memory 内存详解 ( 长文 )

深入解析iOS内存 iOS Memory Deep

关于tagged pointer

iOS - 自动释放池

iOS - 聊聊 autorelease 和 @autoreleasepool

iOS dyld

iOS内存abort(Jetsam)** **原理探究

iOS watchdog (** 看门狗机制 **)

笔记****-集合NSSet** **、字典NSDictionary的底层实现原理

关于sidetable 引用计数器和弱引用表

关于runloop和autoreleasepool

runloop相关 - 最详细

深入理解RunLoop

iOS 保持界面流畅的技巧

WWDC 2018:iOS 内存深入研究

AsyncDisplayKit介绍(一)原理和思路

YYCache 设计思路

探秘 Mach-O 文件

iOS 事件处理机制与图像渲染过程

搞iOS的,面试官问Hash干嘛?原因远比我下面要介绍的多

iOS 面试题:阿里-P6一面-参考思路

直击2020——iOS 面试题大全(补充完整版)

阿里、字节:一套高效的iOS面试题

一道Block面试题的深入挖掘

dyld:解读源码分析流程

一种查看Block中引用的所有外部对象的实现方法

深入理解Objective-C:Category

从源代码看 ObjC 中消息的发送

深入解析 ObjC 中方法的结构

Whats is methodLists attribute of the structure objc_class for?

Objc与C(C++)之亲缘关系(一) Class

Objective-C Runtime

Why do we use __builtin_expect when a straightforward way is to use if-else

Posix线程编程指南(2) 线程私有数据

选择 GCD 还是 NSTimer?

从NSTimer的失效性谈起(二):关于GCD Timer和libdispatch

变态的libDispatch源码分析

Run Loops 官方文档

Runloop not being stopped by CFRunLoopStop?

深入理解 RunLoop

关于内存管理面试的回答

Dyld

pthread_mutex_lock ThreadSafety Difference between binary semaphore and mutex

关于 @synchronized,这儿比你想知道的还要多

pthread_mutex_lock.c 源码

[Pthread] Linux中的线程同步机制(二)--In Glibc

pthread的各种同步机制

pthread_cond_wait

Conditional Variable vs Semaphore

深入理解Objective-C:Category

从源代码看 ObjC 中消息的发送

深入解析 ObjC 中方法的结构

Whats is methodLists attribute of the structure objc_class for?

Objc与C(C++)之亲缘关系(一) Class

Objective-C Runtime

What happens when a block is set to nil during its execution?

The Weak/Strong Dance in Swift

网络相关

性能相关

性能优化相关问题

面试官: 说一下你做过哪些性能优化?

抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15%

在快手做分享、无用类检查、在广州做 SwiftUI 学习笔记分享、InfoQ二叉树视频

运行时Hook所有Block方法调用的技术实现

静态插桩的方式来实现****Hook Method**

iOS Crash****防护你看这个就够了** - **上篇

iOS Crash防护你看这个就够了-****下篇

静态插桩的方式来实现Hook Method

iOS** 优化篇 - **启动优化之Clang插桩实现二进制重排

抖音品质建设** **- iOS****启动优化《原理篇》

APM-**监控子线程操作 **UI

Mach-o文件分析多余的类和方法

基于LinkMap分析iOSAPP各模块体积

iOS调优 | 深入理解Link Map File

iOS堆栈信息解析(Mach-O)

iOS 性能优化 - Allocations分析内存分配

iOS微信内存监控一

iOS微信内存监控二

从预编译的角度理解SwiftObjective-C及混编机制

编译优化:怎么加快编译的时间 - 通过hmap文件

为什么要在主线程刷新UI

iOS****组件化思路-大神博客研读和思考

计算 +load 方法的耗时

怎么清除无用的类以及方法

一文读懂iOS线程调用栈原理

mach-o格式分析**

深入理解Mach-O文件中的Rebase和Bind

一文读懂iOS线程调用栈原理

dyld :解读源码分析流程

iOS** 性能优化 一、 crash **监控及防崩溃处理

网易iOS App运行时Crash自动防护实践

Bugless** 异常监控系统 **** iOS **端)

有赞** crash **平台符号化实践

iOS** **启动连续闪退保护方案

漫谈 iOS Crash 收集框架

ObjC** 野指针类的 **Crash

iOS** **崩溃分析

iOS** **稳定性问题治理:卡死崩溃监控原理及最佳实践

手** Q iOS **客户端性能监控和优化实践

iOS** 性能优化 **内存泄露检测

临近 OOM,如何获取详细内存分配信息,分析内存问题?

获取iOS任意线程调用堆栈(五)完整实现:BSBacktraceLogger**

浅析快手iOS启动优化方式——动态库懒加载

从探索到实践,58动态库懒加载实录

iOS App启动优化:动态库手动加载

深入探索** Android 内存优化(炼狱级别**-)

监控所有的OC方法耗时

iOS线程数量监控工具

书籍:iOS Crash Dump Analysis

iOS中线程Call Stack的捕获和解析(一)

iOS中线程Call Stack的捕获和解析(二)

Swift

待补充

算法相关

关于面试常见算法题

大神博客

戴铭

bang

Draveness

ObjC 中国

sharpyl大神

zeeyang大神

OneV's Den

yy

破船之家

刘坤大神

NSHipster

Limboy 无网不剩

唐巧(猿题库)

李忠(蘑菇街)

念茜女神

sunnyxx的技术博客

ChunYeah大佬

阿毛的蛋疼地

BigShow

Lancy's Blog

KooFrank's Blog

阿峰的技术窝窝

hello it works

码农人生

gf&zjの盗梦空间

仓薯大大

孙总

玉令天下的Blog

河马流星锤的博客

亚庆的 Blog

文顶顶

池建强

Nonomori

answer_huang

Travis' Blog

王中周的技术博客

克伟的博客

萧宸宇

Yuan博客

不掏蜂窝的熊

猫·仁波切

里脊串的开发随笔

Why's blog - 汪海的实验室

土土哥的技术Blog

庞海礁的个人空间

老谭笔记

Ted's Homepage

雷纯锋的技术博客

向晨宇的技术博客

摇滚诗人

coderyi

Kenshin Cui's Blog

Casa Taloyum

煲仔饭

Cocoabit

Nico

webfrogs

Luke's Homepage

Kevin Blog

Wonderffee's Blog

I'm TualatriX

不会开机的男孩

代码手工艺人

I'm Allen

Flutter

Mac内核

学习macOS底层笔记 - OS X 内核研究 准备知识

Os内核加载mach-o流程分析

macOS 内核之 hw.epoch 是个什么东西

macOS 内核之系统如何启动

macOS 内核之一个 App 如何运行起来

从内核探究Mac OS X和iOS App 进程的创建原理

收尾

最后再废话几句,自己也曾做过面试官,发现大部分同学虽然技术精湛,但是针对自己做的事,无法精准的表述清楚,而有的同学offer拿的手软。我以为,针对简历上的技术细节一定要烂熟于心,否则就尴尬了。其次有个清晰的思路也是必不可少的,所以不才,给大家分享一个面试模版,也能在面试官面前展示你的伶牙俐齿。

  1. 为什么做这件事,你要解决的问题是什么(背景)。
  2. 怎么做这件事(方案),对比其他平台,有什么优劣。
  3. 怎么落地这件事的(技术实现),技术细节,设计模式,架构。
  4. 做完了这件事你的成果在哪里(数据),没有结果就说过程
  5. 有么有做兜底(AB方案),怎么做的,跟之前方案的比较结果

废话

如果有博客打不开,请告诉我,谢谢。 代码之路,漫长而遥远,与君共勉,共同成长。