首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS
订阅
墨日阳光
更多收藏集
微信扫码分享
微信
新浪微博
QQ
29篇文章 · 0订阅
iOS底层原理总结 - 探寻KVO本质
对小码哥底层班视频学习的总结与记录。面试题部分,通过对面试题的分析探索问题的本质内容。 首先需要了解KVO基本使用,KVO的全称 Key-Value Observing,俗称“键值监听”,可以用于监听某个对象属性值的改变。 上述代码中可以看出,在添加监听之后,age属性的值在发…
iOS 测试利器:idb
腾讯云技术社区 - 掘金主页持续为大家呈现云计算技术文章,欢迎大家关注! 作者:樊林 导读 对于 android 的开发以及测试人员,对 adb 命令一定会很熟悉,adb 工具可谓 android 测试的入门神器,安装、卸载、抓 log、截图等等一应俱全。很多自动化以及性能工具都一定程度上要依赖 a…
iOS 内存管理研究
iPhone 作为一个移动设备,其计算和内存资源通常是非常有限的,而许多用户对应用的性能却很敏感,卡顿、应用回到前台丢失状态、甚至 OOM 闪退,这就给了 iOS 工程师一个很大的挑战。 网上的绝大多数关于 iOS 内存管理的文章,大多是围绕 ARC/MRC、循环引用的原理或者…
iOS crash 日志堆栈解析
日常开放中,我们难免遇到一些 crash。大部分情况下,Xcode 可以帮助我们找到问题所在,但也有些情况,Xcode 给我们反馈的是一些看不懂的地址,大大增加了我们分析问题的难度。 下面,就来介绍几种能让看不懂的地址,变得看的懂的方式。 dSYM 是保存十六进制函数地址映射信…
组件生命周期管理和通信方案
随着移动互联网的快速发展,项目的迭代速度越来越快,需求改变越来越频繁,传统开发方式的工程所面临的一些,如代码耦合严重、维护效率低、开发不够敏捷等问题就凸现了出来。于是越来越多的公司开始推行"组件化",通过对原有业务或新业务进行组件(或模块)拆分来提高并行开发效率。 在笔者面试过…
Flutter免费视频教程第一季:开发环境搭建
Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。 Flutter可以与现有的代码一起工作。在全世界,Flutter正在被越来越多的开发者和组织使用,并且Flutter是完全免费、开源的。我们将在这里揭开他可爱而神奇的面纱。 这个只…
JSPatch实现原理一览
JSPatch是一个非常棒的热修复框架,10000+star!!!!!虽说2017年被苹果封杀了,但是据我获取到的有限的信息,大家还是偷偷摸摸混淆一下、改改类名继续在使用。毕竟bug还是不可避免的,有了JSPatch万一出了问题我们还是能够抢救一下的。一些实现细节bang哥其实…
用代码理解 ObjC 中的发送消息和消息转发
当我们向一个对象(实例对象、类对象)发送一条消息时,对象可能是处理不了的,结果就是程序发生crash。 ① NilTest宏,判断对象是否为nil,若为 nil,直接返回 nil。 ③ CacheLookup宏_cache_getImp(Class cls, SEL sel)包…
使用 Block 实现 KVO
在iOS开发中,我们可以通过KVO机制来监听某个对象的某个属性的变化。 用过KVO的同学都应该知道,KVO的回调是以代理的形式实现的:在给某个对象添加观察以后,需要在另外一个地方实现回调代理方法。这种设计给人感觉比较分散,因此突然想试试用Block来实现KVO,将添加观察的代码…