- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化
3 G* H0 P4 Y/ T% E7 ]1 O - S/ U8 w/ o, S, J3 [
非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下 0 z0 y9 c8 H( T7 L: v7 e
( K" j( i$ H/ k) R; y 這是一個BugFix版本, 修正了以下Bug: * k* B: k3 L& O* @1 d' d
1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了) 5 {& |. B- _3 O' o! y1 t
2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了
, v T, r& y9 F4 ^+ S6 i, c 3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫
" K& H1 d/ s% k: u/ a% x' O6 ? 4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了 % z: @! V! M. e3 K2 y6 v! l
5. 改進了複習算法, 現將新的複習算法公佈如下 " }! ~! h( R! _0 J1 U) Q( h% S% A. T
4 J3 z+ L+ M7 h7 x8 p9 k
忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字
7 G/ p; e$ t8 _ 典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中
3 b5 t& @% ^ }% o6 Z3 |$ X
2 }" ]' ~% H; ^7 N2 w4 S3 F 本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了 ! n5 l) [4 } ]. f* L* B4 |
用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在
* H! d0 q R8 Y+ Y 所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別 ! y3 O( `3 i3 i# a+ s
$ {+ q& a2 m y: g& b# ? 我們的實現原理是這樣的 V( o8 t, q% Q* o v
設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程 % j5 J: K+ w2 @- W) s
r的取值範圍為NoRating,FailRating,PassRating,BingoRating
7 U% s; M7 b! o0 |; w* Y& G 當一個單詞進入複習的時候的狀態, r1=r2=NoRating ( i! U4 f5 z/ _4 E' o
r1 - 記錄第一次的選擇 0 V" F4 J& P: e
r2 - 記錄後面的最有利的一次記憶狀態 ( U1 ? |5 F* c6 v0 o* ~6 ~* c
tFail - 本次複習循環中的Fail總次數 ) a8 [7 j. \1 ?! g# d) `
maxFail - 允許最大的Fail總次數,目前定義為8次
+ f; O# x& `( K6 j6 D2 C
3 `) p3 u7 x; H, k) v 只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習 k& n/ Q1 U, K- e
多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習
, W5 \2 m: t1 p3 i 對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式
) `# H$ \% R% t. t. N) s F的時候將單詞送回學習序列,重新進行學習 ' P' ?+ r, H* G& t1 H+ \
& w+ N2 a0 C0 q6 s% V
A - (r1 = BingoRating 並且 r2 = BingoRating) 3 [. n0 J- ^- G
或者 (r1 = BingoRating 並且 r2 = NoRating) 9 u; J! n) F, L9 j1 q @. x
B - (r1 = BingoRating 並且 r2 = PassRating) + L1 B; r# A5 a+ f' }+ z$ t
或者 (r1 = PassRating 並且 r2 = BingoRating) ( ]2 b. t; v$ z3 Q: ]
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1) & [. I: S) x) G2 |. Z6 ]; z
或者 (r1 = PassRating 並且 r2 = NoRating) 7 \. U- z$ o5 W V7 N
C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1)
2 N5 N* F. |- f' U 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2) ! L) g/ ?4 C& z6 B" T
或者 (r1 = PassRating 並且 r2 = PassRating)
8 }0 U5 }: z0 T; ` D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2)
9 m, ? n# G% ]1 p" P 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail) , ~) o( W! u: v0 N& }) }
E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail)
$ w& y8 \ t- G9 z F - (tFail >= maxFail) 8 S, U0 P& a" b9 c: q/ x" F
, E; K9 _* ~6 W+ a! G0 t' K1 j' A 上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝 - P+ P$ T; M. k% [; M3 N
0 P" I' h. C% J0 z2 _; s5 P5 @ 由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記
9 l6 b: \5 g3 R * K5 \0 V( X v
運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|