ios

WWDC20 | What's New in Swift

2020-06-24 / 9 min read

了解 Metal 及其与 OpenGL ES 渲染管线的异同

Metal 早在 iOS8 就推出,一直也没太了解过,18 年苹果开始废弃 OpenGL ES,Flutter 1.17 也使用 Metal 优化在 iOS 上的性能 (Announcing Flutter 1.17),不过如果不做图形或游戏引擎相关开发影响不是很大,但也需要开发者对其有些了解。这篇文章主要会介绍 Metal 及基本概念,还有在 pipeline 上与 OpenGL ES 的对比。

2020-06-14 / 7 min read

整理 Mach 的概念抽象

最近有对之前写的一些 APM 相关的代码进行复盘,在监控一些基础性能信息时,我们需要跟 Mach API 打交道,这篇文章会梳理一下 Mach 相关的概念。整篇文章内容都摘自 《Mac OS X 技术内幕》 ,该书也对 BSD,I/O Kit 以及文件系统都有比较详尽的介绍,虽然是描述 Mac 系统但大部分原理与 iOS 相同。

2020-04-28 / 29 min read

从 Graver 源码再来看异步渲染

Graver 是美团 18 年底开源的 iOS 异步渲染框架,因为一些争议最近在 GitHub 上取消开源,不过有 fork 过的仓库我们还是可以看下其实现细节。

2020-03-05 / 16 min read

移动端离线包发布方案

最近做了一次关于移动端 web app 更新方案的分享,这篇文章基于这次分享展开。
keynote 下载: WepAppRelease.key

2018-11-16 / 4 min read

移动端模块化架构设计

2018-05-26 / 9 min read

开源库 Block Tracker 学习

修改 selector IMP 映射来 hook 方法在开发中很常见,但是 hook 一个 block 实现以及使用场景都较为稀有。最近,腾讯星开源了一个 hook block 的方案 Block Tracker , 使用上看起来如下

2018-04-29 / 8 min read