• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            一個例子

            讓我們來假象一個場景:用戶正在使用一套類似“信息管理系統(tǒng)”的軟件,準備新增一條記錄,輸入完全部的數(shù)據(jù)后,軟件卻給出一條錯誤提示:

             

            用戶可能此時已經(jīng)崩潰在屏幕前了,因為需要輸入的記錄可能有很多條,這意味著他不得不一項一項檢查數(shù)據(jù)。

            但換一種場景:用戶同樣輸入完后,軟件給出提示:

             

            同時,點擊確定后,光標自動跳轉(zhuǎn)到錯誤的地方,用戶只需輸入正確的信息就可以了。這樣避免了很多額外的工作量,省時省力。

            人性化的提示信息

              在我們使用軟件時,經(jīng)常出現(xiàn)一些錯誤。這時程序可能只是簡單地提示“出錯啦!”,或者給出一大堆錯誤代碼。這經(jīng)常使初學者很茫然不知所措。如今,軟件正越來越朝著人性化的方向發(fā)展,如何實現(xiàn)人性化的語言提示,是軟件開發(fā)中一件至關(guān)重要的事。它不僅體現(xiàn)支持與服務(wù)的質(zhì)量、影響產(chǎn)品的銷量、更會表現(xiàn)出一家軟件公司的風格——我們對用戶有無微不至的關(guān)懷。

            人性化提示的重要性不言而喻,它包括的內(nèi)容也很廣泛但要做到人性化提示并不是一件簡單的事情,它涉及到數(shù)據(jù)有效值分析、錯誤處理、異常拋出、層之間數(shù)據(jù)傳遞、程序執(zhí)行效率分析、人性化語言設(shè)計等眾多方面方面的內(nèi)容。

            設(shè)計與要點

            結(jié)合近期嘗試制作的“學生信息管理系統(tǒng)”,在程序人性化信息提示方面,我個人認為需要在開發(fā)時做到以下幾點:

            第一,要有嚴格的數(shù)據(jù)檢查。這是人性化錯誤提示的基礎(chǔ),連錯誤都發(fā)現(xiàn)不了,就提不上什么人性化錯誤提示了。首先,要搞清楚各種數(shù)據(jù)的合法條件;其次,在涉及到數(shù)據(jù)傳遞的每個類中加入常規(guī)檢查函數(shù),保證程序的健壯性,需要特別注意邊界值上的問題;最后,一些特殊數(shù)據(jù)的特殊檢查函數(shù),并選擇在合適的類中實現(xiàn),如ID是否重復的檢查就應放在鏈表類中進行。

            第二,設(shè)計錯誤信息的上拋機制。一旦檢查出錯誤,一定不能直接停止運行,而不管其他的事情。最簡單的檢查函數(shù)返回值會是bool類型,即檢查通過與不通過。顯然,這樣設(shè)計的函數(shù)無法提供更具體的信息,也就無法進行提示了。個人認為,除非是在UI層的單項檢查,否則最好設(shè)計返回值為int類型的函數(shù),為了避免混亂,可以使用枚舉類型來用ERR_開頭的單詞代替數(shù)字。你也可以直接返回字符串類型的錯誤信息,但是這樣就會有大量的信息在各個層之間不斷上拋,會造成程序效率降低。當然,可能另一種更好的錯誤處理的方式是拋出異常,但對于我們初學者來說,還接觸不到這些知識。

            第三,UI層的呈現(xiàn)方式。錯誤信息經(jīng)過層層上拋,終于到達了UI層,此時就要考慮如何去呈現(xiàn)給用戶了。一般來說,最常用的方式是彈出對話框,這樣做雖然簡單,但有時候也不免會出現(xiàn)這樣的情況——用戶面對點不完的對話框無語了。此時,個人認為有兩種處理方式:一種是將所有的錯誤信息整合后放在一個對話框中彈出,如開篇提到的第二種情景里的;另一種則是直接提示在原對話框上提示,如一般網(wǎng)站才用的方式——在錯誤的數(shù)據(jù)后打上*號。這兩種方式都有缺點,對于前者,如果錯誤的數(shù)據(jù)較多,很可能用戶點完確定就忘記哪些信息發(fā)現(xiàn)錯誤;對于后者,可能用戶不會在意到錯誤提示,而且,需要在窗口上添加很多控件。一種比較好的方法是綜合兩者的優(yōu)點——彈出錯誤信息,然后將錯誤信息整合在UI的ERROR_LIST中。還有一些類似網(wǎng)頁形式的提示信息如控件上的Popup Message等,但總體來說,在MFC中實現(xiàn)可能會比較難。

            另外,提示文字的設(shè)計也是一門藝術(shù),它會極大的影響到用戶的使用感受,但本文作為技術(shù)文檔就不涉及此方面的內(nèi)容了。

            總結(jié)

            要實現(xiàn)人性化的信息提示,需要考慮很多方面問題,雖然實現(xiàn)起來難度要比核心的設(shè)計要簡單得多,但這確實是軟件設(shè)計中一個很實際也很有挑戰(zhàn)性的問題,它牽涉到用戶的使用的方便性與易用性,也遵循了軟件開發(fā)與服務(wù)的根本——“客戶需求”。

            這是我在這次中軟國際實訓中提交的技術(shù)文檔,各位老鳥看了不要笑,呵呵,歡迎大家評論!

            posted on 2008-07-14 20:41 斯卡 閱讀(1435) 評論(1)  編輯 收藏 引用
            久久久久女人精品毛片| 久久99精品国产自在现线小黄鸭| 四虎国产精品免费久久5151| 99久久精品免费观看国产| 免费一级做a爰片久久毛片潮| 99精品久久精品一区二区| 国产ww久久久久久久久久| 久久国产色av免费看| 久久国产热这里只有精品| 亚洲国产精品无码久久久蜜芽| 久久免费美女视频| 五月丁香综合激情六月久久| 久久久精品视频免费观看 | 国产一久久香蕉国产线看观看| 久久国产成人午夜aⅴ影院| 狠狠88综合久久久久综合网| 伊人丁香狠狠色综合久久| 一本色道久久99一综合| 久久青青国产| 情人伊人久久综合亚洲| 欧美熟妇另类久久久久久不卡| 无码任你躁久久久久久老妇| 久久国产精品久久精品国产| 久久精品一区二区三区不卡| 久久免费的精品国产V∧| 久久久国产亚洲精品| 国产美女亚洲精品久久久综合| 久久久精品国产亚洲成人满18免费网站 | 女人香蕉久久**毛片精品| 久久久久一级精品亚洲国产成人综合AV区| 久久久久久国产a免费观看黄色大片 | 久久久久se色偷偷亚洲精品av| 亚洲嫩草影院久久精品| 国产精品一久久香蕉国产线看观看| 久久精品国产男包| 亚洲国产精品无码久久| 99蜜桃臀久久久欧美精品网站| 久久AV高潮AV无码AV| 亚洲国产精品无码久久| 久久不射电影网| 91久久国产视频|