首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS
订阅
iossocket
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
dyld背后的故事&源码分析
dyld(the dynamic link editor)是苹果的动态链接器,是苹果操作系统的一个重要组成部分,当系统内核做好启动程序的准备工作之后,余下的工作会交给dyld来负责处理。那它存在的意义是什么?它又具体都负责做些什么呢?这一篇我们一起来一探究竟。前方长篇预警~ 存…
用 Swift 实现一个简单版 React
最近一直在用 React Native 进行跨端开发,作为一个 iOS 开发,期间遇到了不少问题,如何正确地使用 React 高效渲染 UI 一直是个挑战,趁春节后不太忙抽时间看了看 React 的源码,感觉似懂非懂。为了搞清楚 React 内部工作原理,参考了一些资料,尝试写…
iOS 本地图片优化实践
1. 删除无用图片 2. 建立公共资源库,去除各模块中的重复图片 3. 压缩图片 针对 imageoptim Xcode's built-in (de)optimization 中提到: COMPRESS_PNG_FILES = NO; 亲测设置为 NO,还是会 recompr…
MVVM+RxSwift
所以是时候在项目中使用真正的MVVM了(整理出套路代码),介于项目中已经引入了RxSwift,所以就用它来实现了,在学习本文前可能会要求读者对RxSwift有一定的了解和使用。 在ViewController 里将数据源绑定到对应的View,这里只是单向绑定,在ViewMode…
iOS 设置代理(Proxy)方案总结
最近因为项目需要,需要在打开某个网址时设置 HTTP 代理。所以做了相关的技术方案调研,并总结下来。 在 WebView 设置 Proxy 的方式,就是对请求进行拦截并重新处理。还有一种全局的实现方案,使用 iOS 9 以后才有的 NetworkExtension,但是这种方案…
iOS 原生级别后台下载详解
当然,这个问题其实很简单,解决方案也有很多。但我第一时间想到的是,目前是否存一个具有任务组概念,非常权威,非常流行、稳定可靠,并且是用 Swift 写的,Github 上 star 非常多的下载框架?如果存在这样的轮子,我就打算把它作为项目里专用的下载模块。很可惜,下载框架很多…
阿里开源 iOS 协程开发框架 coobjc源码分析
昨天朋友圈被一篇文章(以下简称“coobjc介绍文章”)刷屏了:刚刚,阿里开源 iOS 协程开发框架 coobjc!。可能大部分iOS开发者都直接懵逼了: 因此笔者想给大家普及普及协程的知识,运行一下coobjc的Example,顺便分析一下coobjc源码。 协程的维基百科在…
iOS 消息转发
其中在+ (BOOL)resolveInstanceMethod:(SEL)sel的时候,会有相应的方法缓存操作,这个操作是系统帮我们做的。 (1)首先qiMessage在调用length方法后,会先进行动态方法解析,调用+ (BOOL)resolveInstanceMetho…
协议中的私有属性
在 Swift 中,协议中声明的属性没有访问控制的能力。如果协议中列出了某个属性,则必须使遵守协议的类型显式声明这些属性。 不过有些时候,尽管你会在协议中声明一些属性,但你是要利用这些属性来提供你的实现,并不希望这些属性在类型的外部被使用。让我们看看如何解决这个问题。 假设你需…
深入iOS系统底层之静态库
少长咸集,群贤毕至。--《王羲之・兰亭集序》 程序员编写的是源代码,而计算机运行的则是CPU能识别的机器指令,因此必须要有一系列工具或程序来将源代码转化为机器指令,这个转化的过程需要经历编译和链接两个主要阶段。所谓编译就是将源代码文件转化为中间的目标文件(Object file…