- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化
8 _$ t: {! o& M: Q3 W) \
$ Y. e5 C* L8 _8 E2 o 非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下
' q* U9 e% L) @ : q: h V& r; A7 a/ r5 a* {
這是一個BugFix版本, 修正了以下Bug:
! K, F# X; M8 Y" [, _5 ? 1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了)
" T+ q+ O$ h% }( N1 k% _ 2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了 3 A" q" ^# N8 A" r! G
3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫 5 X! T1 \6 E& B2 _
4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了
3 ~ p0 }% ^/ `1 Q! L$ H4 m 5. 改進了複習算法, 現將新的複習算法公佈如下
' Q6 G/ h2 `! v4 J V$ c , I2 D0 Z+ K' M" z
忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字
* ~5 L; O1 p& @- ? 典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中 + K2 ?; I5 B" S/ L T* ?
4 v; U. v! D$ ^' B 本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了
8 \8 _: Q7 f+ X' I0 V+ _3 W 用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在 ) G3 h4 g" Q- q( H1 N9 Z' Z) t( i
所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別 6 y6 b( j- y' j9 o w' f
, |) o! |' S1 n1 R
我們的實現原理是這樣的
4 D7 ^1 m$ z+ ] 設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程 3 i& B3 X( n" @# { P: B. y
r的取值範圍為NoRating,FailRating,PassRating,BingoRating
3 I. ^- U0 W/ C7 k7 U$ h 當一個單詞進入複習的時候的狀態, r1=r2=NoRating ' u5 u1 I- |* l1 X" u& D/ I# O
r1 - 記錄第一次的選擇 9 C6 S# C6 r7 T. c
r2 - 記錄後面的最有利的一次記憶狀態
$ d+ K$ k+ L: B( k tFail - 本次複習循環中的Fail總次數
* o+ D5 C; F: S3 i- Z( Z0 b maxFail - 允許最大的Fail總次數,目前定義為8次
- u' {4 J4 f' G+ {) M 2 H. o) a$ U* Q" B
只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習 " v% X( g4 H) s; `
多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習
h# C( Y5 I7 g, r 對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式 + Q4 j: ]' P1 q
F的時候將單詞送回學習序列,重新進行學習 y/ c n8 n* u- L( q' }
( y& B4 w* U, G' v, E
A - (r1 = BingoRating 並且 r2 = BingoRating) , X: }$ i! ]* @
或者 (r1 = BingoRating 並且 r2 = NoRating) , o5 y0 \. J1 F3 z- e" W" t' |* n# I
B - (r1 = BingoRating 並且 r2 = PassRating)
9 _+ a! u/ v9 f* w& K6 g 或者 (r1 = PassRating 並且 r2 = BingoRating)
3 g/ V$ u. ^8 n. A( J) e 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1) ! r, `' D! Z& v8 g/ Z- ]2 U! G# C6 U
或者 (r1 = PassRating 並且 r2 = NoRating) ' X; Z9 B7 O/ ?$ K; I! D0 K7 S
C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1)
4 ^5 i' |: ]* F9 e# {9 G6 n `5 i 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2) / W! d1 M4 |1 a7 @# S
或者 (r1 = PassRating 並且 r2 = PassRating) ! C5 z% o# Z8 y Z8 m) l9 i U
D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2)
5 g* }2 I8 Z2 b+ U- }8 ` 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail) * H- W$ A/ l* X' Y
E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail) 1 n' U% p! W/ F8 i
F - (tFail >= maxFail) * @% }7 H. m. L' J4 r) ~" ?+ }
- X3 k9 f# k4 ~& i. s! m6 ?0 ^ 上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝
) l5 \9 I0 \' k3 n 7 Q+ M9 b, S7 D0 R/ X' |8 ?
由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記 ' Y0 b" U5 c+ H8 W% m" @3 C
% c4 }8 Q8 e+ I& ^; U& v6 j. v 運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|