寫好登錄註冊-向商業軟件的蛻變

註冊、登錄,看似非常簡單的功能,曾經多少入門級的軟件書籍都是以這個做爲Hello world級別的程序進行講解,但是,有幾個人能夠真正搞清楚這個看似簡單的程序,離商業(產品級)級的應用還差多少?這些也是一個初級程序員在實現時要考慮的。下面我們來一起討論:
一、登錄



這個就是大家所做的登錄界面,做爲商業級應用,下面的一些重要因素,你可能沒有全部考慮到:
1、“登錄”按鈕是否只能有鼠標點擊觸發。這一點關係到用戶體驗,有些有戶在輸入用戶名、密碼後,可能直接按回車。
2、用戶名和密碼是否做了非空檢測。客戶端做數據的合法性檢測有利於提高軟件可用性,提高向用戶反饋數據合法性問題的速度,所以,數據合法性驗證在客戶端(提高響應速率)、服務器端(做最後的驗證)都得做。
3、錯誤的提示是否友好。你可以直接用一個alert提示,但這對於用戶來說似乎有些突兀,最好還是採用其它的提示方式,比如:在頁面上加一個醒目的div區域,所有提示信息都顯示在這裏。
4、當錯誤發生提示用戶後,界面焦點是否在合理的控件上。比如:我們在登錄失敗時,就可以將焦點移動密碼輸入框上,用戶可重新輸入密碼。
5、 是否加入了驗證碼機制。爲了系統的安全性,重要的登錄窗口一般都需要要上圖片驗證碼機,以訪止非法的機器登錄,當然,這點也要根據項目需求來定,加了驗證 碼會增加用戶登錄的複雜性。我發現騰訊QQ郵箱在這方面做得比較好,當它發現你兩次登錄的IP地址不在一個城市或連續兩次輸入密碼錯誤時,纔會出現圖片驗 證碼。
6、服務器端密碼驗證,是否忽略大小寫。這一點要根據系統非功能性需求來定,如果用戶的計算機應用水平較低,就得考慮是否忽略密碼大小寫驗證問題。
7、正在登錄的過程中,是否給用戶一個進度或文字提示,特別是在登錄速度比較慢的情況下非常重要,一定要讓用戶明白系統正在做的事情以及做的進度。
8、登錄正在進行中,“登錄”按鈕是否已經設置爲不可點。
9、是否提供了記住用戶名(甚至密碼)的選擇項。你要相信,很多用戶都是非常懶的,所以,我們在實現上一定得考慮周全。
上面的一些看似細小的地方,恰恰是一個商業軟件要注意的地方,任何一個地方沒有做好,都有可能會降低產品的競爭力。
下面再來說一下注冊,註冊程序要注意這些細節:



1、你的註冊按鈕(或鏈接)是否醒目。我想大家一定遇到過不容易找到註冊賬號位置的網站而憤然離開的情況。
2、註冊界面上是否說明了註冊賬號後有什麼優勢。如果沒有說明白這一點,很多用戶即使打開了註冊界面,也會隨即離開。
3、註冊用戶名是否已經存在,註冊必填信息是否已經填寫,註冊信息填寫是否符合要求,這些字段驗證後的結果提示一定要友好,道理和登錄是一樣的。
4、圖片驗證碼是否已經添加,和登錄一樣,原因不再重複解釋。
5、 註冊驗證方式是否已經確定。這條我要說一下,很多網站註冊都需要郵件驗證激活或手機碼驗證激活等,這些驗證激活過程會讓一些用戶在沒有註冊成功的情況下半 途離開,造成不必要的用戶流失,因此,這點一定得注意,很多遊戲類的網站都不需要激活,而sns類的可能需要,我們得根據項目的實際需求來定。
6、註冊信息提交過程中,是否有友好的提示,告訴用戶目前的狀態。
7、註冊按鈕是否已經設置爲不可用。你不要認爲這些細節我在重複的說哦,我曾經在一個項目中就是因爲不注意這些細節,造成同一條用戶註冊信息在數據庫中添加多次的情況,最終找到的原因就是這個。
8、 註冊成功後,是否直接自動登錄到系統。這點也是從用戶體驗來說的,如果用戶註冊成功後直接自動登錄進入系統,爲用戶帶來了方便。但我曾經的一個網站項目 中,用戶登錄成功後直接登錄到系統,在頁面右上角顯示用戶狀態信息,但隨即發現用戶根本注意不了右上角狀態的變化,以爲自己沒有註冊成功,進而再次進行注 冊,後來,我們採取在用戶登錄成功後,用顯著的方式告訴用戶已經登錄成功,並提醒注意右上角的信息變化,問題纔得到妥善解決。
9、必填字段是否已經加了標識,比如:一個紅色的*,一些選擇字段是否設置了初始值以簡化用戶註冊過程。
10、如果註冊時填寫了郵箱信息,註冊成功後最好給用戶發一封祝賀郵件。
非 常敬佩周鴻偉提出的產品微創新方法,如何把簡單的功能做得更貼進用戶,確實又是一個非常深入的學問和課題(老大一直喊我們研究ui呢,我們的時間緊啊), 我發現,做爲出道不久的程序員,往往不注意這些產品實現細節,但是細節會決定成敗,影響產品的競爭力,本文中我僅用登錄、註冊做來範例來分析,希望大家能 在實現項目中做到舉一反三,快速完成一個新手到老手的蛻變,寫出產品級的優秀系統!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章