標籤:
使用者體驗
作為互連網從業人員,經常會接觸到“使用者體驗”這個詞!
我們可能為了一個菜單該放在哪裡而爭論,或一邊苦逼的編碼一邊罵著SB產品經理!
我們為別人考慮著“使用者體驗”,但是對自己一直在用的軟體,為什麼卻這麼將就呢?
軟體=工具
作為軟體開發人員,使用的軟體不在少數,我們都稱為工具。即為工具,我們好像就不那麼糾結難不難用了!好像工具就應該比較難用才對!而實際上,我們為別人做的軟體,對別人來說也是工具。我們為什麼要為使用者考慮這麼多,為什麼不為自己考慮考慮?
現在,我們從使用者體驗的角度重新審視下我們常用的工具!
簡單
在做軟體的時候,我們知道要把使用者當作“白癡”來看待!要儘可能的把功能做簡單,能一步完成的絕對不能分成兩步。所以軟體要做得足夠的簡單。但是簡單並不代表功能上的簡單,比如說Windows下的記事本,那叫簡陋!對於工具型軟體來說,“簡單”有三個層面上的意思:
功能夠用
軟體功能應該也適用28原則,即在使用軟體的大部分(80%,甚至更多)情況下,只會使用很少(20%,甚至更少)的功能。所以軟體沒必要太多的功能。只要有足夠的核心功能即可。過多的功能只會增加軟體的複雜度和學習成本。
一個很典型的例子就是Office。Office功能很強大,但是大家大部分情況下會用到它多少功能?有5%嗎?而且,你會發現,你需要的功能消失在了它的菜單列表裡了!
現在再看Word的工具列,是什麼感覺?
操作簡單
在功能的基礎上,軟體還需要操作簡單。工具是為了提高效率的,太複雜的操作會間接的降低效率。比如:你本來就是為了編輯點文本,但是得花半年甚至更多時間去學習編輯工具。等你學完了,黃花菜都涼了。(無意黑誰,只是提醒注意任務的主次!)
符合直覺
符合直覺就是說,當你剛接觸一個軟體的時候,可以靠猜或者隨便點點就能掌握基本的功能!
典型的反面例子就是Vim!當一個完全沒接觸過Vim的人,開啟Vim,三秒鐘就懵逼了!怎麼輸入?怎麼儲存?怎麼退出?目前我使用Vi的原因是Vi是Linux預設安裝的文字編輯器!
有人會說,Vim的編輯效率很高,各種奇技淫巧!這點我承認,但是對我來說,然並卵,這個下面再提!
符合“簡單”的工具,先推薦兩個,Markdown和Pandoc!
Markdown三分鐘入門
Markdown就是一個很簡單的工具!
檔案名稱以md結尾
| 文法 |
說明 |
| # title |
標題,一個#號代表一個層級 |
| - text |
列表 |
| \1. text |
還是列表 |
| [text](url) |
連結 |
|  |
圖片 |
| > text |
引用 |
| *斜體* |
斜體 |
| **粗體** |
粗體 |
| ` ` ` |
代碼(去除空格,避免CSDN解析加的空格) |
示範請見下面的gif!
Pandoc三十秒入門
Markdown負責內容,Pandoc則負責展示!Pandoc是個牛逼的格式轉換工具!請至官網查看Pandoc支援的轉換類型!(很多,這裡不貼了~)
比如你想把Markdown轉換成Word
pandoc source.md -o target.docx
那如果你想把Markdown轉換成epub,html,你猜你該輸什麼命令呢?
跨平台/全平台
做前端的同學深有體會,各種瀏覽器安全色性問題!但是為了使用者能在各個瀏覽器上看到一樣的效果,還是忍了!
我們用的工具也一樣。一般我們會在Windows或者Mac上開發,而部署都是在Linux上!所以我們當然希望能有工具既能在Windows上運行,也能在Mac和Linux上運行。當然功能和使用感受要完全相同。
比如,Notepad++,ULtraEdit,EditPlus,Office是在Windows上接受度比較高的編輯類軟體,TextMate是Mac上很知名的編輯器。但是一出這個系統,你就用不了了,就得花時間再去學另一個軟體,也是一種浪費!
顏值
好看這個東西,見仁見智!自己覺得好看就行了!比起意淫使用者喜歡什麼樣的配色、布局、字型!自己喜歡什麼樣的配色、布局、字型,應該很簡單吧?比如,我就比較偏愛暗色系的主題!當初NetBeans就是因為顏值太差,被我拋棄了~
現在來看Vim和Emacs,顏值也是比較差的。不過兩者的定製化比較高,可以按自己的需求來配置。不過由於曆史遺留問題,有些功能靠配置是沒法解決的。比如說,現在編輯器裡都預設內建的分類樹和頁簽。Vim和Emacs都是類比出來的,看起來很不協調!
有人可能覺得顏值不重要!你可以把下面的圖片設為背景,幹一天活試試~
速度
做網站另一個重點要考慮的問題就是速度。一般首頁都是要最佳化到秒開的!對於工具來說,其實也有這個問題。比如說,你靈感突現,需要趕緊記下來,然後開啟Word,Word剛開啟,你忘了~
不限制/打斷思考
不知道大家是如何定義自己的工作性質的?我很贊同《人件》裡所說的,我們實際上是“非高科技腦力勞動者”!
既然是腦力勞動者,我們的主要工作是思考,手快沒用,腦子快才是王道!(所以Vim輸入再快都沒用,你得腦子轉得夠快才行,手快只是輔助,協助記錄所想!)所以我們需要有工具能協助我們思考!至少不能限制和打斷我們的思考!
這也是我選擇工具時很看重的一點!從這一點來看的話,其實很多軟體都不合格!
集中吐槽
上面列出了幾點需求,同時小吐槽了一下。這裡集中吐槽幾款工具!
Office
- 簡單:★★☆
- 跨平台/全平台:★☆
- 顏值:★★☆
- 速度:★★
- 不限制/打斷思考:★★
從簡單性來說,Office入門容易,精通難!Windows專屬,其他平台都是第三方軟體!顏值一般,速度一般!
最大的問題是很容易打斷思考!大家可以回憶下,我們用Office寫文檔或者寫PPT的時候,是怎麼寫的?這個地方字型是不是要加粗?該用幾號字型?這個圖片該放哪裡?有多少是涉及到內容本身的?分分鐘就跑偏的節奏!
eclipse
- 簡單:★☆
- 跨平台/全平台:★★★★☆
- 顏值:★★
- 速度:★
- 不限制/打斷思考:★
eclipse在Java界是預設的IDE,我很早之前就拋棄了。現在看來,它的各種毛病都還在!
首先說簡單,作為一個專業IDE,就已經和簡單不掛鈎了!全平台支援,這個值得表揚!沒給五星,是因為在各個平台下的體驗還是有些許的差異的!顏值在預設主題下還好,但是自訂佈景主題就露餡了!
看工具列的按鈕,鋸齒明顯!
速度只能說,我等得花都謝了~
eclipse的主要問題也在打斷思維上!
- Crash: 我最初使用eclipse的時候是3.0左右,時不時就crash!我想好思路想實現了,eclipse不見了~你說鬱悶不鬱悶?
- 快速鍵:eclipse流行的一個原因就是它的外掛程式機制。可能是太開放的原因,外掛程式功能快速鍵根本不統一!比如說:我編寫Java,Ctrl-Shift-F是格式化!我編寫JSP或者其他語言的時候,格式化快速鍵就不是這個了!一個軟體,我要學幾套快速鍵嗎?
- 儲存時編譯:雙刃劍,機器差一點,立馬卡頓~
- 噁心的進度條:eclipse的很多操作都會出現進度條。有些進度條還好,在後台。有些進度條就直接彈出,還不讓後台執行。每個進度條後面都有個終止按鈕,但是沒鳥用~你按了,按鈕置灰,捲軸還在歡快的滾~
Java
- 簡單:★★★
- 跨平台/全平台:★★★★★
- 顏值:
- 速度:★★
- 不限制/打斷思考:★★
吐槽完工具,來吐槽語言!Java是門不錯的工程語言。
網上吐槽比較多的是Java的啟動速度和文法不靈活!我覺得最大的問題也是限制思考!
- Java只支援物件導向編程!所有的東西都是對象!這就像你手裡拿著鎚子,看什麼都是釘子!物件導向比較善於建模,但是不擅長計算!這也是為什麼目前新語言大部分都支援多種編程範式:Clojure,Kotlin,Scala,Golang
- Java對物件導向編程,支援得並不徹底!例如:物件導向推薦與對象相關的行為最好和該對象關聯,像people.walk(),computer.start()這樣的代碼形式!但是對已有的對象,除了繼承,Java沒有其他的方法可以添加行為!這也就是為什麼Java裡有那麼多Util類的一個原因!
推薦工具Markdown+Pandoc
- 簡單:★★★★
- 跨平台/全平台:★★★★★
- 顏值:
- 速度:★★★★
- 不限制/打斷思考:★★★★
Markdown和Pandoc在上面都做過了介紹。這裡總結下,使用Markdown專註內容,而使用Pandoc來進行展示。
Intellij IDEA
- 簡單:★☆
- 跨平台/全平台:★★★★☆
- 顏值:★★★★
- 速度:★
- 不限制/打斷思考:★★★★
IDEA啟動速度很慢,不過每天就啟動一次,啟動完後基本就是指哪打哪的神器!貼幾張網上的gif圖!
PlantUML
- 簡單:★★★
- 跨平台/全平台:★★★★★
- 顏值:★★★
- 速度:★★★★
- 不限制/打斷思考:★★★★
PlantUML是基於Graphviz的所想即所得的繪圖工具,相關內容請見官網,不做過多介紹!
PlantUML的一個顯著缺點是,當元素多了以後,並不好維護!
所以我主要使用PlantUML做局部的建模!
從使用者體驗角度看工具