FAQ // Add instructions regarding changes in v2.7.0.
This commit is contained in:
parent
ff0c082754
commit
a8a6e44df9
21
FAQ.md
21
FAQ.md
|
@ -67,12 +67,29 @@ xattr -dr com.apple.quarantine ~/Downloads/vChewingInstaller.app
|
|||
|
||||
### 威注音會使用多少系統資源?
|
||||
|
||||
此部分以威注音 v1.7.4 版來說明。
|
||||
此部分以威注音 v2.7.0 版來說明。
|
||||
|
||||
在 2018 Intel Mac Mini 以及 2020 年的末代 Intel MacBook Pro 13-inch 機種內使用 Xcode 對威注音做側寫的過程中,我們得到的測試結果是:大約會佔用 110-120 MB 左右的記憶體,平時也大概是這個數。值得注意的是,如果使用者語彙內容體積有所增長的話,對應的記憶體開銷也會有相應的上漲。
|
||||
在 2018 Intel Mac Mini 以及 2020 年的末代 Intel MacBook Pro 13-inch 機種內使用 Xcode 對威注音做側寫的過程中,我們得到的測試結果是:
|
||||
|
||||
1. 如果僅使用簡體中文或繁體中文單個模式的原廠詞庫、且啟用「按需載入簡繁體模式的原廠辭典資料」的話,記憶體開銷大約在 70-80MB 起步。
|
||||
2. 如果簡體中文與繁體中文模式的原廠詞庫都載入的話,大約會佔用 110-120 MB 左右的記憶體。
|
||||
3. 值得注意的是,如果使用者語彙內容體積有所增長的話,對應的記憶體開銷也會有相應的上漲。
|
||||
|
||||
為什麼會比上游多出幾乎接近 10 倍呢?因為 Swift 對 string 資料的處理就是這樣不經濟。這還是在經過優化處理之後的結果。(威注音在 1.5.4 版內部測試的時候,語言模組體系剛剛 Swift 化,記憶體開銷是 700MB。)我們能得出的對 Swift 而言的最佳處理方案就是使用 plist 格式的原廠語彙資料,這樣能夠兼顧十年前的舊機種的 CPU 算力。假如只照顧最近三年以來的機種的話,還可以換用另一種算法、來將記憶體開銷縮減至 80MB 以內。
|
||||
|
||||
得益於威注音的純 Swift 化,平常處理每個按鍵事件都可以在毫秒級別的時間完成。
|
||||
|
||||
### 我想修改威注音,新增一些偏好設定。請問需要注意哪些問題?
|
||||
|
||||
在 PrefUI (macOS 10.15 開始的 SwiftUI 偏好設定介面) 與 PrefWindow (針對 macOS 10.14 為止的舊版偏好設定介面) 當中新增對應的介面內容之前,你需要做這些:
|
||||
|
||||
1. 在「vChewing_Shared」封包當中的 Shared.swift 檔案內的 UserDef 這個 Enum 當中添入新的記錄,用以規定該資料值在 UserDefaults plist 當中的名稱。
|
||||
2. 在「vChewing_Shared」封包當中的 PrefMgrProtocol 當中添入對應的新資料值的規範。
|
||||
3. 在 PrefMgr.swfit 當中依照 PrefMgrProtocol 的變動來添入對應的新資料值。
|
||||
4. 與小麥注音不同的是,威注音給 Bool 類型引入了 toggled() 特性,會先 toggle() 再回傳操作後的資料值結果。如果您需要讓參數在行將變化、或者變化之後自動做些什麼的話,請擴充該參數的 willSet 或 didSet 特性、而不需要再另外設定函式(除非需要再傳入特定的參數)。
|
||||
|
||||
### 威注音 2.7.0 版好像改很兇,但又幾乎沒有新功能。究竟改了哪些內容?
|
||||
|
||||
威注音 2.7.0 是威注音的 Dezonblization 行動的一部分,旨在讓在此之後的研發流程更能順利進行。藉由將整個專案大卸八塊、拆成各個以 Swift Package 為單位的各種組件,以及對大中心派發技術(Grand Central Dispatch)的合理運用,威注音得以做到更快的專案建置速度、更快的辭典載入速度、更清晰且更易於維護的專案結構框架。至於放棄 macOS 10.11-10.12 的支援,則是因為 NSGridView 以及 Xcode 14 的雙雙限制使然。藉由這些改動,威注音今後在理論上就可以引入對 KeyHandler 等元件的更有效的單元測試。
|
||||
|
||||
$ EOF.
|
||||
|
|
Loading…
Reference in New Issue