以開發(fā)的視角做設(shè)計:開發(fā)眼中的設(shè)計稿長什么樣?

4 評論 11563 瀏覽 60 收藏 12 分鐘

面對完全不一樣的媒介,設(shè)計師們會有不一樣的目標(biāo),也會使用不一樣的手法進行設(shè)計。 比如說一名 UI 設(shè)計師與平面設(shè)計師的最大區(qū)別,大概就是在于 UI 設(shè)計師能夠以開發(fā)的視角來做設(shè)計。

UI 這個詞或許聽起來非常新潮,但是 User Interface 這個詞組及其含義其實很早就已經(jīng)出現(xiàn)了。古時候的設(shè)計師使用 GIMP 對用戶界面進行設(shè)計,后來我們使用 Photoshop 進行這項工作,而現(xiàn)我猜大多數(shù) UI 設(shè)計師們都已經(jīng)用上了 Sketch。

UI 設(shè)計與其他的一些設(shè)計行當(dāng)最大的一點區(qū)別就是,UI 設(shè)計師輸出的并不是最終的作品,他們通常還要把自己的設(shè)計先交付給開發(fā),而且交付這個過程非常重要。

你怎么去設(shè)計以至到你怎么輸出你的設(shè)計將會直最終的產(chǎn)品產(chǎn)生重大的影響,所以對于這種媒介(software),設(shè)計師會面對的問題將會面對什么樣的新問題。開發(fā)使用他們的開發(fā)工具(iOS 的 Xcode、Android 的 Android Studio 等等)按照你的設(shè)計來構(gòu)建界面的的方法和思路會與你在使用 Sketch 來設(shè)計 UI 的思路非常不一樣。所以,既然 UI 設(shè)計師的主要工作是交付,那么學(xué)會以開發(fā)的視角和分析方法來進行設(shè)計將非常重要。

開發(fā)眼中的設(shè)計稿長什么樣

人們總是會帶著自己既有的知識和以往的經(jīng)驗來分析客觀事物,開發(fā)眼中的設(shè)計稿跟設(shè)計師眼中的設(shè)計稿差異其實非常大。開發(fā)通常以視圖(Views)為單位排布各個元素,Sketch 里面的 Symbols 功能和 Group 的概念其實與視圖的概念非常相似,都是事先規(guī)定好樣式與屬性,然后再在需要的地方重復(fù)使用。

當(dāng)然了,開發(fā)在使用他們的工具(Xcode、Android Studio 等)來控制布局,構(gòu)建我們的UI肯定不會像你在 Sketch 里面來得那么簡單直接,但是設(shè)計師并不需要實際地去學(xué)習(xí)如在使用這些工具來對 UI 進行構(gòu)建(當(dāng)然如果你感興趣的話,深度地了解一下這些又遠(yuǎn)又近的知識對你將有非常大的裨益)。我們可以將視圖想象成一個類似于 Sketch 里面的 Symbols 或是 Group 的東西,樣式、邊框和大小都被規(guī)定好了,然后各個不同小視圖以合乎道理的層級和順序構(gòu)建成我們的理想中的界面。

拿 Apple Music 舉個小栗子。Apple Music 的專輯頁面大致可以分為三個大視圖:

  • 最上方的專輯詳情區(qū)域。
  • 中間的歌曲列表頁。
  • 我們熟悉的 Tab Bar。

這三個大視圖之中又包含了從屬于自己的小視圖,譬如說專輯的照片就是屬于專輯詳情區(qū)域的視圖,每首歌曲的名字也是屬于歌曲列表視圖內(nèi)的小視圖。

上面那個充滿了藍(lán)色框框的圖顯示的是每個視圖的邊界,Sketch 里面可不會給你顯示這些東西,不過我們有 Zeplin 和 Sketch Measure 這樣的插件幫助我們標(biāo)注并輸出每個圖層的邊界大小,這對于實際開發(fā)來說非常有幫助。

我們再來觀察一下 Tab Bar 在 Sketch 里面的圖層結(jié)構(gòu)。

這樣的排列是比較接近在開發(fā)環(huán)境下搭建 UI 所使用的結(jié)構(gòu)的。有太多的設(shè)計師并不會將圖層整理得那么整齊,認(rèn)為整齊與否并不影響視覺效果。這的確不影響視覺效果,但是這有可能會嚴(yán)重影響交付效果。

所以下一次畫 UI 的時候請盡量合理地安排好圖層的結(jié)構(gòu)和從屬關(guān)系,多去閱讀各個平臺和系統(tǒng)的設(shè)計規(guī)范,別使用奇奇怪怪的數(shù)字來定義元素的尺寸和它們之間的距離。軟件是程序?qū)懙?,在這些層面上它就是那么方方正正,沒有什么創(chuàng)新的空間。

同樣地,大家所說的保持軟件的一致性,除了出于美觀好用等各方面的考慮以外,其實也是為了更高效地進行開發(fā)。對于一套好的 UI 來說,它上面的幾乎所有元素都需要是可以用數(shù)字描述的,包括多少像素的圓角,多少像素的描邊。以開發(fā)的角度來看,只有數(shù)字才是描述你的 UI 的最有效的語言,而有規(guī)律的數(shù)字才是維持一致性的保證。

