本文章是由機器翻譯。

don’t 取得 Me 啟動

極端案例

David S。Platt

我最後一欄中,我需求 Word ’s 自動更正功能,就可自動將轉換之 「 hte 」 中所鍵入,該 「 」,真的意味著。我得到回應的數目說 「 否 ’s 真的不正確的功能的 Plattski。有時您實際上是說 「 hte,」 就像您寫下該資料行,並自動更正的方式取得。Word shouldn’t 操作。,因為有時 ’s 錯誤 」

這是典型的 geek worldview。我們會接受訓練,以數學方式、 邏輯上。我們取得 hammered 到我們從中間學校代數前進一個 theorem,’s 99 的情況下,則為 True 但在 100th 的情況下,則為 False 時則為 False theorem。錯誤 geek。它丟棄 ; 請找到一份則為 True。

’s 右數學 theorems 但 ’s 人類使用者的方式錯誤。Word ’s 自動更正功能永遠 doesn’t 正確地更正我們文件。但讓可改善我們使用,並且讓我們修正任何產生的錯誤,其最佳猜測是大型的淨利潤為使用者。(如果您 don’t 認為我,嘗試用 WordPad 整個禮拜的書寫。我保證您跳瘋狂星期三)。該最終結果是什麼大部分使用者判斷我們的產品上,大部分時間。

不像一個 theorem 的話,您的程式會 99 超出 100 使用者快樂,可能會有方面很好的天。和 ’s 讓那些 99 使用者滿意再次明天比想出如何請該 100th 使用者或許更重要 — 尤其是當他需要讓他更滿意會干擾其他 99。

請考慮編輯文件的 [傳統] 模型 — 當在程式關閉它會要求,「 是否要儲存所做的變更? 」您要在多久捨棄所有變更?一次在溫習,但不是經常。無法一次一天、 可能無法一次一週我懷疑甚至一次一個月,尤其是因為復原功能,在大部份的應用程式可讓您回復任何中繼狀態在您編輯的工作階段中。

還不常用的邊緣本例在幾乎通用案例,讓您只是花在該時間的工作的使用者介面 (UI) 中取得相等的處理方式。不只會執行它浪費時間幾乎所有使用者的不只是它學習,新的使用者很難,但也會將所有使用者都放在危險的錯誤捨棄它們幾乎都想要保留的工時 — 時按一下滑鼠] 或 [我的貓 pouncing 鍵盤上的一個 sneeze (「 破壞關閉 Simba — 否,NO,我意味著住手! 」) 和消失。

假設 [] 對話方塊中讀取 「 Throw 離開您做的所有項目嗎? 」何種 dimwit 會詢問這類愚蠢問題之後每次編輯的工作階段?但 ’s 完全相同問題,rephrased 從程式 ’s 資訊安全觀點 – 使用者 ’s。

我們可以中斷這 anti-pattern,有時候我們做。Microsoft 一筆記會自動儲存其文件。我們可以復原變更具有復原索引鍵如果我們需要,但是程式 doesn’t 擔心我們關於該每一次。quicken、 個人財務管理員從 Intuit,運作方式相同。它永遠不會詢問我們是否要儲存一個檢查 ; 的輸入檢查動作,表示我們要它。如果我們變更我們心智,我們刪除核取。儲存的變更是我們需要考慮即將要順利使用這些應用程式的較少一件事。研究顯示使用者收取這項變更從慣例非常快速,而且它們喜歡。

某些情況下清楚地,存在,此設計方法 can’t 套用,位置我們程式有每一種情況下處理正確,將第一次,否則我們失敗 — 空氣心,或 cancer chemotherapy 流量控制彈簧。但這些生命關鍵的應用程式有需要專家注意他們自己,不同的使用者介面問題。

最邊緣的情況下需要在使用者介面 (UI) 中的相等處理的情形是本身不常用的邊緣大小寫。如果您的程式有處理的其中一個圖形,然後它攻擊與我的祝福。但大部分的商務和消費者程式世界是更好的地方不著痕跡地處理主要案例並修正邊緣的情況下,如同它們發生時而不是惱人的可能曾經存在每個邊緣大小寫的每個使用者。

David S。Platt 教導程式設計.NET 在 Harvard 大學副檔名學校和世界各地的公司。他是 11 程式設計的書籍,包括 「 為什麼軟體 Sucks 」 (Addison Wesley Professional,2006年) 和 「 簡介 Microsoft.NET 」 Microsoft 按,2003年作者。Microsoft 命名他軟體圖例 2002年中。他有生之年是否他應該磁帶向下兩個女兒 ’s 手指讓她學習如何計算八進位。您可以連絡他在 rollthunder.com