- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
|---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化 " o. q: a2 O/ j1 r: q4 \7 ]
3 a% F8 b1 Z% J' ^8 l T0 o& v+ u
非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下
3 ]6 j2 F0 R% r3 b! C' x& o1 \ 8 V2 Q' l q! r. w. o$ ?2 y
這是一個BugFix版本, 修正了以下Bug: 0 S4 C- j5 B7 p+ ^7 m- @( A& i
1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了)
% K3 V2 t) [& ] 2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了
& z% ~& Y3 ^3 M4 B' g, p5 b 3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫 1 t3 }* c( U0 p" i1 V
4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了 0 b0 a, n5 k+ V
5. 改進了複習算法, 現將新的複習算法公佈如下
7 J, h0 k! z* y" X" M
6 E7 q1 _+ N: g& Q 忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字
. v5 V+ d9 i( y1 ] C 典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中 5 _2 {4 }' Y& k1 K; r
7 p: |& Y9 S( q) \
本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了 7 u& U- l& ?# G1 ^9 q
用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在 7 H! R0 b' C/ |! c9 r- G
所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別 5 Z' @1 Z u0 d5 B& q
9 {- D% z( Y4 K }
我們的實現原理是這樣的 . U9 D9 W2 L7 \: {! |; Z/ I5 y# b
設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程 1 ], i( B7 d1 i$ w5 O. b1 k
r的取值範圍為NoRating,FailRating,PassRating,BingoRating 9 M; Y) O: u7 W4 X6 K
當一個單詞進入複習的時候的狀態, r1=r2=NoRating 2 D# A% A* f8 f& Q6 D% i0 e3 X
r1 - 記錄第一次的選擇
9 y4 k+ c$ l, g+ ^# u, y! i r2 - 記錄後面的最有利的一次記憶狀態
" v p3 z% a+ [ tFail - 本次複習循環中的Fail總次數
* J# b: y( S' s3 O) w* R) d maxFail - 允許最大的Fail總次數,目前定義為8次
0 b2 y6 a' v2 K, Y+ ?! N: l
% U u- U1 X: A$ d i) q5 t. A1 X 只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習 c$ c, k* W- {* \, Y5 `
多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習 / N- h, z3 b& b; N
對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式
1 J T* r& `; P' `3 Z( R8 Q# _ F的時候將單詞送回學習序列,重新進行學習 # M/ k Q6 G6 x' n2 k" @
5 l6 i5 X% l* h) `7 ^! Z9 \2 d A - (r1 = BingoRating 並且 r2 = BingoRating) 7 k& F2 r% |+ ] z8 g' G
或者 (r1 = BingoRating 並且 r2 = NoRating) 8 `: h* e5 g7 y* \% ^5 y
B - (r1 = BingoRating 並且 r2 = PassRating)
9 l% E% }/ z- ]; A0 q 或者 (r1 = PassRating 並且 r2 = BingoRating) 9 E2 p' ~7 T* [+ ]# z' c
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1)
0 _3 N0 u0 \$ f U( R 或者 (r1 = PassRating 並且 r2 = NoRating)
% x% T/ i1 U1 E2 f9 L6 C2 c C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1) : `0 E7 n3 j( t8 E- ^+ N, u- p1 @
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2)
! \9 D: k0 U8 J% W7 f 或者 (r1 = PassRating 並且 r2 = PassRating) 7 A+ Q5 ]( u" A: D2 O
D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2)
$ R& C( p- V: n' K! N 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail) 1 u) i2 A9 t. L' N
E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail)
$ E1 k- [ `" N d& b F - (tFail >= maxFail) + U$ R/ g( N0 j6 m9 t
3 L3 J8 z/ q7 l# e! Z- P1 l, Z
上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝
& r& H R! T2 W; [ & c" |0 h) V) V% N. G0 N6 J$ Y
由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記 ' p' h* e2 a, J. u F
; a! h6 g0 ]' b1 X1 m2 J
運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|