オブジェクト設計において、定石となる手法をパターン化したものを デザインパターン といいます。
デザインパターンをきちんと勉強していない人でも、Web のおかげで知らず知らずのうちに使って(コピペして)その恩恵を享受しています。
自分自身パターン概要を一読しただけで、あいまいな使い方をしているものが多く、この際勉強を兼ねて GOF 23 パターンのなかでよく利用するものを Swift3 で記述していきたいと思います。
今回は Swift で避けて通ることができない、有名な 生成パターン の Singleton について説明します。
目次
- [生成] Singleton パターン
- まとめ
[生成] Singleton パターン
あるオブジェクトが単一であること(オブジェクトが複数生成されていないこと)を保証するパターン。
サンプルコード
Singleton.swift
[code]
final class Singleton {
var string = “”
static let sharedInstance = Singleton()
private init() {
}
}
[/code]
ViewController.swift
[code]
override func viewDidLoad() {
super.viewDidLoad()
let singleton = Singleton.sharedInstance
singleton.string = “This is Singleton!”
print(singleton.string)
}
[/code]
実行結果
[code]
This is Singleton!
[/code]
まとめ
初見で意味がわからなくても、サンプルコードを繰り返しコーディングしているうちに、突然ある時期を境に理解できる日が来ます。何事も理解するまで続けることができるかどうかが、その人の適正だったり才能なのかもしれません。
次回は 生成パターン の Prototype パターンを説明したいと思います。
この記事がみなさんのお役に立ちましたら、下記「Share it」よりブックマークやSNSで共有していただければ幸いです。
