從網(wǎng)上搜索設(shè)計組件,我們能找到各種對外公開的設(shè)計組件庫,同樣還有不少或概括或詳細(xì)的文章,手把手教你“如何搭建一個好的設(shè)計組件庫”,但這些方法論很少探討面對C端組件頻繁增改、設(shè)計規(guī)范動態(tài)調(diào)整,如何高效賦能業(yè)務(wù)設(shè)計交付的相關(guān)內(nèi)容,但這恰恰是搜索業(yè)務(wù)面臨的關(guān)鍵問題。
搜索是一個“牽一發(fā)而動全身”的業(yè)務(wù),每一個微小的設(shè)計細(xì)節(jié)都有可能影響各個業(yè)務(wù)的數(shù)據(jù)指標(biāo),一個“好的設(shè)計組件庫”需要以一種潛移默化的方式讓設(shè)計師掌握設(shè)計規(guī)范,完成合規(guī)的設(shè)計,從這個角度而言它應(yīng)該比較
「好懂」
。
而作為服務(wù)于整個設(shè)計團(tuán)隊的公用設(shè)計組件庫,面對每月數(shù)以萬計的調(diào)用次數(shù),它必須保障最基本的易用性,應(yīng)該非常
「好用」
。
同時,面對頻繁迭代,“好的設(shè)計組件”還需要保持最快的更新速度,為各個橫向團(tuán)隊提供正確的樣式,從這個角度來說它還要
「好維護(hù)」
。
因此,
「好懂、好用、好維護(hù)」
是搜索設(shè)計語境下,對一個“好的設(shè)計組件”的定義。
接下來,我們將從這三個「好」入手,分享搜索設(shè)計組件庫在升級過程中的一些思考,希望能和大家共同探討。
“萬丈高樓平地起”,我們先來說說如何從零開始構(gòu)建一個既符合設(shè)計規(guī)范又易于理解的設(shè)計組件。
首先,在搭建組件時,我們可以考慮采用
多層嵌套
的方式,即組件(Component)內(nèi)部嵌套變體(Instance)。這種方式不僅能省去組件搭建和修改過程中的重復(fù)操作,甚至還能在解綁組件時,通過選中內(nèi)部的子組件圖層進(jìn)行解綁,大大簡化了搭建和使用雙方的操作流程。
在多層嵌套的思路下,我們可以進(jìn)一步用
“底層靈活、上層收斂”
來指導(dǎo)組件的搭建。這意味著底層變體的形式足夠多樣,能夠支持大部分的狀態(tài)切換,而在上層組件搭建的過程中顯性地加強(qiáng)規(guī)范的指引(如規(guī)范中不允許使用的樣式不對外展示),以降低超出規(guī)范設(shè)計的可能。
具體的搭建流程可以大致分為三步:
場景收集和分析、搭建基本變體組、拓展高階變體組
。
我們將通過視頻組件搭建的生動案例,具體介紹如何依據(jù)“底層靈活、上層收斂”原則來搭建組件庫,使得組件本身既足夠靈活,又能起到足夠的約束作用。
在著手搭建某類組件時,我們首先通過規(guī)范確認(rèn)和場景遍歷,廣泛收集各類變體。隨后,從我們能想到的所有維度出發(fā),對這些變體進(jìn)行細(xì)致定義。這樣,我們就能得到一張詳盡描述組件變體性質(zhì)的表格。表格的第一列依次列出變體1、變體2、變體3等,而第一行則羅列出各種維度,如寬度、比例等。通過這種方法,我們可以將原本零散、雜亂的組件變體描述,系統(tǒng)地歸納整理成一張清晰明了的表格。
表格通過不同維度來唯一確定一個變體,這些維度可大致分為兩個特性和一個共性。共性指的是所有變體在這一維度上均保持一致,常見特性則涵蓋了最常見的分類性質(zhì),如寬度、高度、數(shù)量和優(yōu)先級等,而業(yè)務(wù)特性則與具體業(yè)務(wù)緊密相關(guān)。
在搭建組件時,我們可以遵循
「共性-常見特性-業(yè)務(wù)特性」
順序,這樣的順序有助于降低理解成本,因為最符合心智的分類被置于外層,同時底層的組件又保持了足夠的靈活性,便于切換各種變量。對于業(yè)務(wù)特性,我們可以根據(jù)實際情況靈活處理,既可以將其作為基本組件的延展,也可以不將其納入組件范疇。
-
-
播放狀態(tài)是所有變體的共有性質(zhì);
-
自動播放情況與業(yè)務(wù)相關(guān),但不一定需要在組件庫中呈現(xiàn);
-
高階組件僅涉及少部分尺寸的組件,應(yīng)在完成基本組件搭建后再進(jìn)行。
據(jù)此,我們可以輕松梳理出視頻組件搭建流程的優(yōu)先級:
-
播放狀態(tài)作為共性,應(yīng)首先搭建;
-
基本組件尺寸和組合是最符合用戶心智的變體選擇,應(yīng)緊隨其后;
-
值得注意的是,“封面槽位”是“播放狀態(tài)”中的一個圖層。根據(jù)“底層靈活、上層收斂”的原則,我們將其插入到搭建播放狀態(tài)之前。因此,視頻組件的最終搭建流程為:
-
-
-
-
完成對視頻組件搭建的分析,我們就可以有條不紊地開始搭建組件了。先搭建基本組件視頻組件,再用基本組件搭建高階組件。這一步驟雖然為大家所熟知,但仍需格外注意,如配置項的設(shè)置要力求合理,也可以融入設(shè)計規(guī)范和使用規(guī)范,同時還應(yīng)將一些搭建過程中的零散組件集中收納避免被調(diào)用。關(guān)于這些具體的注意事項,我們將在后續(xù)部分進(jìn)行詳細(xì)闡述。
至此我們完成了組件搭建的基本流程,一個達(dá)到及格線的視頻組件就誕生了。據(jù)統(tǒng)計,優(yōu)化后每次調(diào)用視頻組件將節(jié)省至少10步的點擊操作!
完成了一個基本組件的搭建后,我們可以轉(zhuǎn)換視角,從使用的角度來審視并檢查這個組件。
我們期望,從插入組件變體、切換組件配置,再到最后的解綁組件,整個流程都能縱享絲滑且穩(wěn)定可靠,確保業(yè)務(wù)設(shè)計師在使用過程中獲得最佳體驗。
我們可以一步步來審視組件的使用過程。首先是插入組件,據(jù)觀察,通常有三種方式,①在左側(cè)的資產(chǎn)面板(Assets)中直接找到對應(yīng)組件并插入;②通過查閱設(shè)計規(guī)范,鎖定所需的變體后復(fù)制粘貼;③選中一個不需要的組件,通過右側(cè)的“切換變體”面板(Swap instance)切換成所需的變體。很明顯,在這個過程中依賴的是組件的精準(zhǔn)搜索和快速定位。
為了提升搜索精度,我們可以從組件命名入手,采用中、英、數(shù)字結(jié)合的方式,實現(xiàn)模糊匹配;也可以在發(fā)布時隱藏不希望被調(diào)用的組件,以減少無用的搜索結(jié)果。如果組件是采用前文提到的“多層嵌套”方式搭建的,我們可以添加“Preferred”子組件,這樣在切換時會優(yōu)先展示這些子組件,這個功能在切換圖標(biāo)時尤為實用。
對于習(xí)慣邊查閱設(shè)計規(guī)范邊使用組件的設(shè)計師,我們增加了更多實際使用的正誤案例,這些案例直觀展示了組件變體的正確選擇和使用方式,進(jìn)一步降低了規(guī)范的理解成本,有效輔助設(shè)計決策。同時,我們專門維護(hù)了一個固定區(qū)域,用于平鋪展示所有組件變體。為了確保能夠輕松點選,我們將變體放在最外層展示(即不在任何Frame、Group或Section中)。這樣能讓設(shè)計師一目了然地看到所有變體,從而快速選擇所需的組件。
在組件配置階段,有三項注意點能讓組件更加易用,即“重視組件的可視化效果、設(shè)置高效易用的配置項、貼心地保存修改”。
考慮到C端組件的多樣性和用戶的使用習(xí)慣,我們應(yīng)避免使用過于復(fù)雜的分組方式。相反,應(yīng)更注重組件的樣式展示,并盡量簡化組件的層級結(jié)構(gòu)。這樣,設(shè)計師在使用時能夠更直觀地看到組件的外觀,而無需深入復(fù)雜的層級去查找。
另外值得注意的是,F(xiàn)igma會默認(rèn)用組件集合中最左上角的組件生成預(yù)覽樣式,因此應(yīng)當(dāng)把視覺上最有代表性的變體放在左上角,這個效果在切換變體(Swap instance)時很重要,因為目前在該面板中沒法查看組件細(xì)節(jié),只能靠縮略圖和名稱來推測是哪個組件。
其次對于配置項的設(shè)置也大有講究,業(yè)界有組件庫為了實現(xiàn)C2D2C,從源頭上將設(shè)計組件和前端組件的配置項打平,這是不錯的思路,但有可能會提升設(shè)計側(cè)的理解成本。針對搜索業(yè)務(wù)的特殊語境,我們還是選擇了從「規(guī)范理解」角度去設(shè)置組件的配置項,將所有允許自定義的配置盡可能外露,并清晰地說明修改限制,如字?jǐn)?shù)限定、選項個數(shù)等,這樣能夠在使用的過程中強(qiáng)化業(yè)務(wù)設(shè)計師對規(guī)范的掌握。
另一個常常被忽視的關(guān)鍵點是選項和配置的排序問題。為了提高瀏覽和選擇的效率,建議對選項和選項之間,以及外層的不同配置項,都按照一定的邏輯順序進(jìn)行排序。
最后一點,我們稱之為
“貼心地保存修改”
機(jī)制,這個針對的是文字修改的場景。
在實際操作中,使用一個組件可能需要對多個配置項進(jìn)行修改。有時在修改完文字內(nèi)容后再去調(diào)整其他配置時,已修改的文字會被重置。這時文本屬性(text property)的設(shè)置就顯得尤為重要,它能夠記憶并保存修改過的文字內(nèi)容,從而免于重復(fù)輸入。
還有一些情況是,某個組件變體實際上并沒有與某個值相對應(yīng)的組件(盡管Figma機(jī)制允許選擇該值),用戶切換后就會發(fā)現(xiàn)組件完全變了,只能撤回。為了避免這類情況,建議使用另外的標(biāo)記來表明組件某個設(shè)置項是不可切換的。
完成了組件的搭建和檢查,接下來讓我們聚焦于組件的日常維護(hù)。
這一環(huán)節(jié)可以從兩個維度展開,一是依托中臺的日常數(shù)據(jù)監(jiān)控進(jìn)行維護(hù),二是通過團(tuán)隊內(nèi)部的緊密協(xié)同機(jī)制來保障。后者更多側(cè)重協(xié)作流程和機(jī)制上的建設(shè),在本文中我們不做更多展開,重點討論前者。
數(shù)據(jù)監(jiān)控的方式主要依托Figma中的組件數(shù)據(jù)看板(查看路徑:View libraries-Analytics),看板中展示了各個組件的調(diào)用數(shù)和解綁數(shù)數(shù)據(jù),這些數(shù)據(jù)不直接反映組件的優(yōu)劣,但如果我們觀測到某個組件解綁率偏高,我們會考慮直接把它
作為模板
而不是創(chuàng)建成組件。
以上是百度搜索設(shè)計團(tuán)隊在設(shè)計組件庫升級過程中的心得分享,包括搜索業(yè)務(wù)對于“好的設(shè)計組件”的訴求,以及一些搭建和優(yōu)化組件的實用思路,核心是探討如何從組件庫建設(shè)的角度入手,成功助力團(tuán)隊提升設(shè)計資產(chǎn)消費效率。
當(dāng)前我們已經(jīng)完成設(shè)計資產(chǎn)工程化的前序環(huán)節(jié),我們對設(shè)計資產(chǎn)的升級和探索并沒有結(jié)束,未來我們將持續(xù)探索設(shè)計系統(tǒng)工具化的形態(tài)、與AI大模型結(jié)合的機(jī)會,通過豐富消費途徑,實現(xiàn)在業(yè)務(wù)交付的不同階段下全方位提效。這部分內(nèi)容后續(xù)有機(jī)會也將會和大家見面,請大家期待!
感謝閱讀,以上內(nèi)容均由百度MEUX團(tuán)隊原創(chuàng)設(shè)計,以及百度MEUX版權(quán)所有,轉(zhuǎn)載請注明出處,違者必究,謝謝您的合作。申請轉(zhuǎn)載授權(quán)后臺回復(fù)【轉(zhuǎn)載】。
作者:百度MEUX鏈接:https://www.zcool.com.cn/article/ZMTY1MTYwOA==.html來源:站酷著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。