鍍金池/ 教程/ iOS/ 從概念到產(chǎn)品
錢包
iCloud
控件
適應(yīng)性和布局
編輯菜單(Edit Menu)
從概念到產(chǎn)品
啟動(dòng)與停止
3D 觸摸
VoiceOver
Live Photos
HomeKit
臨時(shí)視圖
游戲中心(Game Center)
快速查看(Quick Look)
交互性與反饋
與 iOS 的整合
鍵盤和輸入頁面(Keyboards and Input Views)
iAd 富媒體廣告(iAd Rich Media Ads)
術(shù)語和措辭
HealthKit
案例學(xué)習(xí):從桌面到 iOS
導(dǎo)航
撤銷與重做(Undo and Redo)
研究型應(yīng)用程序
社交媒體
蘋果的移動(dòng)支付平臺(tái)
圖標(biāo)和圖形
iOS 應(yīng)用解析
為 iOS 而設(shè)計(jì)
路線選擇(Routing)
設(shè)計(jì)原則
應(yīng)用內(nèi)購買服務(wù)(In-App Purchase)
品牌推廣
動(dòng)畫
聲音(Sound)
多任務(wù)處理
內(nèi)容視圖
應(yīng)用擴(kuò)展
通知
訪問用戶數(shù)據(jù)(Accessing User Data)
無線打印 (AirPrint)
模態(tài)情境
顏色與字體

從概念到產(chǎn)品

定義應(yīng)用

應(yīng)用的定義是對(duì)應(yīng)用主要功能和目標(biāo)用戶的簡明具體的描述。

盡可能早的創(chuàng)建應(yīng)用的定義可以幫助你將一個(gè)想法和功能清單轉(zhuǎn)換為用戶想要的條理清晰的產(chǎn)品。在開發(fā)過程中,可以使用定義來決定某些功能和行為是否合理。使用以下幾個(gè)步驟來創(chuàng)建一個(gè)可靠的應(yīng)用定義。

1.列出所有你認(rèn)為用戶可能喜歡的功能

可以直接進(jìn)行頭腦風(fēng)暴。此時(shí),你需要列出所有與產(chǎn)品核心想法有關(guān)的任務(wù)。不用擔(dān)心清單太長,因?yàn)榻酉聛頃?huì)進(jìn)行刪減。

假設(shè)你一開始的想法是開發(fā)一個(gè)幫助人們購買食品雜貨的應(yīng)用。你可以思考在進(jìn)行這項(xiàng)活動(dòng)時(shí),會(huì)涉及到那些相關(guān)的任務(wù),這些就是用戶可能感興趣的潛在功能。例如:

  • 創(chuàng)建清單
  • 查找食譜
  • 比較價(jià)格
  • 定位商店
  • 給食譜做注釋
  • 查找并使用的優(yōu)惠劵
  • 查看烹飪演示
  • 探索不同的烹調(diào)方法
  • 尋找某些食材的替代物

2.確定目標(biāo)用戶

現(xiàn)在你需要清楚的將你的應(yīng)用用戶與其他 iOS 用戶區(qū)分開來。確定在此情此景下,什么是對(duì)你的用戶最重要的。在食品雜貨例子中,你可能需要問問你的用戶:

  • 通常是在家里做飯還是更喜歡現(xiàn)成的食物
  • 是忠實(shí)的優(yōu)惠券用戶還是認(rèn)為優(yōu)惠券沒多大價(jià)值
  • 喜歡尋找特別的食材還是喜歡基本食材
  • 嚴(yán)格的按照食譜做菜還是只把食譜當(dāng)做靈感來源
  • 喜歡少量多次購買還是一次性購買大量食物
  • 希望能保留多個(gè)不同目的的購物清單還是只希望記錄回家路上需要購買的幾個(gè)東西
  • 堅(jiān)持使用固定的品牌還是會(huì)使用方便的替代品
  • 習(xí)慣于購買固定的一些物品還是會(huì)按照食譜來購買 思考過這些問題之后,假設(shè)你可以提取出目標(biāo)用戶的三個(gè)特征:喜歡按照食譜進(jìn)行嘗試,時(shí)常很匆忙,通常情況下比較節(jié)儉。

3.根據(jù)目標(biāo)用戶過濾功能清單

如果在確定了一些用戶特征后,你最終得到幾個(gè)主要功能,恭喜你在做正確的事情:好的 iOS 應(yīng)用應(yīng)該是高度聚焦在能幫用戶完成的任務(wù)上的。

例如,即使第一步想出的那些可能需要的功能都是有用的,也不一定是第二步定義的目標(biāo)用戶需要的。

當(dāng)你在目標(biāo)用戶的使用情境下檢查功能清單時(shí),就可以判斷你的應(yīng)用應(yīng)該聚焦在三個(gè)主要功能上:創(chuàng)建清單,獲得并使用優(yōu)惠劵,獲得食譜。

此時(shí)你就可以給出應(yīng)用定義了,總結(jié)該應(yīng)用為誰做和做什么。食品雜貨購買應(yīng)用的定義可能如下:

