- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
|---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化 % d6 d9 [3 W- G: Q9 m5 U
1 \1 _9 v6 Q. ^* K: R 非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下
! | F! E- X7 z0 a) _, ?+ A6 Y5 T m4 k" g# `7 t/ U
這是一個BugFix版本, 修正了以下Bug:
4 M- z, B3 k$ ?$ Q ^ 1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了)
3 p6 Q& r; \/ l' h4 F0 p3 a; p 2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了 ' @+ W* r2 m; H
3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫
# d! o0 C' _+ J; g1 w1 Z' s 4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了 - X K6 e" f1 N z- F
5. 改進了複習算法, 現將新的複習算法公佈如下
' m# ~. G1 H+ S) |' g1 b, @& l # @6 D3 ~" D# M2 p! U2 b! M
忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字 4 P$ X9 T- S0 n: P0 I7 \% t: R
典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中 + G, r/ |" Y+ `# }
/ R* H# }+ p) S
本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了
6 Z, y3 I# i- V- |/ D% o 用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在 6 g5 b% b1 U0 X& F: g; Y
所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別
7 e1 t4 l9 R* ~5 l# ]3 Q 9 L( l; w4 R) p2 k6 `( v
我們的實現原理是這樣的
; v5 t) W- ?* c; ^8 d 設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程
2 q* `3 R/ a$ O7 o r的取值範圍為NoRating,FailRating,PassRating,BingoRating
+ Z0 K2 F, i3 Q$ [5 z 當一個單詞進入複習的時候的狀態, r1=r2=NoRating
* |# T: N2 L$ Q( `% ~! X1 s r1 - 記錄第一次的選擇 ' ^2 D4 S! n9 e
r2 - 記錄後面的最有利的一次記憶狀態
. w& e6 Z. b G tFail - 本次複習循環中的Fail總次數 1 P6 Y1 C( r; q9 X8 r9 D
maxFail - 允許最大的Fail總次數,目前定義為8次 # E8 G" K- A* A$ A0 B' ^
) b$ d" T; O% U9 _0 m" H2 v3 |1 [7 r
只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習 5 z5 N; z" c u; K
多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習 ; I3 W; ?3 v3 @$ \( F
對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式 ' E5 D1 R2 N, l, `1 c" o* |
F的時候將單詞送回學習序列,重新進行學習 2 A$ E+ y- r/ W. }1 _6 z7 v# b* i1 K: e
, S( A# x8 n$ y& N A - (r1 = BingoRating 並且 r2 = BingoRating)
7 p7 h1 b( X2 }+ A- I. T- t 或者 (r1 = BingoRating 並且 r2 = NoRating)
; \; |; [2 S8 } B - (r1 = BingoRating 並且 r2 = PassRating)
+ w% E1 i' n, z9 c 或者 (r1 = PassRating 並且 r2 = BingoRating) + a: p" @* T; p% c) S0 |, m' r. Q8 N
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1)
, l5 P% Q/ R/ r3 |2 l" M5 S 或者 (r1 = PassRating 並且 r2 = NoRating) u) R4 Y2 ?- |3 t
C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1) 2 e; f1 g4 v7 A5 d I
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2) 5 t! w0 n1 E- w( P/ N1 a" ^) q
或者 (r1 = PassRating 並且 r2 = PassRating)
; S4 | b( l) ]/ W0 R7 {" A9 T D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2) : o% @, ?: I/ r4 I. P" F
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail) ( t# ~) `2 n- I: M& o
E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail)
! D" W# `5 S: H% a/ T F - (tFail >= maxFail) " A+ W' F4 b+ z
. Q7 A. h7 A- z: E3 ]: v/ Y 上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝
% J6 A8 ^5 E7 S. }
% h4 J: @" W/ `% D9 P! y/ { 由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記
1 X3 `- @5 q# S
7 h1 B) K5 c- ], {! b% ~ 運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|