- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化
3 N8 ^- E) t. ?! X+ a. f% H+ L % s- `1 c0 H; R3 j0 L; L/ j6 } U
非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下 7 [# v7 w/ F, {7 B( r
) m/ H+ W- H% a R; ^, z 這是一個BugFix版本, 修正了以下Bug: 5 _8 S1 Z5 P2 C4 z7 K8 _' y S l
1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了)
5 j& T0 G% ~4 g- G' x 2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了 1 k& C5 W4 d& a0 T
3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫 1 u9 y8 D" o9 Z; h+ _& v
4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了
! h* m1 [* `: p4 B2 _ 5. 改進了複習算法, 現將新的複習算法公佈如下
4 G5 W! A0 K$ s) ?' Z7 T! n, N0 j
0 z a/ F" K2 _ 忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字 v- U/ {& h# S6 M$ p
典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中 / @# q7 V$ l. @: { g1 A4 [
; r4 t* Z8 I% }' ^' |% N 本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了
1 f. r! t2 H' n5 E `. ^7 u 用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在 % p t2 e! N7 s) p4 J% @: @
所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別
, J. _3 {* Z( D
0 c8 M' M& V4 E9 M 我們的實現原理是這樣的 8 o4 \- n! C$ v5 a3 C5 K' E+ s
設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程
$ T8 X; U3 |. R9 U r的取值範圍為NoRating,FailRating,PassRating,BingoRating
$ `( F! L0 i$ t& E1 \ 當一個單詞進入複習的時候的狀態, r1=r2=NoRating
+ r$ P3 N7 K) o# k r1 - 記錄第一次的選擇
4 J- u# o+ s$ k& P8 p( L r2 - 記錄後面的最有利的一次記憶狀態 ! j# {; ~% ^& h. |' b0 |, Z
tFail - 本次複習循環中的Fail總次數 ' A9 W& {$ k0 e6 H0 m
maxFail - 允許最大的Fail總次數,目前定義為8次
9 J' @0 t, ?: c' L 0 a. ^2 p: T/ d+ K4 I w- l
只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習 5 z/ T" k/ y7 f; n. b
多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習 , b7 B+ X# y0 @- M4 t( _
對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式
% L: H* B# } U8 }2 R3 r. f( } F的時候將單詞送回學習序列,重新進行學習 3 I0 y6 Q- ], e
4 Z. [ t# X/ B4 U3 T. P4 X A - (r1 = BingoRating 並且 r2 = BingoRating)
( |( v$ G" j. p$ o$ o4 S 或者 (r1 = BingoRating 並且 r2 = NoRating)
, J& _5 h9 J8 s# g! \. X B - (r1 = BingoRating 並且 r2 = PassRating) - N, v; _( g7 h7 p) M3 p* h
或者 (r1 = PassRating 並且 r2 = BingoRating)
+ m c9 k8 G, l1 y! j) R) v9 E 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1) ) h- Y6 x" E$ t2 ~. @, w# {: R, V
或者 (r1 = PassRating 並且 r2 = NoRating) " n3 A8 w" Y u/ t/ F# |
C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1)
F) s# J G$ l/ ?, d 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2) % F0 T! r- c" \2 P5 E7 ^& K
或者 (r1 = PassRating 並且 r2 = PassRating) 8 o! @/ x9 {- z. T9 B
D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2)
+ R% v+ i) z' E/ O 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail) * {; K( X( n' Q- l' A
E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail) 5 N1 m* A7 |+ R+ y# v6 Q6 Z
F - (tFail >= maxFail) # l9 T! |. r" h$ l+ d( j6 H& R
4 V! f+ M$ m3 ]" J0 n# ]
上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝 * T5 H- t7 y( D3 i, z
p7 a! x! H! r6 o, ]: ^9 S
由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記
4 q' \" M# @6 l- p
! ]: M7 h! v( }: d" a: \0 q! v7 g: | 運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|