“為熱愛烹飪且節(jié)儉的用戶訂制的創(chuàng)建購物清單工具?!?/p>

4.不止于此

應(yīng)用定義應(yīng)該貫穿于整個(gè)開發(fā)過程,使用應(yīng)用定義確定功能,控件,措辭的合理性。例如:

當(dāng)你想要新增一個(gè)功能時(shí),問問自己這對(duì)應(yīng)用的主要目的和目標(biāo)用戶是否非常重要。如果不是,可以置之不理。例如,你已經(jīng)確定了你的用戶對(duì)大膽新穎的烹飪方法感興趣,那么著重展示盒裝蛋糕和現(xiàn)成的食物就不太合適。

當(dāng)你考慮用戶界面的外觀和操作時(shí),問問你自己你的用戶更喜歡簡單的、流線型的風(fēng)格,還是有明顯主題的風(fēng)格。以用戶目標(biāo)為指導(dǎo),理解用戶期望通過你的應(yīng)用完成什么,例如快速找到答案,找到深入而全面的內(nèi)容或者娛樂。例如,盡管你的食品雜貨清單應(yīng)用需要易于理解和快速上手,但你的用戶還是可能傾向于一個(gè)有關(guān)食物的主題界面。

當(dāng)你考慮應(yīng)該使用怎樣的措辭時(shí),考慮用戶在這個(gè)領(lǐng)域的專業(yè)程度。例如,盡管你的用戶可能不是由專業(yè)的大廚組成,但你也可以肯定他們希望看到有關(guān)食材和技術(shù)專用的措辭。

為任務(wù)量身訂制界面

最好的 iOS 應(yīng)用根據(jù)清晰的目標(biāo)和易用性來平衡用戶界面的設(shè)計(jì)。為了達(dá)到這種平衡,要確保在設(shè)計(jì)階段前期就考慮定制化。因?yàn)榭紤]品牌性,原創(chuàng)性和適銷性通常會(huì)影響定制化的決策,所以專注于定制化怎樣影響用戶體驗(yàn)是難的。

開始考慮應(yīng)用中的任務(wù):用戶執(zhí)行這些任務(wù)的頻率如何,在什么樣的環(huán)境下進(jìn)行?

舉個(gè)例子,想象一個(gè)計(jì)算器應(yīng)用使用的是精心設(shè)計(jì)的,充滿藝術(shù)感的風(fēng)格,并且使用了創(chuàng)新的層級(jí)去顯示大家熟悉的計(jì)算元素。這像藝術(shù)品一樣的細(xì)節(jié)渲染和創(chuàng)新層級(jí)并不會(huì)影響用戶去理解怎樣點(diǎn)擊按鈕和查看計(jì)算結(jié)果。但是對(duì)于只是簡單的需要完成工作的用戶,這種新奇的體驗(yàn)和美麗的界面很快就會(huì)失去效用,并且可能成為一種妨礙。

http://wiki.jikexueyuan.com/project/ios-9-human-computer-interface-guidelines/images/47.jpg" alt="" />

相反,隨身錄音室應(yīng)用(GarageBand)可以不展示好看的、逼真的樂器來幫助用戶制作音樂,但這樣會(huì)使應(yīng)用缺少身臨其境的愉悅感。在隨身錄音室里,界面不只是向用戶展示了如何使用,同樣使得制作音樂的主任務(wù)更容易完成。

http://wiki.jikexueyuan.com/project/ios-9-human-computer-interface-guidelines/images/48.jpg" alt="" />

當(dāng)你思考定制化如何增強(qiáng)或減弱用戶完成任務(wù)的注意力時(shí),記住以下幾點(diǎn):

定制總要有緣由。理想情況下,定制化的用戶界面能促進(jìn)用戶完成任務(wù)并增強(qiáng)他們的體驗(yàn)。你最好盡可能的用任務(wù)驅(qū)動(dòng)定制化決策。

盡量避免增加用戶的認(rèn)知負(fù)擔(dān)。用戶對(duì)標(biāo)準(zhǔn)界面元素的外觀和行為都已經(jīng)很熟悉了,所以他們不用停下來思考如何使用它們。當(dāng)用戶面對(duì)外觀和行為與標(biāo)準(zhǔn)不同的元素時(shí),他們就失去了經(jīng)驗(yàn)的優(yōu)勢(shì)。除非你的獨(dú)一無二的元素能夠使任務(wù)更容易完成,否則用戶很可能不喜歡被強(qiáng)制學(xué)習(xí)一些在其他應(yīng)用都不通用的步驟。

保持內(nèi)部的一致性。你的應(yīng)用中自定義元素越多,保持這些元素外觀和行為的一致性就越重要。如果用戶花費(fèi)時(shí)間去學(xué)習(xí)了你創(chuàng)建的那些不熟悉的控件,那么他們會(huì)希望新學(xué)到的這些操作能夠在整個(gè)應(yīng)用中通用。

