1. 程式人生 > >寫給程式猿們的互動設計

寫給程式猿們的互動設計

編 者按:看到此文時恍惚回到自己學習網頁的時候,那時候只知有程式設計,不知有設計。各個論壇大部分時候討論的也是如何用 Frame 實現頁面的分割槽,如何做出圓角,以及寫一大段 javascript 程式碼或者做個 flash 只為讓頁面看起來更眩一點。後來 css1.0, 2.0 陸續出現,html 4.0 4.1 以及如今的 html 5 也逐漸淘汰掉了表現樣式的標籤。視覺傳達思想開始陸續進入程式猿與產品經理的視線,從網頁到現在的 APP,經歷過野蠻生長階段後,只有那些功能與視覺傳達同樣優秀的產品才能笑到最後。

2007 年蘋果給業界帶來了耳目一新的感覺,之後無數 APP 展現了幾乎無限的讓人驚豔的新概念,但是,不是每一個新奇的想法都能被稱作設計。設計師需要經過嚴格訓練,才能把想法轉化為最終的設計,而在整個轉化過程 中,無數的想法是經不起仔細推敲的。設計師更多的時候在觀察生活,觀察自然,靈感不是隨時就有,但是一個經過嚴格訓練的設計師可以把普通的生活細節經過加 工融入設計,最終打造出合格甚至優秀的產品。

本文作者 Pasquale D'Silva 是 Elepath 的一位互動設計師兼產品設計師,在本文中,他從互動的角度闡釋了優秀的設計應該具有的一些品質,或者說,優秀的產品該如何實現與使用者的自然溝通。

不 得不說,有太多程式猿或者美工(注意,是美工,真正的設計師不會這麼幹)誤把技術當藝術、把漂亮當設計了,真正重要的互動部分反而被忽略,你可以看看,一 大批的產品都是近乎靜態的,許多操作詭異至極,諸如你想新增一個條目到列表裡,它就生硬的出現在那;你想刪除,它就直接消失。這樣的產品經理,你們到底有 沒有考慮過使用者的感受,有沒有考慮過產品的感受,這種完全不合邏輯的東西也虧你們做的出。

當然,還有一部分產品是有互動的,但是,悲哀的是,那些互動完全被用作另一種形式的美化,天才知道那些人在想什麼。

互動真正革命性的意義在於,它把時間這一魔幻般的屬性帶入靜態的產品之中,通過對動作、速度、顯現等等的定義,讓產品的操作體現出真實感,使得使用者能自然而然的理解每一個動作的含義。不過這不是那些高中時候整天泡妞、看不起書呆子的人能理解的。

一些簡單的例子

這些例子的目的是向各位讀者介紹動畫的精髓,告訴各位讀者時間軸和空間對於動畫意義。而動畫對於互動的意義不言而喻。

例:緩衝效果

以下三個 demo 展示了在最傳統的動畫中,如何通過控制關鍵幀來控制整個動畫的效果。



在 這三段 25 幀的動畫中,設計師只需要定義第一幀、最後一幀和關鍵幀(第 13 幀),其餘 22 幀由計算機自動填充,但是,計算機沒想像中那麼聰明,它只能線性的填充空白幀。優秀的動畫師和動作設計師需要花費大量時間來學會如何控制計算機按照自己設 計的效果工作。有興趣的讀者可以自己做些實驗,本文重點在於闡述概念,所以不著過多筆墨於技術方面。

另一些稍複雜的例子:互動動畫所能營造的真實感

這些例子的目的在於告訴設計師們,互動所能代替的一些舊功能以及實現以前所不能做到的功能。

例一 插入元素

以下是三個關於向列表裡新增/刪除元素的 demo,來展示不同的互動動畫所產生的效果



Demo 1 沒有進行任何加工,既生硬又粗糙,不能給人以任何自然的感覺。
Demo 2 添加了一些關鍵幀使得新增的動作順暢了很多,這樣的動畫已經能給使用者一些暗示了。
最後一個 demo 是最貼合自然狀態的,就象我們平時把一本書插入書架一樣,需要先騰出空間,然後再插入/取出。

例一最後一個 demo 的設計讓人一目瞭然,因為這和生活中的動作完全相似,使用者不需要其他提示就知道這樣的動作所代表的含義。這樣的互動動作在之前的非觸控式螢幕上沒有多大用處,但對於如今遍地的 APP 意義重大。

例二 展開/彈出選單

同樣是三個 demo,分別展示不同的展開效果所帶來的不一樣的感覺。



第一個是最典型的展開樣式,但是不具有體驗上的一致性,這個動作在現實中並不存在,所以沒有辦法讓使用者輕易的明白它的含義。
再觀察下第二個,這樣的樣式是不是給了你更多的資訊?
最後一個樣式可以使關鍵內容突出,可以用來表示強調。
切記,不要試圖把多種樣式放在一個產品/功能中,這樣會導致使用者不明所以的。

