- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化
. A; V, _6 T: r' |9 m9 u : f4 S; c( q5 A
非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下 ; `4 x5 h3 f/ F( l
0 q6 O1 I" j# o; y. b8 F) I
這是一個BugFix版本, 修正了以下Bug:
* l! e) R" E2 L, B 1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了)
* l% Y* g6 b4 P& d2 W! c k 2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了 + W8 ^- A" H/ }
3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫 0 R( B& Y, u0 R. j4 ^ y+ E$ w
4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了 ; X" S: Y6 V6 k7 p) Z
5. 改進了複習算法, 現將新的複習算法公佈如下 7 p" L, i6 T5 v, B4 e0 w
, w# n4 l- @4 X* @; L
忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字
+ X% E# ]$ [( B. G# P7 ]- A' J 典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中
+ y& ?5 S1 Q% U0 f" G2 W- c; m ' U2 }6 }! }; b- G0 r9 A
本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了 4 U0 V' K: Y1 y6 y
用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在
3 \# a P6 }7 y6 ? 所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別
1 w2 n% R' G7 C+ p3 X' x/ i: \# ?
! p+ a5 z9 m! { 我們的實現原理是這樣的 % j' C+ j9 ~9 \+ N0 K* q0 e
設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程
7 L& O. K5 l1 H/ ` r的取值範圍為NoRating,FailRating,PassRating,BingoRating
, Y( e1 w- j! L' Y* C 當一個單詞進入複習的時候的狀態, r1=r2=NoRating
: t* d! B& o% x3 d r1 - 記錄第一次的選擇
0 K, q( v/ o. L: g+ s( s r2 - 記錄後面的最有利的一次記憶狀態 ! M. `$ j5 X X! b
tFail - 本次複習循環中的Fail總次數
# R# S$ D4 A/ ?4 @; E. s0 d& s maxFail - 允許最大的Fail總次數,目前定義為8次 & `/ n/ A0 D7 |: M
" U% O0 O( K( u: n! r
只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習 * }' r1 T+ Y8 c! k
多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習
; }: d( X, V) t( w+ r- b& p- u" I 對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式
+ h5 t, s+ j5 J) \9 ] Z F的時候將單詞送回學習序列,重新進行學習 ; }9 @" Z$ [" ~8 N
% U- Z" z! m5 U( v- N* ^ A - (r1 = BingoRating 並且 r2 = BingoRating) ; P8 }% l" X6 y6 P2 |
或者 (r1 = BingoRating 並且 r2 = NoRating)
n7 K( z2 D' @2 A k B - (r1 = BingoRating 並且 r2 = PassRating)
& O& Y! j! b. s" O( k/ r 或者 (r1 = PassRating 並且 r2 = BingoRating)
9 {8 f1 }* ]8 x6 L. A; Q1 G, y 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1)
. q9 B0 m3 H4 j+ a& w4 t; V7 L 或者 (r1 = PassRating 並且 r2 = NoRating)
6 F- D/ F- S. S0 D" x6 O3 ~ C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1)
- ?2 I/ ~' {2 v3 k4 a 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2)
0 S4 D, G. x: `6 r Q+ e 或者 (r1 = PassRating 並且 r2 = PassRating)
+ {8 C1 z1 o j) S2 U2 G& ] D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2) , x+ q& ~/ ]$ H
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail) . L1 Z% c2 K, o% s
E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail)
! p' I1 B" D, g+ X( s) h F - (tFail >= maxFail)
/ ^* X0 d$ d3 s6 Q3 Y. ^7 s! r! ? + {$ y" \- ~0 _7 h# `" L2 K4 K
上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝 ' a* h2 y+ D0 _, P+ g4 Y3 z
q2 H7 \7 k) y
由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記 1 V3 U0 X. _+ P- k
/ c0 [$ x2 P% A8 @8 a5 `8 d+ H 運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|