- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
|---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化 ( G0 [; I3 E" D8 a; n0 J& j2 K
) _2 h; K, @( t: T- q$ s+ P0 G 非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下 5 i1 z" j0 w7 X6 M
# U+ w# P( i8 [3 D+ E- L
這是一個BugFix版本, 修正了以下Bug: 3 s4 Y* q/ i; \% F. A
1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了)
+ D9 {' X2 i1 P8 R# |" o 2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了 - I4 p8 ]0 g' g3 C7 f4 e1 {
3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫
- z7 V* r) X3 O3 U3 d: E 4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了 . c1 F5 F' I1 ~ G. {$ ~9 c! ^
5. 改進了複習算法, 現將新的複習算法公佈如下
/ x* _' _* ?3 P2 K2 }
% e6 }7 `: b6 P- z+ }$ |; t 忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字 ' _) t5 b, t' e+ k7 s! F
典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中 6 Y: O2 w6 J# x4 a
. c6 j: P7 E _: ~; Q 本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了
' i9 t2 t1 Y0 @* x1 P. Z$ F 用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在 ; z1 K" R6 m7 U }/ i9 F
所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別
5 {# S! Z8 W7 M x" j C/ {9 A 0 m7 s8 l" L9 z/ p( |% L+ }; H
我們的實現原理是這樣的
- ]6 T, \4 G+ j) s" I) P2 d 設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程
7 w. k* b; Y, B& F+ H1 [7 w r的取值範圍為NoRating,FailRating,PassRating,BingoRating 8 u% |3 v0 _+ N9 N
當一個單詞進入複習的時候的狀態, r1=r2=NoRating 6 o' A+ M; o# g8 @! T& a; W
r1 - 記錄第一次的選擇 - ^! ~! B5 {* z! b2 a
r2 - 記錄後面的最有利的一次記憶狀態
3 k2 g" `0 `1 ~+ j' y% a0 Z tFail - 本次複習循環中的Fail總次數
8 c1 l5 P9 V6 \ maxFail - 允許最大的Fail總次數,目前定義為8次
+ J! `/ y% K) ~* B3 N/ k7 s" w1 _1 d
" j' }; L% H) \/ U) U 只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習
8 a5 Q) a) m6 S* g4 j4 ^ 多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習 2 u. g y6 y. i6 m
對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式 " s4 W5 K- |0 P
F的時候將單詞送回學習序列,重新進行學習
g* u4 [- U4 Q3 V% T7 v
. D2 C# Z3 t0 W* i9 ` A - (r1 = BingoRating 並且 r2 = BingoRating) , }8 u1 l4 V- J, P: j4 p+ J
或者 (r1 = BingoRating 並且 r2 = NoRating) ! v2 Z7 e3 g7 _1 E
B - (r1 = BingoRating 並且 r2 = PassRating) 4 R5 H0 {( Y$ P2 G0 X) W
或者 (r1 = PassRating 並且 r2 = BingoRating) 9 }, K$ m% r }6 l, m
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1)
. M; R% K% E) @! N3 Q. X/ S 或者 (r1 = PassRating 並且 r2 = NoRating)
4 U* r+ N$ Z8 n) j3 Q3 T4 ]* w C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1) 0 G8 b; Y7 l; K# g) E4 K( _2 ?
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2)
5 ~3 F4 U% |1 a- s& o, l 或者 (r1 = PassRating 並且 r2 = PassRating)
& U; J0 P4 B/ [# S5 B c D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2) + X0 Z9 ^8 y7 M F* g/ P# d
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail)
8 L, p' ?7 L3 A% ] E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail)
% ^8 B! B; ]+ |5 T F - (tFail >= maxFail)
/ R8 D& s5 o4 R- L( R 2 n+ O0 o% H! e# g. ^$ L4 u
上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝
' Z/ H/ |) S2 Y I; }' j5 u ! N) h* ~. q: j
由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記
2 I; K) b( |* p* a& Y; w
6 t- f* c* v& B( { 運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|