總是以內(nèi)容為重點(diǎn)。因?yàn)闃?biāo)準(zhǔn)元素很熟悉,所以它們不會(huì)分散用戶在內(nèi)容上的注意力。當(dāng)你自定義用戶界面時(shí),注意確保界面元素不會(huì)搶走用戶對(duì)內(nèi)容的注意力。例如,如果你的應(yīng)用允許用戶觀看視頻,你可能選擇設(shè)計(jì)一個(gè)自定義的重播控件。但是不管你用的是自定義還是標(biāo)準(zhǔn)的重播控件,都沒有它是否在用戶開始觀看后隱藏點(diǎn)擊屏幕后出現(xiàn)來的重要。

在對(duì)標(biāo)準(zhǔn)控件進(jìn)行重設(shè)計(jì)時(shí)再三思考。如果你不只是想自定義標(biāo)準(zhǔn)控件,而是想重設(shè)計(jì),確保你的重設(shè)計(jì)能提供盡可能多的信息。例如,你設(shè)計(jì)了一個(gè)開關(guān)控件,它沒有可以指明相反狀態(tài)存在的信息,那么用戶很可能意識(shí)不到這是個(gè)有兩個(gè)狀態(tài)的控件。

一定要徹底測(cè)試自定義的界面元素。在測(cè)試過程中,近距離的觀察用戶是否能預(yù)測(cè)你的元素如何使用以及是否能容易的與它們交互。例如,如果你創(chuàng)建的控件的可點(diǎn)擊區(qū)域小于44 x 44像素,用戶點(diǎn)擊時(shí)就會(huì)有困難。或者如果你創(chuàng)建了一個(gè)視圖對(duì)點(diǎn)擊和滑動(dòng)的反饋不一樣,確保這個(gè)視圖提供的功能值得用戶去額外關(guān)注交互的不同。

原型 & 迭代

在你投入工程資源實(shí)現(xiàn)設(shè)計(jì)之前,最好先創(chuàng)建原型來進(jìn)行用戶測(cè)試。即使只有幾個(gè)同事來幫你測(cè)試原型,你也會(huì)收獲一些關(guān)于應(yīng)用功能和用戶體驗(yàn)的新鮮觀點(diǎn)。

在設(shè)計(jì)的早期階段,你可以使用紙質(zhì)的原型或者線框圖去呈現(xiàn)主要的視圖和控件,并且標(biāo)明每個(gè)頁面之間的跳轉(zhuǎn)關(guān)系。你可以從線框圖測(cè)試中獲得一些有用的反饋,但是線框圖的稀疏性有可能會(huì)誤導(dǎo)用戶。因?yàn)橛脩艉茈y想象當(dāng)線框被實(shí)際內(nèi)容填滿時(shí)體驗(yàn)會(huì)有什么樣的變化。

如果你有一個(gè)可以在設(shè)備上運(yùn)行的原型,那你可以得到更多有用的反饋。當(dāng)用戶能在設(shè)備上與你的原型進(jìn)行交互時(shí),他們能更容易的發(fā)現(xiàn)應(yīng)用中哪里功能不滿足預(yù)期,哪里體驗(yàn)過于復(fù)雜。

創(chuàng)建可靠原型的最簡單的方法是使用基于故事版的 Xcode 模板創(chuàng)建一個(gè)基礎(chǔ)應(yīng)用,然后使用一些類似于占位符的內(nèi)容來進(jìn)行填充。(故事版可以涵蓋應(yīng)用中的所有界面,并且包括界面之間的跳轉(zhuǎn)關(guān)系。)接著,將這個(gè)原型導(dǎo)入到設(shè)備中,這樣被測(cè)者就可以有一個(gè)盡可能真實(shí)的體驗(yàn)了。

你不需要在原型中提供大量的實(shí)際內(nèi)容或者使每一個(gè)控件都可用,但是你確實(shí)需要營造足夠的情境來保證真實(shí)的體驗(yàn)。并且需要在典型用戶體驗(yàn)和非典型的邊緣情況之間做好平衡。例如,如果你的應(yīng)用需要處理很長的列表項(xiàng),你的原型就不能只顯示一兩個(gè)條目。而且在用戶測(cè)試交互中,只要被測(cè)者能夠點(diǎn)擊屏幕上的一個(gè)區(qū)域進(jìn)入到下一個(gè)邏輯頁面或者完成主任務(wù),那他們就可能提供更有建設(shè)性的反饋。

當(dāng)你使用 Xcode 應(yīng)用模板來創(chuàng)建原型時(shí),你可以免費(fèi)使用很多功能,并且它可以相對(duì)容易的進(jìn)行設(shè)計(jì)中的響應(yīng)反饋調(diào)節(jié)。在你確定設(shè)計(jì)方案并投入資源進(jìn)行實(shí)現(xiàn)之前,應(yīng)該對(duì)原型進(jìn)行多次迭代測(cè)試。想要開始學(xué)習(xí) Xcode,請(qǐng)參考 Xcode Overview.