像開發(fā)安排視圖一樣安排好圖層的結(jié)構(gòu),然后使用 Zeplin 或者 Sketch Measure 一鍵自動標(biāo)注并且輸出,加之及時有效的溝通和認(rèn)真專業(yè)的態(tài)度,將大大減少你的程序員和你日后的改改改工作??萍既招略庐?,你還有很多別的新玩意要去學(xué)習(xí),程序員也有很多新的技術(shù)要去專研,學(xué)會以開發(fā)的視角去做設(shè)計非常重要。切不要把為了一兩個像素的偏移而爭吵視作是自己具有工匠精神的體現(xiàn),華為已經(jīng)開始裁撤 35 歲以上的員工了,我漸漸覺得這樣的雞毛蒜皮的小事情簡直就是浪費時間。

@1x

關(guān)于使用一倍還是二倍做圖的爭論還是比較多的,國外的設(shè)計師喜歡用一倍,國內(nèi)的設(shè)計師比較多用二倍,實際上兩種選擇都有自己的好處,好多高手也寫了不少優(yōu)秀的教程,在下就不在這里班門弄斧做比較了。

我簡單說說做一倍圖的好處。

一倍圖計算起來很簡單,要輸出幾倍就乘以幾倍,如此你就能在 Sketch 里面使用插件一鍵輸出所有倍數(shù)的圖了。開發(fā)在搭建 UI 的時候還能直接使用你標(biāo)注在上面的數(shù)字,大大較少了出錯的可能。還有兩點個人總結(jié)的小經(jīng)驗,就目前來講,你能在官網(wǎng)或者是一些權(quán)威組織網(wǎng)站上面下載到的有關(guān)平臺規(guī)范的設(shè)計源文件以及大部分素材都是用一倍圖做的。另外,使用一倍圖導(dǎo)出到目前比較主流的可交互原型制作軟件(Framer Studio、Flinto、Principle、Form、Origami 等等)內(nèi)制作可交互原型將會有更加良好的體驗。

輸出色板

設(shè)計師會在設(shè)計之前定好需要用到的各種顏色,開發(fā)其實也需要,他們會在一個文檔里面將所有要用到的顏色先寫下來(這些顏色也由設(shè)計師給到),然后再在需要的地方隨時調(diào)用,概念就跟設(shè)計師參照視覺規(guī)范做設(shè)計一樣。

所以,在設(shè)計 UI 的過程中請妥善保管你選定的顏色。如果時間充裕的話最好專門新建一個畫板來保存你的顏色并使用 Sketch Measure 與其他 asset 一并輸出。這樣開發(fā)就能夠復(fù)制上面的十六進制碼直接粘貼到他們規(guī)定顏色的文檔里面去了。

為你能想到的所有情況而設(shè)計

程序不可能總是在理想的狀態(tài)中工作,故障與錯誤總是會有的。當(dāng)出現(xiàn)比如說斷網(wǎng)、弱網(wǎng)或者暫時沒有內(nèi)容可以展示時,程序的頁面該怎么呈現(xiàn)并傳達正確的信息給到用戶?

所以設(shè)計師在設(shè)計的時候一定要審慎處理各種不一樣的情況。假如一個頁面有可能會有不存在內(nèi)容的狀態(tài),那么該怎么對這種狀態(tài)進行設(shè)計?

總有你想不到的情況會發(fā)生,所以如果不明白的話多去詢問一下傳說中的知情人士,相信他們也會很樂意幫助你找出一些需要設(shè)計的異常情況。

另外幾件細(xì)碎的事情

1、對于語言文字的處理一定不能掉以輕心,因為這有可能會將你的頁面毀掉。如果一個視圖內(nèi)文字有可能會很多,那么要做截字處理還是自適應(yīng)處理?如果某處會有出現(xiàn)大量英文的情況的話呢?

2、不要太過追求完美,錙銖必較地去要求一個兩個像素的完美并不值得提倡。就像前文提及的一樣,我們最好能在前期就避免這些情況的發(fā)生。而且,軟件開發(fā)過程中會有很多不可控、不可預(yù)估的情況發(fā)生,有些問題誰也沒辦法解決。學(xué)會接受一點點的瑕疵更有助于項目的推進。

3、為軟件添加上一些優(yōu)雅的轉(zhuǎn)場和漂亮的動效確實能改善用戶體驗,但設(shè)計師不需要要在軟件的每一寸土地上都要施展自己的才華,使用系統(tǒng)自帶效果不丟人。如今無論是安卓還是 iOS,系統(tǒng)本身所能提供的動態(tài)效果已經(jīng)非常不錯了,學(xué)會怎么合理地使用它們也是一門考驗功力的活兒。

產(chǎn)品需要大家共同的努力!(? ??_??)?加油!

 

原文鏈接:Design like a Developer

譯文地址:知乎專欄「DesignCoder」

譯者:PeterZ,交互設(shè)計師

本文由 @PeterZ 授權(quán)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載。

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 好好好好????

    回復(fù)
  2. 真的是要不斷學(xué)習(xí)才行。。。

    來自廣東 回復(fù)
  3. 挺想知道作者是否開發(fā)過app,現(xiàn)在很多UI都不懂開發(fā)。文中的那個代碼的截圖是問程序員要的嗎?

    來自廣東 回復(fù)
    1. UI都要懂開發(fā)了,那開發(fā)應(yīng)該可以下崗了或者薪資可以降降了~

      來自北京 回復(fù)