例二後兩個 demo 的設計可以代替老式導航欄,使用者可以很容易記得自己的動作,從而知道自己所處的位置。

當然,所有的例子都不是萬金油,需要視情況而使用。放在這裡的目的只是讓大家明白,乾淨利落但是邏輯性強的動畫對於改善產品體驗的作用。

想要更多的瞭解動畫在具體產品中的效果,可以體驗下Thinglist,這是我與 Kyle Bragger 合作為 Elepath 開發的一款產品。下圖是該 APP 關於如何載入內容的示範。

動作化介面的設計原則

你明白的,我不能把很具體的產品名字些在這,但是,有些產品的確是走極端了,一種是介面極端漂亮但沒有一點互動,另一種是拿互動動畫當裝飾完全失去互動的本質。所以我列出以下幾項原則來定義真正的互動:

一、 動畫乾淨利落
二、 節奏一致、過渡自然

有些人的想法讓我很無語,他們從不認為可以新增時間元素到介面中。難道,你們不知道互動能提供更多更有用的資訊給使用者麼,還是你們覺得這樣做對你們來說太複雜了?

起初,這份文件只是用來培訓內部員工,後來我們覺得如果公開來討論可能會更有用,而且我也願意與更多同行交換意見。如果有興趣可以在推特@pasql。或者在Branch參與我們的討論

讀者福利:一些值得讀或者看的材料(原文有四個連結,但其中兩個已經無效,故只取以下兩個):

相關推薦

程式互動設計

編 者按:看到此文時恍惚回到自己學習網頁的時候,那時候只知有程式設計,不知有設計。各個論壇大部分時候討論的也是如何用 Frame 實現頁面的分割槽,如何做出圓角,以及寫一大段 javascript 程式碼或者做個 flash 只為讓頁面看起來更眩一點。後來 css1.0, 2.0 陸續出現,html 4

程式的把妹指南:概述篇

每個女人都是一套系統 每個女人,都是一套複雜的系統,只不過,這套系統不是由程式設計師創造的,而是由大自然進化而成的。大部分程式猿不太懂得如何泡妞,是因為你不熟悉女人這套系統,也沒人教過你如何學習這套系統。本指南將給你提供指引,讓你開始瞭解女人這套系統,並指引你如何征服

程式的把妹指南:概述篇

每個女人都是一套系統 每個女人,都是一套複雜的系統,只不過,這套系統不是由程式設計師創造的,而是由大自然進化而成的。大部分程式猿不太懂得如何泡妞,是因為你不熟悉女人這套系統,也沒人教過你如何學習這套系統。本指南將給你提供指引,讓你開始瞭解女人這套系統,並指引你

博導推薦我一本基於Python實現爬蟲的書, 最適合程式看的!

網際網路包括了至今為止最有效的資料集,並且大年夜大年夜區域性能地下收費拜候。但這些資料根基上不克不及複用。它們被嵌入在網站的佈局、樣式中,得抽取出來才調應用。我們從網頁中抽取資料的過程就是我們熟知的彙集爬蟲,網際網路期間每天都有大年夜大年夜量的資訊被頒佈發表到彙集上,彙集爬蟲也愈來愈有效。

連載《一個程式的生命週期》-《發展篇》- 17.程式,收起玻璃心,你們的忠告

        程式猿們一直在焦慮幹這行是不是吃青春飯的?在網上喊的挺歡,但是真正能夠意識到危機而改變自己的不知道有多少!假如不幹Coding了,能幹售前?銷售?產品經理?專案經理?自由職業者?......? 說一千道一萬,除了現在的工作技能,還有沒有其他謀生的手段,養活自己及家族。在程式猿職業交流群裡有一個

Java程式推薦一些值得一看的好書

學習的最好途徑就是看書 “學習的最好途徑就是看書“,這是我自己學習並且小有了一定的積累之後的第一體會。個人認為看書有兩點好處: 1、能出版出來的書一定是經過反覆的思考、雕琢和稽核的,因此從專業性的角度來說,一本好書的價值遠超其他資料 2、對著書上的程式碼自己敲

程式,容器映象瞭解一下……

  以下是華為開發人員針對SWR應用中出現的具體問題做的詳細解答,希望可以幫助到正在使用中的朋友! 1、 Q:什麼是容器映象服務 A: 容器映象服務(SoftWare Repository for Container)是一種支援容器映象全生命週期管理的服務, 提供簡單易

小白小白的MATLAB libsvm 安裝和使用

最近在學習SVM,在matlab上安裝和使用Libsvm的過程中遇到了好多問題,在網上查看了許多資料,踩了許多坑。 整理一下供大家分享,希望能節省大家在安裝過程中的時間。 一、安裝 1.libsvm 下載 本人使用windows 10-64bits, Matlab 2

