利用Symbol 建立一套設計規範組件庫?

2021-02-14 設計是個圈

這是一篇 Sketch 進階教程,讓你學會利用 Symbol 建立一套設計規範組件庫。

文章目錄

為保證更好地理解文章內容,你需要對以下知識點有一定的了解(部分內容已附註釋)。

1. Text style ¹

△ 圖片來自Sketch手冊

在設計包含大量文本的界面時,許多圖層擁有相同的文本屬性。將它們保存為 Text Style,即可復用這些文本屬性,無需逐一設置。

Text Style 用於設置文字規範,涵蓋字體、字號、字重、顏色、字間距、行高² 、段間距等內容。

¹ Text Style:https://sketchapp.com/docs/text/text-styles

² 行高:參考知乎專欄《聊一聊 Sketch 與 iOS 文字的行高》

2. Layer style ³

△ 圖片來自Sketch手冊

將一組風格元素保存為 Layer Style,這些元素便可復用在文檔中的任何圖層。

Layer Style 用於製作顏色規範,涵蓋填充顏色、描邊顏色、內外陰影、模糊效果等內容。

³ Layer Style:https://sketchapp.com/docs/styling/shared-styles

3. Symbol ⁴

△ 圖片來自Sketch手冊

作為 Sketch 的一項主打功能,Symbol 可以在畫板、頁面甚至其他 Sketch 文件中復用。Sketch 52 後,新功能令 Symbol 更加靈活化、輕量化。

△ Symbol替換

⁴ Symbol:https://sketchapp.com/docs/symbols

4. 英文命名

之所以使用英文命名組件,有以下幾點原因:

方便設計師後期修改、整理文件

團隊內部易達成共識,方便協作

節約開發成本,減少不必要的溝通與重新切圖情況

5. 組件庫的構建思路

建立組件庫之前,先來談談構建思路:解構、拆分、重構。

「 解構 」

通用類設計規範包含:基礎規範、圖標規範、組件規範,第一步,將這三類規範一一解構。例:基礎規範解構為文字規範、顏色規範、布局規範…

「 拆分 」

將解構後的規範拆分為最基本的元素 Symbol,基礎規範與圖標規範到這一步就完成了。例:文字規範中,拆分為標題、副標題、正文、輔助文字、標籤文字…

「 重構 」

重構或稱為 Symbol 嵌套⁵ 。用於製作組件規範,將拆分後的元素 Symbol 組合為模塊 Symbol,再將模塊 Symbol 組合為組件 Symbol。

⁵ Symbol嵌套:https://sketchapp.com/docs/symbols/nested-symbols

6. 利用Symbol組件庫建立設計規範

其實,一套優秀的Symbol組件庫 = 一套簡潔易用的設計規範。組件庫中不僅涵蓋了常用組件,同時也包含 Text Style 與 Layer Style,三者共同組成了一套設計規範。

先來看看優秀的 Symbol 組件庫(常用組件規範)是什麼樣子的:

圖示內容為 Ant Design 團隊出品的 Web 端組件庫⁶ ,使用 Symbol Manager 插件預覽。

⁶ Ant.Design.Components.Beta.3.10.5.sketch:https://ant.design/docs/spec/download-cn

根據上文的思路,我們將基礎規範、圖標規範、組件規範解構並將部分拆分為基礎元素,得出以下內容:

基礎規範

1. 文字規範(創建為Text Style)

↳ 標題(Titile)

↳ 副標題(Subtitile)

↳ 正文(Body)

↳ 次要文字(Secondary)

 ↳ 標籤文字(Tags)

2. 顏色規範(創建為Layer Style)

3. 布局規範

4. 標籤規範

↳ ……

5. 其他樣式

↳ 圓角規範(Radius)

↳ 陰影規範(Shadows)

↳ ……

基礎規範中的主要內容為文字規範與顏色規範,將文字規範中的元素創建為 Text Style,顏色規範中的元素分類後創建為 Layer Style,其他元素根據不同情況進行調整即可。

圖標規範

圖標規範中,可根據圖標尺寸、業務場景、圖標功能等進行層級區分,筆者根據圖標尺寸來區分層級(暫不考慮最小可交互區域):

在製作圖標規範時,需要根據設計師自身情況作出相應調整。但在設計圖標時,以下幾點是共通的:

「 構成簡單 」

根據簡潔法則我們知道,簡潔圖形的識別需要用戶最少的認知和努力。對於通用規範中的圖標來說,儘可能的簡潔以保證用戶的辨識度。當然,像 TabBar、金剛區等特殊區域的圖標,需要我們在工作中單獨設計。

「 視覺尺寸統一 」

使用圖標盒子作為設計時的參照,保證整套圖標在視覺大小上的統一。當然圖標盒子並不是一個定死的數值,日常工作中需要根據圖標形狀進行微調。

