MENU

Swift 中单例模式的替换

Cover

除了 MVC、MVVM 之外,单例模式可以说是 iOS 开发中另一常见的设计模式。无论是 UIKit 或是一些流行的三方库,我们都能看到单例的身影。而我们开发者本身也会潜意识地将这些类库中的代码当作最佳实践并将其带入日常工作中,哪怕很多人都知道单例存在一些明显的缺陷。

针对单例的缺陷,本文将介绍一些替换或改造单例模式的方法来提升代码质量。

阅读全文

Switch 新知

Cover

从概念提出以来 Switch 语法几乎是所有高级编程语言的标配,而 Swift 中的类型系统则进一步放大了它使用场景。正常情况下,我们会在对某个变量进行多状态判断时使用 Switch 语句。这样代码的控制流就与某一特定状态进行了绑定,同时代码也变得可读性强更易调试。

阅读全文

iOS 多网络请求的线程安全

Cover

iOS 网络编程有一种常见的场景是:我们需要并行处理二个请求并且在都成功后才能进行下一步处理。下面是部分常见的处理方式,但是在使用过程中也很容易出错:

阅读全文

RxSwift 之变换操作

Cover

可能刚开始接触 RxSwift 时候,你会觉得 RxSwift 非常难懂也不容易学。其实学习每一门新知识或多或少都会出现这种情况。不过我相信认知读了前几篇文章后,你会深感 RxSwift 的强大。它在简化代码量的同时也让整个程序的逻辑变的更为清晰。

这篇文章将会继续介绍另一组非常重要的 RxSwift 操作:Transforming Operator 。通过这组操作我们可以在观察者使用之前对数据进行一次预处理。

阅读全文

RxSwift 之过滤操作

Cover

在前面的基础之上接下来我会介绍一些常用的函数和实用技巧。首先,本文将会介绍那些用于对 next 事件进行过滤的操作。这些过滤操作类似于 Swift 标准库中的 filter 操作。它能在我们开始真正进行业务处理前先把那些不符合条件的过滤掉,而且这种函数式编程的范式也能开阔我们的思维。

阅读全文