記錄學習內容。
看網路上的文章和影片,做些紀錄。
內容可能有錯誤。
想用一個東西。類似Android的Shared Preferences 。 可以簡單的ket-value方式,存一些字串、布林。
學習來源:
Swift Tutorial: Save & Get Data with User Defaults
iOS Equivalent For Android Shared Preferences
UserDefaults
1
關於Singleton:
Singleton design pattern swift 5 - How to use Singleton
單例模式 Singleton
保證一個類別只會產生一個物件,而且要提供存取該物件的統一方法
在swift 這樣用就有Singleton的效果:
class UDM{
static let shared = UDM()
private init(){}
}
2
remove 所有的UserDefault 資料:
How to remove all data by a suite name from UserDefaults in Swift?
3
Struct and class
class & struct 的記憶體位置和大小
class -- >指到記憶體位址,只有一個
Struct -- >有幾個東西,就會有幾個東西
「文件」所指的包含了所有的資料管理者元件 ,User Defaults 應該也算是。
這種 跟資料庫、網路,…等等,GET、SET資料的物件,應該都用class 比較好 。然後用Singleton寫法
因為 Swift 的 class 是建構在 Objective-C 的 class 之上,所以還要加上 Objective-C class 16 bytes 的 metadata。
相反的, struct 是 value type,資料直接存在裡面。不用再加16 bytes
應該就是 一個的東西用class ,需要多個不一樣的用struct 。
像是按鈕、View之類的用struct 。
4
看一下static
以 static 和 class 宣告型別方法的差異