首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
kx小风
掘友等级
iOS开发工程师
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
21
文章 21
沸点 0
赞
21
返回
|
搜索文章
赞
文章( 21 )
沸点( 0 )
iOS - 老生常谈内存管理(二):从 MRC 说起
MRC全称Manual Reference Counting,也称为MRR(manual retain-release),手动引用计数内存管理,即开发者需要手动控制对象的引用计数来管理对象的内存。 在MRC年代,我们经常需要写retain、release、autorelease…
iOS源码解析: NotificationCenter是如何实现的?
本文从源码角度对iOS中的通知进行了解析,并对通知中心的一些特性进行了相应的解读。 NSNotification理所当然要包含通知name、object,且使用userInfo用于传递参数。 这里封装了一个结构体Name,而非直接使用字符串。所以,我们通常使用的话,需要这样写 …
iOS - 老生常谈内存管理:导读
以下列举了部分有关内存管理的问题。如果你对以下问题存在疑惑,或者只有模糊的答案,那么本系列文章可以给予你帮助。 Toll-Free Bridged 了解过吗?详细描述一下。 为避免语义混淆,所有文章中的 “释放” 一词均指release,“销毁” 一词均指dealloc。 如果…
【转】iOS界的毒瘤: Method Swizzling
不知道何时开始iOS面试开始流行起来询问什么是 Runtime,于是 iOSer 一听 Runtime 总是就提起 MethodSwizzling,开口闭口就是黑科技。但其实如果读者留意过C语言的 Hook 原理其实会发现所谓的钩子都是框架或者语言的设计者预留给我们的工具,而不…
iOS优秀第三方源码解析(二、深入理解Aspects源码)
AOP(Aspect-oriented programming) 也称之为 “面向切面编程”, 是一种通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术,通俗点将就是类似切片的方式,统一注入代码片段而不需要修改原有代码逻辑,相比于继承等方式,代码的耦合度更低。在ja…
深入探索 iOS 启动速度优化
App 的启动时间是体现其性能优劣的一个重要指标,启动时间越快用户的等待时间就越短,提升用户体验感,大厂应用甚至会做到“ 毫秒必究 ”。 本篇文章主要针对冷启动方式进行优化分析,介绍常用的检测工具及优化方法。 Apple 官方的《WWDC Optimizing App Star…
iOS的Key-Value Coding
KVC是许多其他Cocoa技术的基础概念,例如 KVO,Cocoa bindings, Core Data, 和AppleScript-ability。 在OC中,对象从NSObject(直接或间接)继承时,通常都是实现了NSKeyValueCoding协议,又为基本方法提供默…
iOS探索 多线程原理
进程切换时,消耗的资源大、效率高。所以设计到频繁的切换时,使用线程要好于进程。同样如果要求同时进行并且又要共享某些变量的并发操作,只能用线程而不能用进程 执行过程:每个独立的进程有一个程序运行的入口、顺序执行序列和程序入口。但是线程不能独立执行,必须依存在应用程序中,由应用程序…
iOS探索 多线程之GCD应用
此时GCD就提供了两个API——dispatch_barrier_sync和dispatch_barrier_async,使用这两个API就能将多个任务进行分组——等栅栏前追加到队列中的任务执行完毕后,再将栅栏后的任务追加到队列中。简而言之,就是先执行栅栏前任务,再执行栅栏任务…
iOS 如何优化 App 的启动耗时
将不必须在+load中做的事情尽量挪到+initialize中,+initialize是在第一次初始化这个类之前被调用,+load在加载类的时候就被调用。尽量将+load里的代码延后调用 不要使用__attribute__((constructor))将方法显式标记为初始化器,…
下一页
个人成就
文章被点赞
24
文章被阅读
7,813
掘力值
222
关注了
49
关注者
22
收藏集
1
关注标签
21
加入于
2017-08-31