首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS
订阅
zxfei
更多收藏集
微信扫码分享
微信
新浪微博
QQ
22篇文章 · 0订阅
那些常用的设计模式汇总
在iOS中Delegate使用单例模式保证只有一份对象,那么多个单例的情况,可以使用享元模式,降低了对象的读写次数,提高了性能,使用NSString、NSArray、NSMutableArray等使用了创建型的抽象工厂模式,保留了内部创建步骤,产出多个类型产品,AppDeleg…
iOS底层原理 - Block本质探究
block 本质是一个OC对象,也存在 isa 指针。或者说Block 是封装了函数调用和函数调用环境的OC对象。 使用 xcrun -sdk iphoneos clang -arch arm64 -rewrite-objc main.m 命令将其OC代码转化为底层的C++代码…
IOS面试考察(九):性能优化相关问题
1. IOS面试考察(九):性能优化相关问题 APP的启动时间,直接影响用户对你的APP的第一体验和判断。如果启动时间过长,不单单体验直线下降,而且可能会激发苹果的watch dog机制kill掉你的APP,那就悲剧了,用户会觉得APP怎么一启动就卡死然后崩溃了,不能用,然后长…
探秘Block(一):block的本质
最简单。 升级版。 里面的invoke就是指向具体实现的函数指针,当block被调用的时候,程序最终会跳转到这个函数指针指向的代码区。 而 Block_descriptor里面最重要的就是 copy函数和 dispose函数,从命名上可以推断出,copy函数是用来捕获变量并持有…
(强烈推荐)移动端音视频从零到上手
音视频的发展正在向各个行业不断扩展,从教育的远程授课,交通的人脸识别,医疗的远程就医等等,音视频方向已经占据一个相当重要的位置,而音视频真正入门的文章又少之甚少,一个刚毕业小白可能很难切入理解,因为音视频中涉及大量理论知识,而代码的书写需要结合这些理论,所以搞懂音视频,编解码等…
iOS探寻+(void)load方法的执行时机
我们经常会有一些需求:让某方法的执行先于main方法。比如要hook某个系统类的方法(hook UIViewController的viewWillAppear和viewDidDisappear通过AOP的方式实现埋点功能),或者做一些初始化操作。这时候我们经常首先想到的就是重写…
iOS App 连接外设的几种方式
一般 iOS 开发者做 APP 开发大部分时候都是通过 Http(s) 请求跟后台服务器打交道,做一些信息展示和用户交互。很少涉及到去跟外部硬件设备连接的开发。随着近年来车联网和物联网的兴起,智能家居和智能硬件的逐步火热,越来越多的 app 被开发出来,用来跟硬件设备进行来连接,获取硬件相关信息展示或者发送指令控制硬件来提供服务。故本文就针对 iOS 的 app 如何跟外部设备进行连接通信这个问题跟大家交流一下,如有不正确的地方恳请各位看官指正。
iOS RunLoop详解
Runloop 是和线程紧密相关的一个基础组件,是很多线程有关功能的幕后功臣。尽管在平常使用中几乎不太会直接用到,理解 Runloop 有利于我们更加深入地理解 iOS 的多线程模型。 本文从如下几个方面理解RunLoop的相关知识点。 可见,一个RunLoop对象,主要包含了…
App架构二三事
架构一词源于建筑学,原指建筑物在其尺度上,依靠内部支撑物相互结合,而稳固构造的方式。 在软件行业中,架构可分为:业务架构、应用架构和技术架构;其中,业务架构是最顶层的设计,技术架构是基建,而应用架构承上启下:上承接业务架构的落地,下决定技术的选型。 我们接触最多的是应用架构,主…
iOS 优化篇 - 启动优化之Clang插桩实现二进制重排
( 本篇文章由于会从原理角度讲解 , 有些已经比较熟悉的同学可能会觉得节奏偏啰嗦 , 为了照顾大部分同学 , 大家自行根据目录跳过即可 . ) 了解二进制重排之前 , 我们需要了解一些前导知识 , 以及二进制重排是为了解决什么问题 . 在本篇文章里 , 笔者就不通过教科书或者大…