- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
|---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化 ) ~& n4 n# b( s' @1 @- H) m
) f* W v5 K4 f% e5 ~" w 非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下
3 R9 U/ w- _- H* N& D4 N 7 w* f- s8 t# H5 A2 ~' p' O& M6 o
這是一個BugFix版本, 修正了以下Bug:
- {/ _- t- ~5 m, l) ] 1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了) : F& _8 B( l3 L J
2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了
) H6 V/ W$ o( R3 w, T* [, \3 I& U 3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫
( h" ] r6 j: r( h5 y, w 4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了
& F G" g3 E$ G4 F, g! r4 J7 w 5. 改進了複習算法, 現將新的複習算法公佈如下
1 L% F: R9 a7 g: h& [& M 0 e3 t ]" `* ^ _4 ^% m+ ^9 V
忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字
: I+ s: i' z3 j8 ^/ G, p7 _8 y 典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中 0 h1 q( Y8 w; ^
4 j4 i# o7 G; Q) ^3 Q 本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了
- r5 C# O- o4 y& Q! ]" b 用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在
' a% W5 R' `; t5 _# X 所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別
# x( G0 d2 r& p. ^* G7 N4 U ; w1 M9 [+ `( d- @6 E
我們的實現原理是這樣的 " Z, U; ]" x# M; t8 A0 b
設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程
9 ~- I& c& i" P! d6 d r的取值範圍為NoRating,FailRating,PassRating,BingoRating
. G7 c/ v# g }" x 當一個單詞進入複習的時候的狀態, r1=r2=NoRating
m2 u" g' C; _9 r* r; h* o! [6 T r1 - 記錄第一次的選擇
- C, V3 b, H+ U( M: n+ w3 h) t9 E r2 - 記錄後面的最有利的一次記憶狀態
' F! u0 J* H: { o tFail - 本次複習循環中的Fail總次數 " P$ X5 t3 f8 ~$ y
maxFail - 允許最大的Fail總次數,目前定義為8次 & {# v+ O5 B1 p7 J' ^- s' L& ?! {
1 t' s h5 ?4 a7 l
只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習
, _( `/ q5 f' c 多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習
$ [+ y9 d3 h& W" Y 對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式 , A+ n; _$ O+ y H! ?& U6 z4 d
F的時候將單詞送回學習序列,重新進行學習
- V% E+ O0 N( v0 k1 R
8 V0 Z5 X1 t+ e( F4 t A - (r1 = BingoRating 並且 r2 = BingoRating) # Q- K/ |: v. V( ^1 j
或者 (r1 = BingoRating 並且 r2 = NoRating) + O: K9 \4 F4 @+ ?
B - (r1 = BingoRating 並且 r2 = PassRating)
* J' G, h5 x7 [/ H5 c% _1 K: K 或者 (r1 = PassRating 並且 r2 = BingoRating)
- f) Y1 ~1 S4 R# y3 ? 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1) : G4 F9 I% k9 p4 ~; W
或者 (r1 = PassRating 並且 r2 = NoRating) $ o- s' C2 |$ J; Q% z& H
C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1)
+ ]5 ^6 k7 Y& w 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2) * r- v& p+ n1 [) ~
或者 (r1 = PassRating 並且 r2 = PassRating) 5 W* c! c6 L, _8 A
D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2)
) n% T3 q( H8 N( X6 R# |. Z 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail)
7 g1 z o- R) }& x, } E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail) + U$ |( E9 q7 h" o* w
F - (tFail >= maxFail)
* x* `" |0 l( I3 d" ]5 x: W
) E6 ?0 w/ L- e7 N8 t( O {( ^ 上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝
, ]5 G, X- ?. v% q 6 K1 x1 ~# O& i. g
由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記
% x- { J" M- J9 B8 @" `+ L/ L% I 9 y- q: D: K! N
運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|