天天看點

10個對開發者非常有用的設計原則

10個對開發者非常有用的設計原則

要點:我會盡力解釋jakob nielsen的10設計啟發式算法。我會用例子告訴你,作為一名開發人員,如何使你的産品以及你産品背後的代碼更加有用。

<a target="_blank"></a>

開發者也是設計師,他們隻是使用不同的媒介。是以,你知道如何設計系統也是你的最終産品的一部分。

關注于把底層設計的更加有用将會幫助确定以下事情:

對新加入的開發人員更容易上手

系統的可維護性及更改時的簡易性

作為這個系統的一名開發者,你是多麼的有效率

當我與開發者一起工作的時候發現,這些觀念已經在程式員之中存在了–隻是他們還沒有把這個表達給設計師。還有很多需要去做,但是基礎已經存在了,這難道不是好消息嗎?

在我的例子中并沒有任何實際的代碼,因為我覺得人們對于編寫任何軟體的正确方式都太敏感了。

像設計師一樣,程式員喜歡運用他們的創造力來解決複雜的問題。而我甯願你考慮一下下面關于設計系統的規則,而不是按照一組嚴格的規定來說“這是解決xx問題最好的方法”。

啟發式隻是通過你的經驗中學習。它是用于查找在使用者界面的易用性問題,使得它們可以參加到作為疊代設計過程的一部分的方法。

我們得到3-5個啟發式設計的專家來使用我們的産品,并判斷它是否符合最基本的可用性規則,即“10設計啟發式”合規,這是啟發式的簡化。

下面讓我們開始吧。

曾經上傳圖像到一個網站?比如說一個社交網絡的頭像?

主要的原則是要使你始終可以了解上傳的狀态。上面的例子隻是告訴你上傳的狀态。而看到它的進步使使用者更加舒服,你不覺得嗎?

10個對開發者非常有用的設計原則

10-design-heuristics-1

當寫文檔或命名一個組成部分,始終嘗試使用熟悉的術語。了解目标使用者是誰,然後使用他們熟悉的單詞、短語和概念。

10個對開發者非常有用的設計原則

10-design-heuristics-2

系統應該允許你自由去探索其内容,但是以一種更加負責的方式,應該讓你可以從你可能犯的錯誤中進行恢複。比如說支援“撤銷”與“重做”。

蘋果和微軟都對“确定”和“取消”按鈕的順序有不同的意見。哪個更好?

10個對開發者非常有用的設計原則
10個對開發者非常有用的設計原則

都不好或者都好?當然,這并不重要,重要的是你要確定所有使用者互動系統的一緻性。

10-design-heuristics-3

要做到這一點,你就不應該讓你的使用者困惑,為什麼不一樣的單詞、不一樣的環境或者操作确得到相同的結果。

在錯誤可能發生的第一個位置阻止錯誤是非常重要的。

當我們一開始的時候,就有qa人員來尋找産品中的缺陷以保證産品品質。然後把他們放到生産線上,讓他們指出如何在第一道工序開始就做出沒有缺陷的産品。你會驚訝于這樣的效率是多麼的高,當你做的東西中的缺陷在第一時間被發現而不是到最後才被發現。 — mary poppendieck

顯示出提升使用者可用性的辨別,這是另一個有幫助的内容。

cli(指令行接口) 是一個完全無視這一原則的最好的例子,通過這樣,它示範了優雅(它用靈活性與效率來彌補了它所缺少的)。

在你的系統上提供一個潛在的、隐藏的層,來幫助有經驗的使用者通過“噪聲”,變得更加有效率。

最初被列為“審美和簡約設計”。這一原理是關于提高信噪比的。

你提供給使用者的所有資料都要有一定的限制–是否有臃腫的http請求的占用帶寬、充滿缺陷的api、以及需要太多請求的互動界面。

盡量用最小的輸入,獲得最大的産出。

錯誤消息應該用平實的語言表達(沒有代碼),精确顯示問題,建設性地提出一個解決方案。對使用者是有用的。并且提供一個解決方案。

在設計原則的清單中看到這一項,我和你一樣感到驚訝。

即便沒有文檔也可以使用的系統,最好也還是要提供幫助和文檔。任何此類資訊都應該易于搜尋,關注使用者的任務,列出具體的進行步驟,并切不應該太大。

我希望這對你是有幫助的。如果你有任何問題或看法,請留言。

本文來自雲栖社群合作夥伴“linux中國”,原文釋出日期:2015-08-11  

繼續閱讀