編程開發

CloudKit 優化指南

最近給落格輸入法加入了一個叫做“對數雲”的東西,其實不難,比使用 iCloud Document 要簡單,不過網上的資料不太多,你通過那些上手教程來現充應該不是問題,但想要提升用戶體驗,就不是那麼容易了。這裡我們就一起來看看,怎麼樣才能讓 CloudKit 運行得更暢快。

CKDatabaseOp[……]

點擊跳轉以繼續閱讀

在字符串中 快速查找

很多時候,我們需要在字符串中執行查找,以判斷過濾指定的內容出來。比如過在落格輸入法當中,就需要用輔碼過濾出需要的候選詞。

一般來說,查找和對比肯定是數字來的最快,不過在詞庫上總不能把所有的詞彙都轉換為數字(雖然理論上可行……)在字符串的搜索上,我們有很多種辦法來實現,這裡我就說一下我自己的思路[……]

點擊跳轉以繼續閱讀

基於動態規劃的整句輸入法

一般來說,我們不會在用動態規划算法求解的問題上稱呼它為“動態規劃”,而是稱之為“隱馬爾可夫模型”,不過,如果我們單純用動態規划算法來求解一個普通的有向無環圖,那麼就只能說是動態規劃了……

這次我們要來說的,是基於詞庫的整句輸入法。而不是基於狀態轉移的隱馬爾可夫模型求解。

詞庫

由於不需要模[……]

點擊跳轉以繼續閱讀

ios 為視障用戶支持 VoiceOver

其實很少用戶知道,ios系統其實有一套完整的輕鬆訪問機制,很多盲人或者說視障用戶都喜歡使用蘋果手機

所以說,作為一名開發者,我覺得不論是從產品銷售面還是作為責任,都應該做好完善的輕鬆訪問支持。

不過好在,得益於蘋果嚴格的開發規範,所以一般只要你的app已經通過審核能夠上架,那麼基本[……]

點擊跳轉以繼續閱讀

iOS 平台 SQLite 性能優化

開始

在 ios 平台,數據永久化的存儲方式就那麼幾種,比如說coredata,比如說realm,還有nosql的幾種方案,但是很遺憾,nosql的幾種方案支持的功能都還是太少,這樣就讓對它們的選擇顯得十分雞肋——畢竟,如果是簡單的應用的話,那就還不如其他方案來的方便快捷——雖然nosql是趨勢[……]

點擊跳轉以繼續閱讀

獲取 中文 維基百科語料

最近在做輸入法的詞庫,實現新的整句輸入模型,(回頭我會把之前的基於詞的整句輸入模型講講),新的整句輸入模型是基於 HMM (也就是隱馬爾可夫模型)來做的,當然了,由於我個人設備資金等有限,只做了二階矩陣。不過即使如此,模型還是需要訓練的。

當然,不是說用小說名著來訓練就不好,只不過很難找到各行[……]

點擊跳轉以繼續閱讀

swift 中內存狂飆的問題

在使用 Swift 語言進行開發的時候,很多朋友會莫名奇妙地遇到內存爆滿的問題,明明有 ,明明釋放了內存,卻還是讓程序的內存佔用隨著循環而一路飆升。

這裡其實並不是出現了內存洩露,這其實是 的一個機制:在每一個主 Runloop 結束的時候進行清理。也就是說,它有一套必要的緩存[……]

點擊跳轉以繼續閱讀