- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
|---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化 , u- q) k& D9 W# A
0 w2 A2 q2 M `. E
非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下 + Q! _3 d3 z- L* r( f9 x% d4 |
" L6 o- u% p' C6 }5 e
這是一個BugFix版本, 修正了以下Bug: 1 c8 t) X% e& R: Z6 H A9 n+ s) a
1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了)
& r# I& ~+ W3 M' E( l4 z. _( h: t 2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了
$ ?2 k+ O: j0 v/ n% r 3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫
3 ]+ v3 h5 g. [. G: t 4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了
5 E& l* K2 D+ X/ h9 F' B" _ 5. 改進了複習算法, 現將新的複習算法公佈如下 ) h/ G* s; l* _
q; L6 [8 ]/ _ 忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字
# h- f8 F1 T/ M6 }, g 典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中 3 L. P3 u3 a. @+ t
4 S' d# w2 J. @ 本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了 / m8 t+ A; M2 e3 L5 }7 y5 j
用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在
# c% @2 k, }, C 所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別 5 R2 \; \- t! }/ b
( {+ l- g' |. u' f8 [' D
我們的實現原理是這樣的
' p8 t2 _. E+ c* P' P! c 設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程
8 V! S5 A7 v2 q" ?1 | r的取值範圍為NoRating,FailRating,PassRating,BingoRating 8 e- T2 z7 K. F$ o* F* l
當一個單詞進入複習的時候的狀態, r1=r2=NoRating & A- }* Q3 p" [, U) `3 p' z. e
r1 - 記錄第一次的選擇
7 A7 Z; w, H% \/ z" A r2 - 記錄後面的最有利的一次記憶狀態 / o: Q7 {* j" b' g$ Q* p! z6 s
tFail - 本次複習循環中的Fail總次數
5 i7 M4 a T$ y% B maxFail - 允許最大的Fail總次數,目前定義為8次 : v% y0 `% x; I8 d7 u3 w
. k4 I0 F8 A6 `& G
只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習
6 T4 q7 \8 W# T6 z 多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習 / a. p" H/ y6 i% R5 q% x( K
對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式
5 K8 `* ~% U3 M F的時候將單詞送回學習序列,重新進行學習
/ N" {5 Y( D1 v# S' Q : [, Y5 f5 y2 U7 @$ E7 h2 }) a
A - (r1 = BingoRating 並且 r2 = BingoRating) 9 ~. m3 Q/ T2 ~1 \7 A1 a3 H- y
或者 (r1 = BingoRating 並且 r2 = NoRating)
& R6 ]8 m% M4 O* w( Y B - (r1 = BingoRating 並且 r2 = PassRating)
* z' G1 k% l: K( v5 e; i 或者 (r1 = PassRating 並且 r2 = BingoRating)
" i, |1 L6 u- X) D, G0 P& k2 s5 ` 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1) 4 y$ q& M3 E4 ^! B/ B n
或者 (r1 = PassRating 並且 r2 = NoRating)
6 {* k6 U6 t: g4 f C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1)
# H: W5 x4 ^+ R 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2) 3 r3 `% v8 R2 ]5 @- k6 w
或者 (r1 = PassRating 並且 r2 = PassRating)
& ]" x( H$ h( D. o' F) J3 D% z D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2) % ^. ]3 J2 N) n c; M
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail)
! M9 p6 x& K9 F" u" f E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail) - A: N" @+ m1 |
F - (tFail >= maxFail)
) D: @$ U9 F% B2 V7 e / e7 q8 C. B* }1 R3 r P
上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝
. j8 z6 T; w6 q4 V- {( Y ' o6 F6 N9 z- W$ R* y7 b9 S S
由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記 5 N( n, W/ i1 q6 K, ~
" P1 C5 b# e( [% b7 S
運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|