深入淺出排序學習:程式設計師的算法系統開發實踐

引言 我們正處在一個知識爆炸的時代,伴隨著資訊量的劇增和人工智慧的蓬勃發展,網際網路公司越發具有強烈的個性化、智慧化資訊展示的需求。而資訊展示個性化的典型應用主要包括搜尋列表、推薦列表、廣告展示等等。 很多人不知道的是,看似簡單的個性化資訊展示背後,涉及大量的資料、演算法以及工程架構技術,這些足以讓大部分

【吐槽】B站大量番劇下架,程式這時都在幹什麼?

每天在來上班的路上我都會“變態”數次 出門前我是固態的 邁出空調區域時我變成了液態 等我走到馬路上我整個人已然昇華為氣態 好不容易或者到了辦公室 終於可以安全的刷刷微博 一看到這條訊息的時候嚇得我立馬凝華了 就這樣沒有一絲絲防備的就下架了? 這

大家看的Web設計書(第3版)》即將上市

《寫給大家看的設計書》姊妹篇——《寫給大家看的Web設計書(第3版)》 即將上市。它是Robin Williams的又一本設計書。 也許大家對Robin Williams的暢銷書《寫給大家看的設計書》還念念不忘,還在回味那些簡單凝練的設計經驗。那好,本書的出版對於

讓你5分鐘認識ZooKeeper的原理,程式快來看吧。。。

前言 ZooKeeper 是一個開源的分散式協調服務,由雅虎建立,是 Google Chubby 的開源實現。分散式應用程式可以基於 ZooKeeper 實現諸如資料釋出/訂閱、負載均衡、命名服務、分散式協調/通知、叢集管理、Master 選舉、分散式鎖和分散式佇列等功能。 1、簡介 ZooKeep

程式設計師的有效學習方法

在 9 月紐西蘭的 Kiwi PyCon (一個關於 Python 語言的年度例行研討會)研討會中,我就提出了針對程式設計師的有效學習方法。演講中主要提到了兩個方面:一個是思維模式方面,一個是具體可用的學習方法。下文是那次演講中關於思維模式的一個簡單指南。如果你想了

好書丨最想推薦程式設計師看的基於Python3實現的資料科學書

點選上方“程式人生”,選擇“置頂公眾號”第一時間關注程式猿(媛)身邊的故事參與文末話題討論,有機

推薦程式設計師的最新技術書

11月書訊重榜來襲十一月書訊釋出啦!9種好書與您相約月末準備銀子買書吧。即將上架 Python機器學習《 Python機器學習——預測分析核心演算法 》從演算法和Python 語言實現的角度,幫助讀者認識機器學習。 專注於兩類核心的“演算法族”,即懲罰線性迴歸

資料探勘python學習——《程式設計師的資料探勘實踐指南》第3章

第3章  協同過濾——隱式評級及基於物品的過濾 對於一些5分割槽間,10分割槽間等的評分機智,使用者的評分方式可能傾向於極端化,集中在高分或是集中在低分,這樣參差不平的評分對於結果的準確性產生較大的

程式設計師的 2018 新年計劃清單

2018計劃清單 一日之計在於晨,一年之計在於春,對於程式設計師來講,挑戰自我很重要。有創造力的以及技術性的休整是可行的。給自己的新年列個計劃清單,一起在新的一年更好地成長吧! 每個月都是一個每年可更新的技術性的或個人的挑戰: 進入真實生活 保持健康 欣

這是我最想推薦程式設計師看的基於Python3實現的資料科學書

​點選關注非同步圖書,置頂公眾號每天與你分享IT好書 技術乾貨 職場知識​參與文末話題討論,每日贈送非同步圖書。——非同步小編​​和武俠世界裡有少林和武當兩大門派一樣,資料科學領域也有兩個不同的學派:以統計分析為基礎的統計學派,以及以機器學習為基礎的人工智慧派。雖然這兩個學派

Discuz驗證碼識別(編碼篇)-程式設計師的TensorFlow教程

歡迎大家回到《寫給程式設計師的TensorFlow教程》系列中來,本系列希望能給廣大想轉型機器學習的程式設計師帶來一些不一樣的內容,我們不講公式,只調方法,不聊文獻,只說程式碼。不求最好,只求有用。帶大家迅速上手TensorFlow(以下簡稱TF。我是強迫症患者,每次都敲駝峰

iOS開發-萌新的UITableView的Cell高度自適應方法

Emmmm…. 時間過得好快,一晃眼一年就過去了,開啟塵封已久的CSDN部落格,發現自己墮落了無數時光,但人活著總是要混口飯吃的嘛,所以再度起航,鍵盤敲起來,文章寫起來。希望大家能支援我這個垃圾猿,好啦切入正題。 皮一下很開心 上週在技術群裡看萌新們