本文章是由機器翻譯。

不吐不快

鏈鋸開發

David Platt

它採用 Microsoft 三個版本,以取得產品右,Windows 本身是典型的範例。Visual Studio 2010 和 Microsoft.NET Framework 4 代表第三個發行的 Windows Presentation Foundation (WPF) 和它的工具。右排程,我的用戶端會告訴我,「 Yeah,關於準備外觀現在,協助我們了解它,然後我們試試驗性專案 」。但是,通常由其 glitz distracted 有 WPF 的 newcomers:他們忘了更快樂和生產力,無法藉由在它的十足的痛苦的某個程式 cramming 華麗 gizmos titillating 自己 vanity 其最終的目標讓他們的使用者。上述所有,它們忘記他們的程式是只是其中一個使用者介面之間的許多使用者切換,全天每隔的一天和該共同點 — 亦即使用更多或更少的大多數 Windows 程式要彼此 — 是其使用者 ’ 滿意度的關鍵,因此程式 ’ 成功。

當使用者介面有沒有共同點佔用下年齡 35 少人會記住 DOS 的程式。就例如大部分的 DOS 程式有沒有項需要嵌入式管理單元上鍵盤的範本,以提醒使用者的命令的功能表。(好,我猜的 ’s 一些共同點)。幾個 DOS 程式包含功能表,但 didn’t 顯示它們直到使用者按下某個特定的機碼和自然的每個程式使用不同的金鑰,並顯示在功能表中的不同位置。Microsoft Word 使用 ESC 鍵和文件下方的 [] 功能表出現 ; Lotus 1-2-3 所使用正斜線 ‘ / ’ 和功能表出現在文件上方 ; Farsight 另一個試算表使用 F3。每個使用者必須 ( gak!) 請閱讀手冊 (記得那些嗎?) 甚至啟動一個新的應用程式在上戳和必須切換心理命令集,每次他切換應用程式。

除了 [接龍] 外,,Windows 使用者平台的最大的成長驅動程式是標準化鼓勵其 API 的使用者介面。主控制項結構是程式 ’s 視窗最上方的功能表。鍵盤快速鍵作為教學輔助工具,會列在功能表項目、 工具列等提供圖形的捷徑。像[工具提示] 及 [按滑鼠右鍵的內容功能表的這些標準有經過一段時間,發展和他們繼續發展今天 (Office 功能區控制,例如)。沒有人會讀取手冊。使用者會預期新的 Windows 程式立即解釋本身透過它的使用者介面和傾印任何 don’t。

我們 don’t 還,沒有這些標準的 WPF 的新功能和所 ’s 真正的問題。就例如許多文件將說明如何進行程式設計在 WPF 中的動畫。但是除了我紙張 「 使用 WPF 的良好和不惡意 」 ( rollthunder.com/SoftwareThatDoesntSuck/WpfForGoodAndNotEvil.htm ),我看到動畫因此有使用者 ’s 產能和滿意度,何種效果是的使用者動畫通訊何種資訊的 Windows 社群中沒有討論區或任何一種指引上應該使用動畫和 shouldn’t 的地方。’s 為什麼,每當我教 WPF 中的類別,我永遠堅持在使用者介面的設計 devoting 至少一天教我不只是用來撰寫 WPF 的程式碼,但是要從使用者 ’s 需求開始,並使用向內,而不是從工具組開始向外使用的用戶端。

當一個 chainsaw 會比一個 handsaw 更強大,WPF 是比 Windows Form,更強大。我看過該電源,好 exultation 和 exalters 是關於其大小完全正確。但卻看見零討論的安全並有效率地管理,讓使用者更快樂的電源所需小心的想法 — 也就是我們最終的目標。

這需要變更,它必須立即變更。之後的實驗的 four-plus 年,我們應該已經在 WPF 中的使用模式讓使用者更快樂,並可達成相反的一些概念。使用 WPF poised 成為 Windows 桌面開發主流,我呼叫上 Microsoft 發佈 UI 設計方針的 ; 如何不這或該的項功能的程式,但時間和位置以及使用它的原因。製造一個 chainsaw 的公司會帶來教導客戶它保留的哪一個頂點的職責。

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