大家都知道Java中數組的聲明、定義和初始化是這樣一氣呵成的(動態初始化):
int mm[]; mm=new int[4]; mm[0]=1; mm[1]=2; mm[2]=4; mm[3]=5;
當然也可以一次性解決(靜態初始化):
int mm[]={ 1, 2, 4, 5 };
而如果你在編碼時做了如下改動,你覺得會發生什麼事情?
第一種:
int mm[]; mm=new int[4]; mm[0]=1; mm[1]=2; mm[2]=4;// mm[3]=5;
當然了,數組長度不變,mm[3]=0.
第二種:
int mm[]={ 1, 2, 4,// 5 };
你是覺得會報錯呢還是正常使用而數組長度還是4?
你可能會受到第一種情況的影響而做出判斷。
答案是,正常使用,數組長度為3.
和int mm[]={1,2,4};等同。
多麼人性化的設計,多麼貼心啊!
從心理上來講,我粗魯的注釋掉了一個數組元素而沒有做其他相應的修改,顯然這樣做是不對的,但是java對待錯誤的反饋是那麼寬容,這麼美好的使用者體驗我很是佩服。
這隻是偉大java的一個小縮影,但還是令我震動不已。
當使用者使用我們設計的軟體,有沒有這種待遇了呢?我有過很多痛苦的回憶,因為那種罵娘的事情還真多呀。
比如我在編輯簡訊的時候,按了回退鍵用以消除一個字元,沒想到退出了編輯介面,剛才打的字全沒了;在比如還是編輯簡訊,誤按了菜單鍵,菜單介面跳了出來,關掉它,卻回到了主菜單,輸入的簡訊內容全部消失。
每每遇到這種問題時,再好的脾氣也會忍不住罵幾句的。
所以,很希望自己設計出來的軟體不被使用者罵,我為自己規定了如下的要求:
一、深入瞭解使用者習慣
每個軟體都會有自己的受眾人群,這一點我們心裡要有數。尤其我們寫手機程式的,使用者面最廣,這就不可能要求每個使用者都是大學畢業,或者懂你的設計思想。你要遇見最苛刻的條件,比如使用者是個手機盲,是個電腦盲。這樣的使用者會有什麼樣的習慣呢?多與他們溝通,看他們有什麼想法。換位思考一下,你如果在他們的使用環境、行業、個人習慣,你會有什麼要求?設計前多思考一下這方面的事情,益處多多。
二、提出合理化建議,提升使用者體驗
從第一步中,你也許會得到差異化的反饋,有的使用者認為這樣對,有的認為那樣好,如果他們之間也會有衝突,那麼就需要你出面來解決。調查更多的使用者或主題專家,再根據自己的想法,提出合理化建議。此時要做到讓使用者沒有抵觸情緒,好的使用者體驗是個高深的技術,在於積累和細微之處見精神。這裡要做的工作很多。
三、自己做小白鼠
我們設計的程式要上線,首先要過自己這一關。自己反覆使用,自己首先發現問題(這樣省的測試員來找你麻煩)。你會發現,你在使用自己設計的軟體中,會不自覺的犯一些低級錯誤,就像剛剛提到的誤按其他鍵等,你需要有個好的容錯設計、人性化的提醒。你要做這個軟體的使用高手,好的程式員也是好的測試員。
從事軟體開發行業的我們,都會有這樣的夢想,就是做出大家喜歡的軟體。這其中的艱辛只有我們自己知道,只要我們用心去做,一定能夠成功!