首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS
订阅
Boyang_
更多收藏集
微信扫码分享
微信
新浪微博
QQ
17篇文章 · 0订阅
一个iOS流畅性优化工具
LNAsyncKit是一个异步渲染工具,它提供了便捷的方法帮助你将多个元素(Element)异步渲染到一张图片上,让这个过程代替UIKit的视图构建过程,进而优化App性能;Prender提供预加载策略帮助你在Feed流中弥补异步渲染带来的延时;除构建视图外,Transacti…
iOS 稳定性问题治理:卡死崩溃监控原理及最佳实践
通常 App 卡死时间超过 20s 之后会触发操作系统的保护机制,发生崩溃,此时在用户的设备中能找到操作系统生成的卡死崩溃日志,但是因为 iOS 系统封闭生态的关系,App 层面没有权限拿到卡死崩溃的日志。 一般而言用户遇到卡死问题的时候并没有耐心等待那么久的时间,可能在卡住 …
iOS 证书幕后原理
在日常的 iOS 开发中,无论是新手还是老鸟,总是会遇到各种与证书、签名有关的问题。当不了解其中的具体原理时,我们总是会被这些问题整得焦头烂额。对于我也是如此,为了彻底理清其中的原理,我花了一些时间进行了研究并整理出这篇文章以供后续进行参考。 iOS 开发中各种证书的核心就是 …
直观理解(尾)递归函数
栈 是一种常见的数据结构,具有后进先出(LIFO)的特点。 调用栈 则是计算机内部对函数调用所分配内存时的一种栈结构。 递归函数 简单的讲,就是函数在内部调用自己。 在编写递归函数的时候,我们要注意组成它的两个条件,分别是:基线条件 和 递归条件 (也叫回归条件)。 递归函数其…
DoKit支持iOS本地crash查看功能
在日常开发中或者测试过程中,我们的应用可能会出现Crash的问题。对于这类问题我们要抱着零容忍的态度,因为如果线上出现了这类问题,将会严重影响用户的体验。 如果Crash出现的时候恰好是在开发过程中,那么开发者可以根据Xcode的调用堆栈或者控制台输出的信息来定位问题的原因。但…
git基本操作,一篇文章就够了!
1. git简介 在实际开发中,会使用git作为版本控制工具来完成团队协作。因此,对基本的git操作指令进行总结是十分有必要的,本文对一些术语或者理论基础,不重新码字,可以参考廖雪峰老师的博文,本文只对命令做归纳总结。 暂存区(Index/Stage):在使用git管理项目文件…
iOS 查漏补缺 - LLVM & Clang
对于 iOS 开发者来说,Swift 之父 Chris Lattner 的大名应该都会有所耳闻。他和他的团队所开发的 LLVM 已经成为 iOS 乃至 macOS 整个生态中至关重要的底层基础设施。虽然 Lattner 本人已经去 Google 做人工智能了,但是对于 iOS …
LLVM & Clang 入门
本文主要从下面几个方面简单介绍了一下 LLVM & Clang。 LLVM包含三部分,分别是LLVM suite、Clang和Test Suite。 LLVM suite,LLVM 套件,它包含了 LLVM 所需要的所有工具、库和头文件,一个汇编器、解释器、位码分析器和位码优化…
iOS拾遗——为什么必须在主线程操作UI
究竟为什么一定要在主线程操作UI呢?如果在后台线程对UI进行操作会发生什么?在后台线程对UI进行操作不是可以更好的避免卡顿吗?这篇文章就是基于这样一些疑问而产生的。
iOS调试Block引用对象无法被释放的一个小技巧
Block技术在iOS开发中非常流行也很方便,但是稍微疏忽就可能会产生引用无法被释放的问题,从而造成内存泄漏。那如何知道哪个Block持有了对象并造成内存泄漏呢? 一个解决的方法是在程序运行时通过Xcode的Debug Memory Graph 来查看当前进程中所有生命周期内的…