首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS
订阅
孙中原
更多收藏集
微信扫码分享
微信
新浪微博
QQ
99篇文章 · 0订阅
Injection:iOS热重载背后的黑魔法
在介绍热重载黑魔法前,先再次安利一波JohnHoldsworth的这个成吨提高iOS开发效率的工具Injection,Appstore可以直接免费下载,最新一版是5月17日更新。废话不多说,先看效果:
十大排序算法之堆排序
本系列排序包括十大经典排序算法。 定义抽象类Sort里面实现了,交换,大小比较等方法。例如交换两个值,直接传入下标就可以了。其他的具体排序的类都继承抽象类Sort。这样我们就能专注于算法本身。 堆排序(Heap Sort)堆排序(英语:Heapsort)是指利用堆这种数据结构所…
iOS crash 日志堆栈解析
日常开放中,我们难免遇到一些 crash。大部分情况下,Xcode 可以帮助我们找到问题所在,但也有些情况,Xcode 给我们反馈的是一些看不懂的地址,大大增加了我们分析问题的难度。 下面,就来介绍几种能让看不懂的地址,变得看的懂的方式。 dSYM 是保存十六进制函数地址映射信…
iOS之runloop优化tableView的实现
把任务以block块的方式封装起来,存放到任务数组中,若任务数组中的任务数超出最大任务数,则删除靠前的任务,注册runloop的观察者,在回调方法里,执行任务数组中的一个任务,并删除执行后的任务。添加timer事件,防止runloop进入休眠状态。 最后添加timer或sour…
iOS VIPER架构实践(一):从MVC到MVVM到VIPER
最近半年在写app的时候,研究了一下各种iOS代码架构,最后选择了VIPER进行实践,在此对实践中遇到的各种设计问题做一番总结,并分享造出的轮子。 对代码风格和架构有兴趣的同学,肯定都已经在很多地方见过各种架构的介绍。MVC、MVP、MVVM、VIPER,细分程度逐渐上升。这些…
iOS App 稳定性指标及监测
一个iOS App的稳定性,主要决定于整体的系统架构设计,同时也不可忽略编程的细节,正所谓“千里之堤,溃于蚁穴”,一旦考虑不周,看似无关紧要的代码片段可能会带来整体软件系统的崩溃。尤其因为苹果限制了热更新机制,App本身的稳定性及容错性就显的更加重要,之前可以通过发布热补丁的方…
iOS 开发:『Crash 防护系统』(三)KVC 防护
1. KVC Crash 的常见原因 KVC(Key Value Coding),即键值编码,提供一种机制来间接访问对象的属性。而不是通过调用 Setter、Getter 方法进行访问。 首先我们需要先来了解下 KVC 在执行时,具体的搜索模式。也就是 KVC 内部的执行流程。…
iOS图形处理概论:OpenGL ES,Metal,Core Graphics,Core Image,GPUImage,OpenCV等
对于刚接触iOS图形相关框架的小白,有一些图形框架在字面上和功能上非常容易混淆。这里旨在总结一下各种框架,区分它们的概念和功能,以作日后进一步细分学习的指引。因而,本文并不会针对具体框架作详解,只作区分引导,读者可自行选择方向继续深造。为此,笔者总结了一张各种框架关系图,如下所…