「 像素對齊 」

對齊像素網格,路徑錨點的位置使用整數,避免虛邊情況的發生。

在 Sketch 中,可以通過打開像素模式或使用自動對齊像素功能來進行像素對齊。

「 使用偶數 」

適配原因,尤其在@2x的情況下作圖時需格外注意。

「 矢量形狀 」

使用 Convert to Outlines 與布爾運算功能,將圖標轉化為矢量形狀。

TIPS:在矢量形狀上套用 Layer Style 中的任意顏色,在之後的 Symbol 嵌套中就可以更改圖標的顏色了。

組件規範

由於篇幅有限,本文只介紹通用類組件,解構並歸類後,得出以下內容(設計師可以根據項目情況自行補充)

但僅僅解構分類是不夠的,想要完成一整套 Symbol 組件庫,還需要將解構後的組件拆分為單獨的元素 Symbol,以方便嵌套並組成 Symbol 組件。

篇幅有限,我們通過 List 組件舉例分析:

同上文製作 Symbol 組件庫的思路一樣,對於單一組件,同樣運用解構 → 拆分 → 重構的思路。不同的是,單一組件需要考慮到組件的不同形式 / 狀態。

「 解構為模塊 」

將 List 模塊化解構,得到 背景 Background、分割線 Divider、左側內容 Left、右側內容 Right

「 拆分為元素 」

左、右兩側內容還可以繼續拆分,得到 圖標 Icon、標題 Title、文字 Text、箭頭 Arrow

「 添加其他形式 / 狀態 」

僅涵蓋一種形式 / 狀態並不能稱之為完整的規範,我們需要考慮到List常見的所有形式

如圖,分割線的各種狀態,左右側內容的各種形式都需要考慮在內。對比前文拆分的結果,去除重複項,你會發現多出了一個開關 Switch 元素(Arrow、Check屬於Icon類),把它加入列表,就得到了構成 List 組件的所有元素 Symbol。

是不是有點眼熟?沒錯,這些元素 Symbol 正是基礎規範與圖標規範中的內容。

「 Symbol嵌套(重構)」

反向進行上面三步的思路,進行 Symbol 嵌套:首先將最基礎的元素 Symbol 組合成模塊化 Symbol,然後將模塊化 Symbol 組合成為 List 組件。

由於使用了 Symbol 嵌套,所以最後組合而成的 List 組件可以在右側的 Overrides 中進行各個模塊與元素的設置。

重複利用解構為模塊、拆分為元素、添加狀態/形式、重構(元素 Symbol → 模塊 Symbol → 組件 Symbol)這 4 個步驟,完成組件規範列表中的所有組件,這套利用了 Symbol 功能製作的通用規範組件庫就完成了。

寫在後面

1. 如何將Symbol組件庫運用在設計稿中?

將製作好的 Symbol 組件庫保存為 .sketch 文件,在 Sketch 上方菜單中找到:Sketch—Preferences—Libraries 中,點擊下方 Add Library… 按鈕,將 .sketch 文件導入即可。

2. 如何規範化管理Symbol組件庫?

當 Symbol 名稱中存在 「 / 」 符號時,Sketch 會將他們作為組獨立對待。舉個慄子:兩個 Symbol,一個名為 「 Button / normal 」,另一個名為 「 Button / pressed 」,這兩個 Symbol 將被歸類在 Buttom 分組中。

當然,也可以使用 Sketch Manager⁷ 插件來幫助你規範化管理你的 Symbol。

⁷ Symbols Manager插件:http://sketch.cm/plugins/114

相對於 Sketch 那死板的修改名稱管理 Symbol 組件庫的方法,Symbols Manager插件能夠以類似Finder的形式來幫助你查看、修改、刪除你的組件庫。當然,9.99 刀買斷的價格、加上只有搭梯子才能正常使用的限制也許會讓你望而卻步。

然而我們相信,正版意識、英文化組件管理、以及為優秀內容付費的概念會慢慢滲透到每個設計師的潛意識當中。

3. 如何令Symbol組件更加靈活?

Resizing 智能縮放是 Sketch 39 中加入的新功能,有多智能呢?

看看 Sketch 官方的答案 https://sketchapp.com/docs/layer-basics/constraints

 

如何在 Symbol 組件庫中運用呢?舉個慄子:

可運用 Resizing 的類似組件還有很多,在製作 Symbol 組件庫中稍加留意,就能讓你的 Symbol 更加的靈活易用。

4. Symbol的拓展使用

Humaaans 是由 Pablo Stanley 提供的可免費用於商業或個人的插畫圖庫。你可以替換人物的髮型、膚色、上衣、褲子、鞋子…也可以旋轉各元素的方向,再添加一點氛圍,它便是能適用於各種場合的插圖。

