iOS开发:NSZombie的实现

写在前面

在iOS开发调试内存问题时,Xcode提供了一个内存管理调试选项:Zombie Objects。打开这个选项,可以在访问已释放内存对象的方法时,进行警告。这里探讨下这个僵尸对象内部实现原理,以及动手去实现自定义的一个僵尸对象类。相关知识点主要涉及Objc的对象模型及消息机制。

iOS开发:NSZombie的实现

VPS搭建博客——不完全指南

一开始折腾Jekyll,后来使用hexo搭建博客托管在了Github Page上。再后来,买了VPS(主要是为了学习Sock5!),博客便迁移到自己的服务器了。本文主要记录使用CentOS结合hexo搭建个人博客的流程。

更新:因为IP间歇性被封,重新部署了一遍,配置HTTPS,Hexo发布流程也改了。有时间再整理出来!

VPS搭建博客——不完全指南

VPS搭建博客——购买及环境配置(2018)

作为软件研发人员,我们对国外优秀技术平台、技术资源是有一定偏好跟需求的。搭梯子是一个非常规操作,这里按下不表。本文主要介绍VPS购买及基础环境配置,后文还有介绍搭建博客的过程。躺了坑也公开说一下,方便后来人。

VPS搭建博客——购买及环境配置(2018)

Lua语言入门基础

Wax是一个不怎么热门的App脚本化的框架,基于Lua引擎与Objc运行时特性来实现。苹果对JSPatch着力打压,而刚好我之前有过Wax相关的实践,正好可以介绍下。Wax相关内容主要包括(一)Lua语言基础(二)Wax的实现原理。

本文主要介绍Lua的一些基础概念与入门知识。

Lua语言入门基础

iOS开发:跨开发商的应用数据共享

iOS上App都是沙盒隔离的,如何做广告效果跟踪、用户拉新邀请奖励?

本文将介绍一种可以跨开发商App进行数据共享的方法,基本原理是通过与Safari共享Cookie来实现。已实现放到github

iOS开发:跨开发商的应用数据共享

iOS开发:关于模块化与路由

说一下iOS应用开发中的模块化跟路由的事情。

iOS开发:关于模块化与路由

iOS开发:自定义转场动画

写在前面

转场动画(Transitioning Animation)顾名思义,是场景/界面转换的一种过渡动画;系统默认的push/pop/present以及iOS的相册浏览其实都是系统实现的转场过渡动画。本文主要是对自定义转场动画的一个梳理及说明。

iOS开发:自定义转场动画

iOS开发:CAMediaTiming与动画

写在前面

在体验至上的时代,一些自然酷炫流畅的动画无疑能提高用户对app好感度以及留存率。常见动画有如下拉加载、加载进度以及转场动画等,iOS开发中的动画大家都不陌生。Core Animation框架提供了一套CALayer层动画接口。因为CALayer作为UIView的backing layer的关系,UIKit基于CA框架也提供了一套视图动画接口,归根到底还是CA动画。

这篇文章,主要是来聊聊动画的一些基本概念,不是来解析具体的动画效果实现。不妨先停下来想一想,动画是什么,它的基本实现原理是什么,我们能做什么。我们从框架提供的接口的角度来认识动画。

iOS开发:CAMediaTiming与动画

Core Data 数据版本/迁移

CoreData基本入坑指南

Core Data 数据版本/迁移

GCD in depth(GCD深入理解)

本文原文为raywenderlich“GCD深入理解”。一贯的风格,示例图解GCD的日常用法;part 1介绍GCD/多线程的基本背景,part 2介绍GCD常用API。(本文节选)

GCD in depth(GCD深入理解)