首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS
订阅
lun0144
更多收藏集
微信扫码分享
微信
新浪微博
QQ
20篇文章 · 0订阅
iOS——解密RunLoop原理
前言 RunLoop作为iOS中一个基础组件和线程有着千丝万缕的关系,同时也是很多常见技术的幕后功臣。尽管在平时多数开发者很少直接使用RunLoop,但是理解RunLoop可以帮助开发者更好的利用多线
58同城iOS混编项目无用代码检测方案介绍
背景 近期很多大型APP都在做支持Swift与Objective-C的混编开发的工作,58集团旗下的各个APP也在积极探索使用Swift语言开发。
Swift在58安居客房产实践
1、了解项目中如何Module化 2、了解OC底层特性以及反射相关原理 3、了解多种注入绑定方案以及优缺点
iOS项目组件化历程
随着业务的发展,App中的页面,网络请求,通用弹层UI,通用TableCell数量就会剧增,需求的开发人员数量也会逐渐增多。 如果所有业务都在同一个App中,并且同时开发人数较少时,抛开代码健壮性不谈,实际的开发体验可能并没有那么糟糕,毕竟作为一个开发,什么地方用什么控件,就跟…
iOS底层原理11:objc_msgSend慢速查找流程
在上一篇iOS底层原理10:objc_msgSend快速查找流程文章中,我们分析了快速查找流程,如果快速查不到,则会进入慢速查找流程,本文将分析慢速查找的流程。 上述的汇编流程,我们可以通过汇编调试来验证。 在main中,[p say]对象方法调用处加一个断点。 开启汇编调试【…
iOS底层原理10:objc_msgSend快速查找流程
本文探索一下方法的本质,而在探索之前,我们先简单了解 Runtime 的知识点。 编译时 是源代码翻译成机器能识别的代码的过程,主要是对语言进行最基本的检查,即词法分析、语法分析等,是静态类型检查。 运行时 是代码跑起来,被装载到内存中的过程,如果此时出错,则程序会崩溃,是静态…
iOS底层原理09:cache_t底层原理探索
这篇文章将对类结构中cache_t的分析。 cache_t源码。 从源码中可以看出,在macOS、64位真机和非64位真机环境下有不同的处理。 explicit_atomic显示原子性,为线程的安全。 其中在真机环境下,mask和bucket是写在一起,目的是为了优化。 buc…
iOS底层原理08:iOS经典面试题分析
这篇文章需要涉及到 isa 与 superclass 的指向流程分析,如果你对此不清晰,可以在iOS底层原理05:isa底层原理探索下这篇文章中了解一下。 多花点时间思考思考...... 通过断点调试,遇到了一个坑,isKindOfClass不走源码的流程,而是走到objc_o…
iOS底层原理07:类的底层原理探索(2)
上一篇iOS底层原理06:类的底层原理探索(1)已经对类的底层原理有了初步的探索,这篇文章将继续探索。 执行p $5.get(1)获取第二个属性,发现lldb报数组越界的错误信息。 说明明 property_list 中只有 一个属性name。 类的属性存储在bits中,通过通…
iOS底层原理06:类的底层原理探索(1)
本文所采用的源码为苹果开源的最新 objc4-781 版本。 1.对象的本质是个结构体。 2.NSObject_IVARS本质是class类型的isa。 3.objc_class是一个结构体。在iOS中,所有的Class都是以 objc_class 为模板创建的。 于是在obj…