△ 內容來自網絡,官網連結 https://www.humaaans.com/

Avataaars 同樣是來自 Pablo Stanley 的可免費用於商業或個人的頭像素材庫,頭像中的任何元素都可以 DIY 組合,包含頭像、鬍子、眼睛、眼鏡、臉部以及膚色均可自由搭配。(內容來自網絡,官網連結 https://avataaars.com/)

最後,希望設計師在建立 Symbol 組件庫的過程中,得到的不僅是設計效率的提升,還有其他各個方面的知識儲備與能力提升。

相關焦點

  • Sketch組件庫與團隊協作
    什麼是原子設計理論製作組件庫之前我們需要了解什麼是原子設計理論。原子設計理論來源於化學領域。為什麼要製作組件庫了解了原子設計理論,我們就可以利用這一理論在Sketch裡面高效的創建組件/組件庫了。在創建組件庫之前,我們要了解為什麼中大型公司設計團隊都在使用組件庫?
  • Vant - 有贊出品的移動UI組件庫
    Vant 是贊前端團隊維護的移動端組件庫,提供了一整套 UI 基礎組件和業務組件。介紹輕量、可靠的移動端 Vue 組件庫,採用 MIT 開源協議, 目前github star 數9k+,是有贊的一套開源組件庫。通過 Vant,可以快速搭建出風格統一的頁面,提升開發效率。目前已有近 60+ 個組件,這些組件被廣泛使用於有贊的各個移動端業務中。
  • 視覺工作流優化:如何構建組件庫?
    這四個概念中,原生組件和擴展組件都屬於系統(Android & iOS官方規範)導向的類型,所以我們暫且統稱為基礎組件;這類組件存在於大部分App中,例如導航欄、工具欄、彈窗、toast、按鈕等就是基礎組件。
  • Zarm 2.0 發布,基於 React 的組件庫
    是的,大家可能很疑惑:「都 2020 年了,怎麼現在還發布組件庫呢?」確實,對於前端組件庫的大家庭來說,我們遲到了,但也請各位可以抽出幾分鐘看看一位初來乍到的新人的自我介紹:Zarm 是什麼Zarm 是眾安科技基於 React、React-Native 研發的一款適用於企業級的移動端 UI 組件庫。Zarm 的優勢多 組件多。
  • RXThinkCMF_TP6 v1.0.1 旗艦版發布,優化UI組件庫 - OSCHINA...
    v1.0.1版本更新1、優化UI組件庫2、重構富文本編輯器組件;RXThinkCMF_TP6
  • 設計沉思錄丨設計並落地一套插畫系統—FaceTeam
    插畫系統是一個建立公司視覺品牌一種有效的方式,本文作者分享了如何設計並落地一套強大的插畫系統的過程,供大家一起參考學習。01 前沿插畫在現在的視覺設計中越來越重要,但是隨便一畫就是成功的插畫嗎?隨著研究的不斷深入,我發現經過整合的插畫,還可形成高效的生產系統;它的原理並不複雜簡單,就好像每個設計師自己積累的素材庫一樣,相同的畫面可以實現元素的共用,最大程度的提升生產效率,避免了設計資源的浪費;另外我還有一個非常深刻的體驗就是,遇到緊急需求時,有了素材庫的存在,我們可以更加從容的面對,不僅不用加班加點趕製,而且更不會因為時間的壓縮降低設計品質。
  • 值得推薦的七種好用的Angular組件庫
    那麼,下面我將為您深入地探究每個組件庫,以方便您及時作出最合適的選擇。 1.Angular Material 以前被稱為Material2的Angular Material,是由Angular和TypeScript建立的官方組件庫。它主要致力於實現Google的material設計。
  • 設計規範 | Web端設計組件篇-反饋類
    設計規範中最重要的部分就是組件規範了,制定組件的規範有哪些好處呢?高效簡單:熟悉了解組件的用法之後,在做界面設計時,只需要合理運用組件就可以快速搭建web端界面,高效無差錯。由於有成套的組件規範,所以在互動設計和視覺設計過程中無需每次都重複勞動。
  • 2020年5個最佳Vue移動端組件庫|UI框架
    小夥伴們平時開發vue,react或是angular項目,都喜歡使用的什麼UI組件庫呢?今天,就來盤點下,幾個熱門優質的Vue.js移動端UI組件庫。1、Mint UI餓了麼開源的移動端UI組件庫,基於vue.js的移動端UI框架,包含豐富的 CSS 和 JS 組件,能夠滿足日常的移動端開發需求。
  • 專家訪談:亟待規範——從應用角度談組件尺寸及版型設計標準化
    編輯 | 光伏頭條 光頭君 2020年 6月 24日,晶科、隆基、晶澳等7家企業聯合發布了「關於建立光伏行業標準尺寸的聯合倡議「,倡議建立幾何尺寸「182mm*182mm(M10)」的矽片標準。「倡議」一經發布,即引起行業熱議,可謂「一石激起千層浪」。
  • 2021年你應該知道的9個網頁組件庫
    根據定義,所有web組件都是可互操作的,可以很好地與其他組件協作。自定義組件和小部件建立在網頁組件標準之上,可以跨現代瀏覽器工作,並且可以與任何與HTML一起工作的JavaScript庫或框架一起使用。那麼現在網上有哪些現成的網頁組件庫科研使用呢?下面為大家提供了9個不錯的組件庫,希望能對你有所幫助。1.
  • 8個實用步驟,教你執行與落地一套設計系統,提升設計價值
    為了更好地理解,我在這裡定義一下什麼是設計系統——具有清晰的使用規範、可重複使用的組件庫,並在設計師和開發者之間共享。它需要標明組件應何時使用,包括隨時可調用的代碼。我們的設計系統仍在迭代中,但我仍希望通過這篇文章,能把我們的經驗以及一些有用的技巧和工具分享給你。
  • 軟體項目實訓及課程設計指導——系統概要設計中的組件設計示例
    軟體項目實訓及課程設計指導——軟體系統概要設計中的組件設計示例1、UML技術規範中的UML組件及UML組件圖UML技術規範中的組件是軟體應用系統的一個物理單元,它代表軟體應用系統中的一個物理實現的功能模塊——在Java技術平臺中一般為一個*.jar包文件。
  • Steps 組件的設計與實現
    NutUI 組件源碼揭秘前言本文的主題是 Steps 組件的設計與實現。NutUI 是一套京東風格的移動端Vue組件庫,開發和服務於移動 Web 界面的企業級前中後臺產品。通過 NutUI ,可以快速搭建出風格統一的頁面,提升開發效率。目前已有 50+ 個組件,這些組件被廣泛使用於京東的各個移動端業務中。在此之前他們要分開使用,但是又有很多功能是交叉的,而且並不能滿足步驟和時間同時出現的業務場景,因此將他們進行了合併。
  • 附源文件 | 如何製作可復用iOS/Material Design元件庫?
    1.iOS和Material Design(簡稱MD)元件庫下載2.通過源文件學習iOS和MD兩大設計規範的組件控制項體系3.如何通過Axure元件庫提高效率文章大綱:1.統一可復用元件庫價值2.iOS和MD元件庫使用範圍及下載地址3.如何製作統一可復用的Axure元件庫4.如何使用統一可復用的Axure元件庫
  • 如何製作可復用iOS/Material Design元件庫?(附源文件)
    2.iOS和MD元件庫使用範圍及下載地址3.如何製作統一可復用的Axure元件庫4.如何使用統一可復用的Axure元件庫5.通過源文件,學習iOS和MD兩大設計規範的組件控制項體系1.統一可復用元件庫價值1.統一產品的用戶體驗:涉及到多個互動設計師/PM協同時,如果各個互動設計師/PM沒有使用統一的元件時
  • 設計規範 | 詳解組件控制項結構體系:網絡異常類
    那麼,針對網絡異常情況一共有哪幾種設計呢?哪些情況使用全局組件,哪些情況使用局部組件呢?本文作者就按照三種網絡情況,總結了對應設計形式。網絡異常無非就3種情況:第一種是網絡切換:WiFi網絡環境切換到了移動數據網絡環境。第二種是斷網情況:完全沒有網絡。第三種就是弱網情況:2G/E時無法加載或者上傳數據。
  • 淘寶總監教你打造一份用得上的設計規範
    今天奇維(手淘設計總監)用淘寶2015的規範優化實戰案例,結合之前在騰訊CDC經歷過的雅虎、QQ、金蝶等設計規範,給同學們聊聊他所理解的規範,以及如何完成一套產品性質的規範,全文高能幹貨,收!奇維(手淘客戶端設計總監):別人常問我的花名是什麼意思,是否期望具備奇特思維?
  • kpc v0.7.8 發布,同時支持 Vue/React/Intact 的前端組件庫
    動機目前市面上已經存在大量組件庫,我們為什麼還要造這個輪子呢?下面我們解釋下這個組件庫開發的動機。
  • Vant Weapp - 有贊出品的免費開源微信小程序組件庫
    輕量可靠的小程序UI組件庫,主流移動組件庫 Vant 的微信小程序版本。Vant Weapp 和 Vant 的區別之前推薦過的移動端web組件庫 Vant 是 Vue.js 版本的,其對內承載了有贊所有核心業務,對外有十多萬開發者在使用,一直是業界主流的移動端組件庫之一。