用戶界面(UI,User Interface)是用戶交互以使用軟件的前段應(yīng)用程序視圖。用戶可以通過用戶界面操作和控制軟件和硬件。今天,幾乎所有存在數(shù)字技術(shù)的地方都可以找到用戶界面,從計算機、手機、汽車、音樂播放器、飛機、輪船等。
用戶界面是軟件的一部分,其中涉及方式旨在提供用戶對軟件的洞察力。UI 為人機交互提供了基礎(chǔ)平臺。
UI 可以是圖形化的、基于文本的、基于音頻的和視頻的,這取決于底層的硬件和軟件組成。UI 可以是硬件或軟件,也可以是兩者的組合。
一個好的用戶界面應(yīng)該是:
- 吸引人的
- 使用簡單
- 短時間內(nèi)響應(yīng)
- 清楚明了
- 在所有界面屏幕上保持一致
UI大致分為兩類:
- 命令行界面(Command Line Interface,CLI)
- 圖形用戶界面(Graphical User Interface,GUI)
命令行界面
在視頻顯示監(jiān)視器出現(xiàn)之前,CLI 一直是與計算機交互的絕佳工具。CLI 是許多技術(shù)用戶和程序員的首選。CLI 是軟件可以提供給用戶的最小界面。
CLI 提供了命運提示符,用戶可以在此輸入命令并向系統(tǒng)提供信息。用戶需要記住命令的語法及其用法。早起的 CLI 沒有被編程來有效地處理用戶錯誤。
命令是對指令集的基于文本的引用,預(yù)期由系統(tǒng)執(zhí)行。有宏、腳本等方法,方便用戶操作。
與 GUI 相比,CLI 使用更少的計算機資源。
CLI 元素
基于文本的命令行界面,可以有以下元素:
- 命令提示符?- 它是基于文本的通知程序,主要顯示用戶工作的上下文。它是由軟件系統(tǒng)生成的。
- 光標?- 它是一個小的水平線或線高的垂直條,表示打字時字符的位置。光標大多處于閃爍狀態(tài)。它隨著用戶寫入或刪除內(nèi)容而移動。
- 命令?- 命令是可執(zhí)行的指令。它可能有一個或多個參數(shù)。命令執(zhí)行的輸出顯示在屏幕上,。產(chǎn)生輸出時,命令提示符顯示在下一行。
圖形用戶界面
圖形用戶界面為用戶提供了與系統(tǒng)交互的圖形方式。GUI 可以是硬件和軟件的組合。使用 GUI,用戶解釋軟件。
通常情況下,GUI 比 CLI 消耗更多資源。隨著技術(shù)的進步,程序員和設(shè)計人員可以創(chuàng)建復(fù)雜的 GUI 設(shè)計,以提高工作效率、準確性和速度。
GUI 元素
GUI 提供了一組與軟件或硬件交互的組件。
每個圖形組件都提供了一種使用系統(tǒng)的方法。GUI 系統(tǒng)具有以下的元素,如:
- 窗口?- 顯示應(yīng)用程序內(nèi)容的區(qū)域。如果窗口表示文件結(jié)構(gòu),則窗口中的內(nèi)容可以以圖標或列表的形式顯示。用戶可以更輕松地瀏覽窗口中的文件系統(tǒng)中導航。Windows 可以最小化、調(diào)整大小或最大化到屏幕大小。它們可以移動到屏幕上的任何位置。一個窗口可能包含同一應(yīng)用的另一個窗口,稱為子窗口。
- 標簽?- 如果應(yīng)用程序允許執(zhí)行自身的多個實例,它們將作為單獨的窗口出現(xiàn)在屏幕上。選項卡式文檔界面已經(jīng)出現(xiàn),可以在同一個窗口中打開多個文檔。此界面還有助于查看應(yīng)用程序中的首選項面板。所有現(xiàn)代網(wǎng)絡(luò)瀏覽器都是用此功能。
- 菜單?- 菜單是一組標準命令,組合在一起并放置在應(yīng)用程序窗口內(nèi)的課件位置(通常是頂部)。菜單可以被編程為在鼠標點擊時出現(xiàn)或隱藏。
- 圖標?- 圖標是代表關(guān)聯(lián)應(yīng)用程序的小圖片。單擊或雙擊這些圖標時,將打開應(yīng)用程序窗口。圖標以小圖片的形式顯示系統(tǒng)上安裝的應(yīng)用程序和程序。
- 光標?- 鼠標、觸摸板、數(shù)字筆等交互設(shè)備在 GUI 中表示為光標。屏幕光標幾乎實時跟隨硬件指令。光標在 GUI 系統(tǒng)中稱為指針。它們用于選擇菜單、窗口和其他應(yīng)用程序功能。
特定的應(yīng)用程序的GUI組件
應(yīng)用程序的 GUI 包含一個或多個列出的 GUI 元素:
- 應(yīng)用程序窗口?- 大多數(shù)應(yīng)用程序窗口使用操作系統(tǒng)提供的結(jié)構(gòu),但許多使用他們自己的客戶創(chuàng)建的窗口來包含應(yīng)用程序的內(nèi)容。
- 對話框?- 它是一個子窗口,包含給用戶的消息并請求采取一些行動。例如:應(yīng)用程序生成一個對話以獲取用戶確認刪除文件。
- 文本框?- 為用戶提供一個區(qū)域來鍵入和輸入基于文本的數(shù)據(jù)。
- 按鈕?- 它們模擬現(xiàn)實生活中的按鈕,用于向軟件提交輸入。
- 單選按鈕?- 顯示可供選擇的選項。在所有提供的選項中只能選擇一種。
- 復(fù)選框?- 功能類似于列表框當一個選項被選中時,該框被標記為選中??梢赃x擇由復(fù)選框表示的多個選項。
- 列表框?- 提供可供選擇的可用項目列表??梢赃x擇多個項目。
其他令人印象深刻的 GUI 組件包括:
- 滑塊
- 組合框
- 數(shù)據(jù)網(wǎng)格
- 下拉列表
用戶界面設(shè)計活動
有許多活動用于設(shè)計用戶界面。GUI 設(shè)計和實現(xiàn)的過程與 SDLC 類似。任何模型都可以用于瀑布模型、迭代模型或螺旋模型之間的 GUI 實現(xiàn)。
用于 GUI 設(shè)計和開發(fā)的模型應(yīng)完成這些 GUI 的具體步驟:
- GUI需求搜集?- 設(shè)計師可能希望擁有 GUI 的所有功能和非功能需求列表。這可以從用戶和他們現(xiàn)有的軟件解決方案中獲取。
- 用戶分析?- 設(shè)計師研究誰將會使用軟件 GUI。目標受眾很重要,因為設(shè)計細節(jié)會根據(jù)用戶的知識和能力水平發(fā)生變化。如果用戶精通技術(shù),則可以合并高級和復(fù)雜的 GUI。對于新手用戶,包含有關(guān)軟件操作方法的更多信息。
- 任務(wù)分析?- 設(shè)計師必須分析軟件解決方案要完成的任務(wù)。在 GUI 中,如何完成并不重要。任務(wù)可以采用分層方式表示,將一項主要任務(wù)進一步劃分為更小的子任務(wù)。任務(wù)為 GUI 呈現(xiàn)提供目標。子任務(wù)之間的信息流決定了軟件中 GUI 內(nèi)容的流向。
- GUI設(shè)計與實現(xiàn)?- 設(shè)計師在獲得有關(guān)需求、任務(wù)和用戶環(huán)境的信息后,設(shè)計 GUI 并將其實現(xiàn)為代碼,并在后臺將 GUI 嵌入到工作或虛擬軟件中。然后由開發(fā)人員自行測試。
- 測試?- GUI測試可以通過多種方式完成。組織可以進行內(nèi)部檢查,用戶直接參與和發(fā)布測試版很少。測試可能包括可用性、兼容性、用戶接受度等。
GUI實現(xiàn)工具
有多種工具可供設(shè)計人員通過單擊鼠標創(chuàng)建整個 GUI。一些工具可以嵌入到軟件環(huán)境(IDE)中。
GUI 實現(xiàn)工具提供了強大的 GUI 空間陣列。對于軟件定制,設(shè)計人員可以相應(yīng)地更改代碼。
GUI 工具根據(jù)其不同的用途和平臺有不同的細分市場。
例子
移動GUI、計算機GUI、觸摸屏GUI等。這里羅列出一些可以方便地構(gòu)建 GUI 的工具:
- Fluid
- AppInventor(安卓)
- LucidChart
- Wavemaker
- Visual Studio
用戶界面黃金法則
Shneiderman 和 Plaisant 在他們的書(設(shè)計用戶界面)中描述了以下規(guī)則是 GUI 設(shè)計的黃金法則:
- 力求一致性?- 在類似情況下,應(yīng)要求采取一致的行動順序。在提示、菜單和幫助屏幕中應(yīng)使用相同的術(shù)語。應(yīng)始終使用一致的命令。
- 允許頻繁使用的用戶使用快捷方式?- 用戶減少交互次數(shù)的愿望隨著使用頻率的增加而增加??s寫、功能鍵、隱藏命令和宏工具對專家用戶非常有幫助。
- 提供信息反饋?- 對于每個操作員操作,都應(yīng)該有一些系統(tǒng)反饋。對于頻繁和次要的行動,反應(yīng)必須適度,而對于不頻繁和重大的行動,反應(yīng)必須更加實質(zhì)性。
- 設(shè)計對話框以產(chǎn)生閉合?- 一系列動作應(yīng)組織稱具有開頭、中間和結(jié)尾的組。一組動作完成時的信息反饋給操作員帶來成就感、解脫感、放棄應(yīng)急計劃和選項的信號,這表明前進的道路已經(jīng)清晰,可以為下一次做準備。
- 提供簡單的錯誤處理?- 盡可能將系統(tǒng)設(shè)計為用戶不會犯嚴重錯誤。如果發(fā)生錯誤,系統(tǒng)應(yīng)該能夠檢測到它并提供簡單易懂的機制來處理錯誤。
- 允許容易逆轉(zhuǎn)的動作?- 此功能可緩解焦慮,因為用戶知道錯誤可以撤銷。輕松逆轉(zhuǎn)動作鼓勵探索不熟悉的選項??赡嫘詥挝豢梢允菃蝹€動作、一個數(shù)據(jù)條目或一組完整的動作。
- 支持內(nèi)部控制點?- 有經(jīng)驗的操作員強烈希望感覺他們負責系統(tǒng)并且系統(tǒng)響應(yīng)他們的動作。設(shè)計系統(tǒng)使用戶成為行動的發(fā)起者而不是響應(yīng)者。
- 減少短期記憶負荷?- 人類信息處理在短期記憶中的局限性要求顯示保持簡單,合并多頁顯示,減少窗口運動頻率,并為代碼、助記符和動作序列分配足夠的訓練時間。
更多建議: