品质优化半年工作的回忆与思考 好久没有写博客了,上一个博客应该是去年12月底了,讲了我的2020都发生了些什么。这回说一说我最近半年的工作吧。每当我脑袋里总是充斥着关于同一件事的想法和回忆时,我就知道是时候把这些想法好好梳理一下,做一些总结了。 最近半年的工作确实值得好好说道,因为这是我工作以来(包括实习)最有意思的一段时间,但同时也是我最焦虑的一段时间。这半年我主要在做品质优化方向的工作。何为品质优化?在我的理解来看就是通过 2021-03-25 杂谈
我的2020 生活今年比较特殊,除了年初去泰国的度假未受影响以外,其他的旅游安排都被迫取消了。原本计划毕业后自驾西北大环线,没想到竟然刚好遇到北京封城,真是太扫兴了。另外,经过一年短短续续的思考,我也基本上确定了毕业后的生活目标。以前一直在纠结是否要留在北京,现在已经确定了,我就是要留在北京生活。目前对于我来说面临的最麻烦的问题大概就是如何凑齐首付了吧。今年毕业前的时候从来没有考虑过这些未来生活上的事情,心情很 2020-12-26 杂谈
iOS实现高性能弹幕框架 前言我之前维护过公司的弹幕库,但由于它的历史包袱过重,改造成本过高,一直没有将它改造成我心中理想状态的一个库。另外在周末,我也需要做一些事情来消磨时间,所以我写了一个比较符合我心中理想状态的弹幕库并将它开源:https://github.com/qyz777/DanmakuKit 简介DanmakuKit是一个高性能弹幕框架,它提供了基础的弹幕功能,能够让你通过异步队列的方式渲染弹幕。它提供三种弹 2020-10-06 iOS swift
帧率和丢帧 前言最近在做一些性能优化的工作,在这个工作之前,除了fps以外其他的性能指标我并不了解,所以就有了这篇文章。 帧率(FPS)在说fps之前,我们先要搞清楚一些概念。 概念帧帧是什么?很简单,就是视频或者动画中一个画面,许多个帧组合起来就是视频或者动画。 帧数这个名词很直观,帧数就是生成帧的数量。如果一秒有60帧,那么2秒就是120帧。 帧率帧率是用于测量显示帧数的量度,也就是我们所说的fps,它的 2020-07-05 iOS
教你使用swift写编译器玩具(8) 前言本章对应官方教程第8章。本章介绍如何将语言编译为目标文件。 教程如下: 教你使用swift写编译器玩具(0) 教你使用swift写编译器玩具(1) 教你使用swift写编译器玩具(2) 教你使用swift写编译器玩具(3) 教你使用swift写编译器玩具(4) 教你使用swift写编译器玩具(5) 教你使用swift写编译器玩具(6) 教你使用swift写编译器玩具(7) 教你使用swift写 2020-07-05 编译原理 swift
教你使用swift写编译器玩具(7) 前言本章对应官方教程第7章。本章的目的是支持变量var和`=运算符,我们需要在堆栈分配内存给变量,详细说明请查看官方教程第7章。 教程如下: 教你使用swift写编译器玩具(0) 教你使用swift写编译器玩具(1) 教你使用swift写编译器玩具(2) 教你使用swift写编译器玩具(3) 教你使用swift写编译器玩具(4) 教你使用swift写编译器玩具(5) 教你使用swift写编译器玩具 2020-07-05 编译原理 swift
教你使用swift写编译器玩具(6) 前言本章对应官方教程第6章。在之前的教程中我们为Kaleidoscope实现了一些基本的功能,但现在它有个大问题,那就是没有更多的操作符。所以本章内容展示了如何为让Kaleidoscope支持自定义操作符。 教程如下: 教你使用swift写编译器玩具(0) 教你使用swift写编译器玩具(1) 教你使用swift写编译器玩具(2) 教你使用swift写编译器玩具(3) 教你使用swift写编译器玩 2020-07-05 编译原理 swift
教你使用swift写编译器玩具(5) 前言本章对应官方教程第5章,本章介绍如何扩展Kaleidoscope以使用if / then / else表达式和一个简单的for循环。 教程如下: 教你使用swift写编译器玩具(0) 教你使用swift写编译器玩具(1) 教你使用swift写编译器玩具(2) 教你使用swift写编译器玩具(3) 教你使用swift写编译器玩具(4) 教你使用swift写编译器玩具(5) 教你使用swift写编 2020-07-05 编译原理 swift
教你使用swift写编译器玩具(4) 前言本章对应官方教程第4章,本章介绍如何为中间代码(LLVM IR)添加优化以及添加JIT编译器支持。 教程如下: 教你使用swift写编译器玩具(0) 教你使用swift写编译器玩具(1) 教你使用swift写编译器玩具(2) 教你使用swift写编译器玩具(3) 教你使用swift写编译器玩具(4) 教你使用swift写编译器玩具(5) 教你使用swift写编译器玩具(6) 教你使用swift 2020-07-05 编译原理 swift
教你使用swift写编译器玩具(3) 前言本章对应官方教程第3章,本章介绍如何将抽象语法树(AST)转换为中间代码(LLVM IR)。 教程如下: 教你使用swift写编译器玩具(0) 教你使用swift写编译器玩具(1) 教你使用swift写编译器玩具(2) 教你使用swift写编译器玩具(3) 教你使用swift写编译器玩具(4) 教你使用swift写编译器玩具(5) 教你使用swift写编译器玩具(6) 教你使用swift写编译 2020-07-05 编译原理 swift