若是轉載此文,請註明出處:http://blog.csdn.net/paulery2012/article/details/25157347,謝謝!ios
前言:算法
本文是在閱讀《ios用戶體驗》的過程當中,記錄的總結和我的的感覺思考。難免有錯誤之處,懇請讀者指正,在下面留言便可。api
第一章:ios人機界面指南概述瀏覽器
一、智能手機的特色:大尺寸、高分辨率、強大的計算能力微信
二、簽名交互:滾動輪、導航鍵、按鍵和硬鍵盤、軟鍵盤、觸控筆、觸屏,輸入特性又被稱爲「簽名交互」,用戶能夠經過輸入方式的組合方式別是設備品牌。網絡
思考:對iphone來講,簽名交互主要有按鍵、軟鍵盤、觸屏iphone
三、專業文檔:Human Interface Principles(人性化界面原則,如下簡稱HIG)和User Experience Guidelines(用戶體驗指導)ide
四、Apple優先考慮尺寸、重力感應、電容式觸摸屏界面輸入的動態性,這就說明,Apple意欲使設計和開發團隊更加專一於輸入和輸出技術的改善。工具
五、Apple專業文檔下降了iOS平臺開放給第三方開發者所帶來的風險,同時也保持了蘋果的品牌形象以及人們對市面上iOS的見解,從而保持他們的持續成功,佈局
第二章:iOS用戶體驗解析
一、格式塔效應:簡單說就是咱們所體驗的遠遠大於咱們所察覺到的獨立部件的品質。
思考:咱們心不在焉,沒有通過思考狀態時的感受,也就是總體!=部分之和(來自百度百科)
二、虛擬鍵盤的設計
需求:尺寸有限,按鍵很小,排列須要很是緊密。有時候你也看不到本身按了哪一個鍵。
Apple處理方式:
思考:視覺反饋,拼寫錯誤提示、檢查算法,消除用戶心裏焦躁感,這是一種很是穩健的交互技術
三、最經常使用的幾種手勢
思考:以前有作過一個輕擊和雙擊的區別,就是根據2次輕擊的時間間隔來區分。2次點擊的時間超過雙擊時間間隔就能夠認定爲2次輕擊,不然就是雙擊行爲。
四、iOS是一種平面環境(planar environment),這裏說的平面環境指的是用戶體驗的核心表現形式是二維的。其操做確並不徹底是二維的,實際上是3個相互依賴共存的平面之間運行的。咱們能夠將iOS當作3個用戶界面層,每一層都有特有的交互類型,這些特定的交互機制決定了這些層的活動,按重要性排序:
這些層之間的間隔只有幾毫米,可是仍然有高區分度。
思考:相比默認層、隱含層,疊加層的特色是臨時性的、中斷用戶操做,因此疊加層必定要少用、慎用,不然會給用戶挫敗感,影響用戶體驗。動態的即時反饋多是一個不錯的可選方案。
五、簡潔性和易用性,有幾個原則,在設計或者建立本身應用的時候應該運用的一些理念(重點)
思考:簡潔而非簡單,複雜高深的技術在適當的時候暴露給用戶,纔是真正的簡潔易用。舉個例子,通常App首次啓動的時候都是請求用戶的各類權限,對通信錄的訪問,時候能夠定位你的位置之類的,若是在用戶使用功能有須要的時候去詢問可能更好。
六、手勢:將觸控交互能力提高到了不只僅直接操縱基本交互的新高度。
七、保持簡潔:這一理念一直影響着iOS的設計決策,而這些決策也使得iOS變得更加易於使用和理解。簡潔和易用雖然並沒有直接關聯,可是確實相輔相成。
第三章:用戶體驗的差別化及其策略
一、臨界質量(critical mass):是指知識技術積累到必定的臨界點,新技術就會跟裂變反應同樣爆發,並劇烈擴展。
二、在數碼產品市場,設計人員設計並建立的用戶體驗與其產品使用者或消費者,宅共同快速地發展變化。本質上,這就是一種反饋循環。隨着各類產品的相繼發佈,愈來愈出色而獨特的交互方式出如今市場上,用戶對這些互動的需求和接受程度也愈來愈強。
思考:建議使用一下網易新聞和facebook的paper應用,就會有更深的理解
三、任何交互設計方案的成功與否都是由其可用性衡量的。(重點)
四、可用性是驅動人們接受一款應用的重要因素,可是用戶的多方面需求則更爲重要,爲了有效地解決用戶的需求,咱們須要瞭解如下幾個要素:
五、用戶體驗策略:技術、需求、用戶指望都在不斷變換,那麼應該有一個明確的計劃來處理這種不斷變換的狀態。有效的用戶體驗策略可以爲咱們帶來的諸多益處:
六、一個好的策略應該是按期對其目標、用戶和市場環境進行從新評估,長此以往變灰造成一套成熟的用戶體驗。
思考:對於敏捷開發的團隊來講,就更加容易把不斷修正的策略運用到實際開發過程當中。
七、差別化能夠被視爲兩個對立端的衆多可能。其中,一端表明「類似」,另外一端表明「分化」。前者表明了一種較傳統的方式,風險低,跟風實現嚴重;不然則表明一種很是規的方式,它可能風險高,可是創新性也更強。
八、用戶體驗策略的實際定位取決於該策略爲產品制定的預期目標,你須要思考應該將應用定位在何處才能使其具備更強的市場競爭力或者更符合用戶的需求。在考慮應該逐步加強應用的現有功能,仍是完全從新設計該應用。
九、角色勾勒:想好應用可能吸引的人羣,而後對假想的用戶進行勾勒,這些角色應該可以爲你和設計團隊提供足夠的信息,寵兒必定程度上貼近真實用戶。除了應該明確其年齡、性別、收入水平、職業,還應考慮到其國籍、家庭狀況、生活方式等,儘量的劃出角色的興趣、愛好和社會活動。若是能榮國具體的用例來體現這些動機和目標更好了。
思考:根據目標人羣特色,勾勒出幾個角色,進而爲典型角色在不一樣場景下使用APP作鋪墊。爲了校準你本身對角色特色的判斷,能夠去找一些符合目標人羣特色的人,對他們進行訪談,進一步輔助你作出判斷。
十、角色使用場景:將角色形象放到適當的場景中,就能夠經過目標哦用戶的視角來體驗你所設想的應用
思考:咱們作的一個圖書館的項目,在PPT介紹的時候,我就舉了3個不一樣類型的學生使用咱們的APP和不使用咱們的APP的生活區別,進而得出結論:咱們的APP確實能夠幫助各類學生實現他們的需求,爲他們的生活帶來了很大的便利。
十一、評估競爭對手:瞭解競爭對手的優點和劣勢,競爭對手在作什麼,在APP Store上挑出最優秀的應用做爲參考便可。選出3~5個應用就能夠了。
十二、用戶並不僅是期待高度差別化和高度創新的用戶界面,他們只有在這些體驗感受良好時參會接受他們。
1三、過去成功的交互方案几乎都歸因於他們的可用性,而那時的可用性體現了一種工程意識,也就是專一於經過量化的用戶輸入來改進產品。如今,隨着市場的發展,咱們不能只關注產品的可用性,更應該理解應用體驗的其餘方面,這樣才能使產品保持市場的競爭力,用戶體驗的觀點綜合了美學、感知和情感投入。
思考:可用性是前提,在此基礎上考慮美學、感知和情感投入
1四、用戶體驗策略應該包括如下方面:
第四章:殺手級應用:爲移動環境而設計
一、移動計算的核心價值:突破時間和空間的限制訪問本身的數據、使用既定的功能
思考:之前PC時代,人們都是端端正正作在電腦旁邊,左手鍵盤右手鼠標。如今歪歪扭扭隨便坐,無論是辦公室的座位仍是廁所的馬桶上,拿出手機就開始刷微博、聊天、看視頻。
二、移動電話是一種我的設備,你的移動電話只與你一我的緊密相關。通常來講打你電話就是爲了找你,在不少狀況下人們將電話看作是你的代理。人們一般會說「我打給你….」,而不是「我打給你的手機….」
三、iPad也易於攜帶,可是尺寸太大,它仍是沒法像iPhone那樣體現出來真正的移動性。固然他的缺點也是他的有限。咱們能夠隨時隨地使用iPad進行放鬆休閒,那麼花費在這類的休閒娛樂上的時間就比較長了。在iPhone上查看最新的固表報價,當天的天氣或者社交網絡的最新動態,則屬於短時交互
四、特色總結
五、iPad缺乏通話功能,在情感因素上不想我的電話同樣與人緊密相關,因此用戶更傾向於和別人分享iPad。iPhone則通常不會與別人分享。
思考:其實就我來講主要是手機上有短信、照片,可不能讓別人亂翻,iPad就無所謂啦~隨便玩
六、構思應用的5個關鍵用例:通訊、娛樂、地理位置服務、商務、可用性
七、通訊:最核心的用例,電話、郵件、短信等一對一通訊和社交、媒體、論壇等一對多通訊,這裏的通訊是廣義上的通訊
思考:這裏的一對一通訊不是說必定只是一對一,只是說他的特色和使用頻率來說跟多的是一對一通訊
八、娛樂:2大主題,分別是遊戲和內容消費,內容消費包含且不只限於視頻、聽音樂、讀書、瀏覽網頁、以及其餘活動
九、地理位置服務:GPS和數字羅盤技術,而且其詳細程度和精度驚人。地理位置服務仍然是很新的用例,不少開發者每每只觸及到這些技術的皮毛。大多數應用程序師傅只着眼於讓用戶廣播本身的位置,或者告訴用戶從A到B怎麼走。而其最關鍵的問題是:地理位置服務的內在價值是什麼?
思考:如今不少的地理位置服務(LBS),百度地圖推出了搜周邊美食,也有一些國外的應用基於LBS的交友類應用。之前見過一個有趣的應用是公交鬧鐘,到站的時候自動提醒,確實有太多的能夠挖掘的東西。
十、商務:主要分爲集展和彙集,前者利用第三方資源來指導複雜的商品選擇行爲,來提供推薦並形象用戶的購買行爲,不然經過一系列的自定義參數,從各個獨立的來源中自動篩選並管理商品的內容。
思考:一個是被動行爲,一個是主動行爲
十一、可用性:若是一款APP可以幫助用戶快速並高效的執行一項任務,那麼就會有更多地人採用這個應用,這就是可用性。若是可用性是你應用的目標,那麼就須要遵循如下兩點:合適的功能、任務的效率,前者是提供執行一項任務所需的合適的功能數量,後者是提供執行一項任務所能採用的最簡單的方法。
思考:可用性就是用合適的功能方便人們生活,提升效率
十二、移植爲移動應用:把現有的應用移植到移動領域的幾個基本步驟:
1三、移植的一大挑戰:在小尺寸的設備上達到較高的功能密度,絕對是一項挑戰。這不只僅體如今UI映射和佈局上,還由於其功能的複雜性意味着導航結構的層次更深。
第五章:利用iOS的功能達到最佳的用戶體驗
一、設計者須要對四大關鍵技術有所瞭解。這四大關鍵技術分爲2個大類,第一類是蘋果自有技術,這類技術支持在iOS環境中原生渲染,第二類則是第三方技術OpenGL,而它確實支持對底層的GPU的利用。從設計的角度上來看,原聲渲染一般是與暢通用戶界面的控件聯繫在一塊兒的,而OpenGL則經常使用語遊戲中對各類動畫和交互進行高性能的圖像渲染。
思考:GPU英文全稱Graphic Processing Unit,中文翻譯爲圖形處理器。(圖像處理單元)GPU是相對於CPU的一個概念,因爲在現代的計算機中(特別是家用系統,遊戲的發燒友)圖形的處理變得愈來愈重要,須要一個專門的圖形的核心處理器(來自百度百科)
二、四大關鍵技術:UIKit、Core Graphics(核心圖形)、Core Animation(核心動畫)、OpenGL ES(惟一的非蘋果提供的技術)
三、UIKit:95%的用戶體驗設計都是用UIKit實現的,包括基本的按鈕控件、滑塊、文本框、開關控件等等,UIKite還提供控件的自定義功能,因此不要拘泥於使用默認的控件。自定義UI空格鍵也會用到其餘的一些圖形技術。
思考:自定義功能用的比較少,之後多瞭解一下。
四、Core Graphics:它的核心是二維渲染引擎Quartz 2D,能夠用於在應用中事先不一樣的圖像處理功能。他不但能夠動態的繪製某些類型的圖像,還能做爲一個做爲一個功能完整的繪圖引擎,爲應用添加和建立、編輯圖像的功能。
思考:UIKit在自定義圖像方面具備高度的靈活性,而在複雜的圖像變換、圖像處理或者圖像的實時合成方面,Core Graphics更有用
五、Core Animation:提供了一種用戶建立和渲染動態視覺交互的簡單易用的解決方案,因爲它關注的是在已有的用戶界面對象中加入動畫效果,所以Core Animation與UIKit時緊密結合在一塊兒的,正由於這一點,用戶界面控件也能夠和動畫過渡效果較爲完美的整合在一塊兒。
思考:從易用性上來說,Core Animation比Core Grapics更好一些
六、OpenGL ES:本質上是一種針對嵌入式設備的圖像渲染API,可以讓你直接嵌入在iOS設備中的硬件加速功能,然而,它自己卻沒法顯示用戶界面,必須和Core Animation結合使用才能顯示用戶界面元素。這種強大的技術能夠用來渲染那些對涉筆來講極難處理的發雜圖像,它一般用於在遊戲中實時渲染3D對象。
七、自定義界面:若是使用SDK默認的對象來構建應用,那麼久表示你其實正在使用蘋果的原生視覺要素,也就是說用戶感覺到的是蘋果提供的用戶體驗。固然,這不是什麼壞事情,可是若是你但願用戶可以感覺到獨特平白特點的用戶體驗,那麼這種方式恐怕就不合適了。
八、原生應用和Web應用:Web應用和設備原生渲染的用戶體驗存在必定的差距。雖然在瀏覽器的環境中,有不少技術能夠渲染出極其具備吸引力的體驗,可是其效果仍然沒法和原生的環境相比。蘋果爲你提供了很是強大的技術,不只能讓你實現高度的定製化並且性能香港出色。而Web'方案只能提供其原生體驗的部分功能。原生UI渲染具備強大的功能和動態性,而基於Web的體驗則靈活且易於維護。
思考:近年來各大企業一直鼓吹APP要死,之後是大入口時代,並且百度也根據潮流退出了「輕應用」的產品,微信推出了公衆帳號,各個IT大佬搶佔互聯網入口。可是目前不管是是輕應用仍是公衆帳號提供的用戶體驗沒法和原生體驗相比,可是這種發展趨勢不容小覷。
第六章:交互建模和創新概念的建立
一、什麼纔是「使人驚歎」?在iOS應用的交互方面,咱們將「使人驚歎」定義爲當表現效果超越了用戶情感閥值後的一種情感表達,而這一閥值最終取決於用戶。其關鍵因素以下:
實現這3個因素後,你就能創造出超越用戶情感閥值的優秀應用了
二、設計方案的一些屬性:
思考:如今的應用來講,界面美觀以及再也不稀奇了,那麼就要在交互機制、交互行爲、動畫和運動方面下足功夫了。
三、交互建模的過程包括了四項主要的任務:其中前三項(需求分析、用例和場景開發、應用程序的工做流)都是必不可少的準備工做,第四項嘗試交互建模自己。
四、需求分析:通常在正式的需求文檔中進行詳細的描述,若是你採用的敏捷開發的方法,那麼需求則比較容易放生變動,可是你至少應該在開始建模以前明確哪些限定應用程序基本功能的關鍵需求,需求確認以後,就能夠開始設計合適的用例了。
思考:抓住核心的需求,採用敏捷開發的方法,是一個不錯的選擇。
五、用例和場景開發:用例,尤爲是場景驅動的用例,是交互建模很是重要的不部分,一個號的用例能夠幫助團隊瞭解用戶在使用應用時會體驗到的總體流程,以及如何在使用環境中知足用戶的各類需求。
六、應用程序的工做流:從設計的角度來說,咱們更專一決策邏輯、關鍵交互以及引導用戶從應用A處移到B處的導航結構,這是一種以用戶爲中心的觀念,他會確立應用程序呈獻給用戶的特性與功能之間的關係,寵兒定義應用的結構。定義明確的工做流能夠向你提供應用程序的精確結果,可是他沒法提供交互機制和功能的呈現方式。
思考:需求分析(用戶有什麼須要實現的實際需求)->用例和場景(目標用戶在不一樣的場景下使用APP)->工做流(目標用戶使用這個APP的操做流程),有了這些基礎,那麼就能夠談交互建模了。
七、爲了交互建模,你須要的是更爲詳細的工做流,而不是抽象並且高層次的工做流,可是也不須要國語詳細,交互模式的詳細程序取決於應用的性質。
八、交互建模須要注意問題:開始交互建模時,你須要以一種抽象的方式進行思考,不須要具體的功能和內容,而要考慮應用所可能採用的各類不一樣的交互行爲,由此來了解如何使用他們來控制界面上的元素。弄清應該在哪裏並如何以最佳的方式對應用中的交互方式進行差別化設計,這是進行差別化設計的一個最重要的挑戰。
思考:書中對交互建模的具體細節沒有描述,有興趣瞭解的讀者建議購買相關書籍學習。
九、若是某項技術沒法幫助你打到預期的效果,或者解決方案中的某個方面可能沒法適用於應用程序的其餘部分,在這些狀況下,你須要依靠一些基本的問題解決技術來幫助你走出困境。
思考:這就是爲何優秀的交互設計師須要對開發的技術有必定程序瞭解的緣由。
十、強大的Core Animation:系統爲設計人員提供了強大的功能,幫助他們建立出極具備魅力的用戶體驗。動畫並不僅是爲一些隨機元素添加一些特效,它仍是一種強大的交互工具。
十一、動畫:動畫是一種可以是物體的屬性或者特徵隨着時間的變換而發生改變的機制,這裏的關鍵就是「時間」,它是你能夠用來解決關鍵交互設計問題的最強大的工具。若是交互空間有限,那麼時間的概念就變得格外有用,在空間收到限制的狀況下,很那實現複雜的交互或呈現大量信息。這時通常有2種處理方法:
時間緯度的引入爲咱們提供瞭解決空間受限問題的另外一種方案
思考:空間緯度有限,那麼咱們就要轉變一種思惟,從時間、狀態的緯度來解決信息展現的問題。狀態緯度會在下面講解。
十二、狀態是什麼?它是指用戶所觀察到的或者控制系統所管理的對象的全部屬性和特徵。
思考:簡而言之,好比用戶登陸界面,當帳號輸入結束後,即便提示帳號不存在,就是根據輸入狀態來進行展現信息。
1三、幾個概念的解讀:
思考:交互方式更側重與輸入操做,交互行爲就是輸入和反饋,交互模式就是整體的效果。
1四、交互建模的基本流程:
第7章:空間映射與觸屏人體工程學
一、爲何要學人體工程學的基本知識?有些應用的有趣程序可能足以吸引人們去下載,可是人們使用它時會感到很是困難和不舒服,以致於他們不會在用戶的設備上停留過久。因此你在爲iPhone或者iPad設計應用時,有必要花時間瞭解一些人體工程學的基礎知識。
二、iPhone的6種基本的握持姿式:單手縱向操做iPhone、一手縱向握持,一手操做iPhone、雙手縱向操做iPhone、單手橫向操做iPhone、一手橫向握持,一手操做iPhone、雙手橫向操做iPhone
思考:爲何iPhone5s沒有模仿三星作成大屏手機?也許就是考量用戶的基本握持從單手縱向握持操做轉向一手縱向握持一手操做iPhone對用戶體驗的影響,因此在iPhone5增長高度的同時將機身作的更薄,這樣中和單手縱向握持的溫馨度。相反的例子就是小米3……並且iPhone的四個角的弧度、應用夾四角的維度、應用的四角弧度都是一致的,從視覺和觸覺給用戶帶來無與倫比的溫馨感。好像說太多了….
三、iPad的4中基本的握持姿式:一手縱向握持iPad,一手進行操做、雙手縱向使用iPad、雙手縱向操做、一手橫向握持,一手進行操做、雙手橫向操做。
四、在設計觸摸控件的時候,你須要考慮的2個基本因素:
須要注意的問題:爲了確保系統的可能性,你必須考慮全部的可能性,包括觸摸傳感器校準市場和偏移平面所產生的視差。這也是考慮到用戶須要大尺寸控件帶來的內心保障-感受觸摸操做更加溫馨。
思考:下載百度導航APP你就會發現它的Button作的都特別大,就是考慮到使用場景基本都是走路、騎車、開車等較易發生抖動的場景。
六、設計控件間隔的一個原則:兩個觸摸對象的間距應該與它們的大小成反比。若是將他們緊密放置就會致使用戶很容易點錯。
七、反饋:爲用戶提供有效的反饋是全部設計方案的基礎,經過反饋咱們能夠確認時間已經發生了,而且被系統捕獲了。真實師姐的觸摸的概念其實指的就是一種反饋,咱們生活在有肯定的天然法則支配的世界中,應該多留意本身生活中的真實體驗,從而宅交互設計中展示本身最天然的反應
思考:從以前的硬鍵盤,到觸屏,用戶到達了一種直接操縱的程度,從觸屏到手勢,用戶到達了多種生活中的真實操縱狀態。慢慢地與真實世界的界限愈來愈模糊,從天然中抽象出來的交互模型每每使人驚歎,且易於接受。若是你尚未下載facebook的paper,下載試試你會有與如今不同的感覺。
八、反饋注意的問題:若是在設計方案中整合了更多強大交互反饋,那麼必定要考慮時間的概念。這裏的時間指的是事件觸發和的顯示速度,以及顯示效果的的持續時間。由於你須要知道動畫或者效果如何影響任務總體流程,因此這些都很是重要的因素
思考:若是你在系統切換到工做流的笑一個環節以前,用戶必須等待反饋效果的結束,那麼用戶就會有挫敗感。這是要必須避免的。
九、對隱藏控件的提示:在狀態驅動的用戶界面,在用戶可以操做控件以前就要調出該控件,若是採用這種方案,你必須爲用戶提供一些提示或者暗示,告訴他們如何調出這些隱藏控件。(一種簡單的作法是,在應用剛啓動時,將全部的隱藏控件設置爲可見,而後再採用某種動畫方式將他們移出屏幕)
第八章:易用性和功能的自動化
一、自動化技術是近幾年應用而生的,是用戶體驗中很是有趣的部分。自動化技術之因此引人注目,是由於他會隱藏操做應用程序方面對用戶很關鍵的細節。
二、隨着市場的成熟,用戶也變得更加複雜,在這個過程當中就出現了一種趨勢--用戶渴望增長對應用的控制,而這種控制能夠出如今細節層面上,這一層面上暴露了大量的功能細節,用戶能夠決定使用應用時須要顯示哪些功能。在不少狀況下,用戶熟悉了應用及其複雜的操做後,天然會在應用程序中探索出更多地控制方式,從而簡化本身的流程。
思考:如今許多APP出現的功能個性化定製就是迎合了這種用戶的控制要求。用戶能夠根據本身的需求簡化本身的操做流程。開發者也能夠統計這些操做流程數據,進一步優化APP,如今不少統計平臺已經能夠很好的實現這個需求,你們能夠了解一下雲聯盟。
三、利用iOS自帶的技術來爲用戶優化操做流程,輔助技術:
四、怎樣處理功能的自動化?除了以前提到的設法宅操做流程的適宜之處刪減用戶的操做,並以自動化的技術來替代,還有一種略微不一樣的方法,咱們能夠將這種方法拆分爲兩種基本方式:
五、儘管應用程序的複雜度和用戶的認知都在不斷的增加,可是易用性仍然是最重要的一個方面。從交互設計的角度來看,只要是存在簡化交互方式、工做流或應用的可能性,那麼都應該對其進行簡化和優化。