- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
|---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化 " f$ V9 }3 o! G; J, N5 t( |# I
/ Y9 E, o7 c" a( {+ I
非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下 : k8 a# U* X$ Z1 R Q
( } B1 \; f! U6 `9 ?; m7 |$ e. } 這是一個BugFix版本, 修正了以下Bug:
9 d+ f/ ~( F. f6 T( w: U 1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了) : x4 P5 o4 h$ \. o2 L" o
2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了 , o( Q7 `9 @8 S' V
3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫 ! \; U7 s: c: s" ~) n/ Z4 g- U
4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了 0 m2 E$ Q! F+ W' f1 e9 K7 l; f
5. 改進了複習算法, 現將新的複習算法公佈如下
: y( R8 d' @# u3 q. L
6 R$ y3 N- x' I 忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字
8 ~& N' x! Y( ~2 e0 k( L) m 典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中 3 L4 j. Y* _3 u( D0 p
& a, ]- N# [0 _6 p7 e c
本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了 9 \! ?8 n0 ~3 ^% M
用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在 % e3 [3 e/ L+ G6 x
所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別
1 F7 ?! d5 |8 b( o H' N: r4 n2 x& f6 j/ y
我們的實現原理是這樣的
' n$ S' j8 W# @. \- z0 j, T 設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程
0 ~3 `+ S6 G, I r的取值範圍為NoRating,FailRating,PassRating,BingoRating
' a3 E- V0 J- }9 Q9 B 當一個單詞進入複習的時候的狀態, r1=r2=NoRating
+ `9 _& b/ ^$ c" h% S r1 - 記錄第一次的選擇
& r0 o7 N; ~+ o l( s# X! s r2 - 記錄後面的最有利的一次記憶狀態
1 Q1 w% R: X G: S# A' Y& i tFail - 本次複習循環中的Fail總次數 : a, V* g. z( U1 i8 T
maxFail - 允許最大的Fail總次數,目前定義為8次 7 [: k) z) F7 ~9 S% @- ~) c
6 ?8 I! i; L/ s' V$ B+ E7 H( U
只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習
& n3 X0 \/ @7 d4 J+ s: `) V 多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習
; U, |9 u6 c8 [ S8 g% N0 x4 J% z/ J 對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式 0 s1 Z) U# t. L
F的時候將單詞送回學習序列,重新進行學習 " S3 ]. O2 X4 S2 X3 _
* d. U' e8 ]8 _; l" Q
A - (r1 = BingoRating 並且 r2 = BingoRating)
! |" x1 \( V" f, U& }" Q6 S 或者 (r1 = BingoRating 並且 r2 = NoRating) 7 _) R! _9 a" b" c- H; D: {: K
B - (r1 = BingoRating 並且 r2 = PassRating)
+ P+ C" x; u+ x" g: F 或者 (r1 = PassRating 並且 r2 = BingoRating)
( ^5 F. _% [. ^3 F4 ~ 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1)
! x; C4 a. W* s# [9 H. D6 O2 Y$ m2 p 或者 (r1 = PassRating 並且 r2 = NoRating) 4 H" h8 d' |; F( F2 O3 Q/ `: ~! G
C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1) # B; _, X5 e, z6 V1 g+ X1 \- R$ H
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2) - J+ k; Q- \% o, o1 z
或者 (r1 = PassRating 並且 r2 = PassRating) 3 S; ]( s# A3 G1 `+ l/ e' Z
D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2) : R6 o" M% g4 v8 ]
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail)
* n% M. V5 ^( ^. p6 t E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail) & s% J) q4 q! W9 B% g
F - (tFail >= maxFail)
; a0 O8 g3 u; _$ P4 V0 G
" O# W1 N/ N2 i: E% S 上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝
9 F3 x, \( m# u8 J" j3 Z 8 N5 g/ z- S/ U' X; f! O
由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記 ( C% A( Y& C! y: s' }8 {* Q
3 J X, K! I5 |0 k: z" x
運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|