- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
|---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化 4 |- P1 U! [( S% i# z, A
, c+ e7 ?; m7 N: [/ n0 x0 R
非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下 : x; p; v) B+ d; [: R
1 y3 n3 u& ^( {! S0 i 這是一個BugFix版本, 修正了以下Bug: 6 L+ s/ L3 J3 p2 L! _+ {! T$ D3 c
1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了)
1 F$ P- x3 p* ?0 R0 F 2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了
. h/ m9 U! g7 l 3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫
7 e% E% T2 p; l: z& {9 w4 k 4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了
8 ]1 _/ [# S( G( \- S 5. 改進了複習算法, 現將新的複習算法公佈如下 $ q9 e4 F: H2 C' I: h5 U- n1 E4 s
! F0 F7 j j {* x1 I
忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字
* X7 c6 R( e4 ], P 典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中
$ X9 _6 j" P+ B' n % _( N; T! K8 H" E+ ^
本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了
5 |5 S3 n# e- L- K0 u j2 X c 用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在
\& j, g1 X5 K e. p% ?/ n9 Q 所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別
3 h) e8 G$ ~+ G% }) O) I - ~* ]! b9 D) c% m8 n; x4 {3 o
我們的實現原理是這樣的
; h0 U: l4 m4 b( p& P6 ?# j 設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程
+ F9 |" Y5 z5 B r的取值範圍為NoRating,FailRating,PassRating,BingoRating 6 g- {: |2 R1 K& T$ S3 k4 }! N
當一個單詞進入複習的時候的狀態, r1=r2=NoRating
6 [" ~' ~8 m3 K r1 - 記錄第一次的選擇
$ F- w7 Z, Q' E1 P r2 - 記錄後面的最有利的一次記憶狀態 # i' v N0 {; T' c
tFail - 本次複習循環中的Fail總次數
; H' q W/ r5 J* B maxFail - 允許最大的Fail總次數,目前定義為8次
+ g6 f0 \7 I H" m
( e5 J+ G1 F2 A: v% x- u2 i% v1 w& Z 只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習
- G3 J* I$ U3 k' N% E7 ^ 多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習
/ N1 S+ m1 }9 ]7 R 對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式 4 X R+ O# k) C! Y$ B" K: T
F的時候將單詞送回學習序列,重新進行學習 ( X* p \' h) J" \: Z! A
) `% t! P9 D8 Z" X) E A - (r1 = BingoRating 並且 r2 = BingoRating)
: B# J% l; j0 o1 c" U/ F' c 或者 (r1 = BingoRating 並且 r2 = NoRating)
" F, S. ?: O" t4 H B - (r1 = BingoRating 並且 r2 = PassRating)
: B7 \8 N) ?4 o/ P2 L2 o 或者 (r1 = PassRating 並且 r2 = BingoRating)
1 @2 n+ n) o3 j9 i) o* q6 ^ 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1) 0 a7 C7 d9 ^ F4 J' I2 K
或者 (r1 = PassRating 並且 r2 = NoRating)
4 R! g1 D- @( i/ t4 l$ Z C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1)
+ t f) h8 D) j0 e I" z2 r# c" O 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2) . f" ?( L. `3 M4 L
或者 (r1 = PassRating 並且 r2 = PassRating) . C0 l+ H3 t J
D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2) 5 X7 c; q' G9 s! O( _
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail)
; b* s0 X1 |" x E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail)
0 `/ d. g5 @# F# S F - (tFail >= maxFail)
* u0 S( y! {9 y: I 7 E6 ?/ Q# Z; X7 M7 l6 ^
上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝
6 }; k% E+ ~+ M" V . q4 W7 l, N, f
由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記 ( ^1 ?: A0 c1 V
" ]& C+ v- Y6 [1 [ p8 w# e2 M 運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|