【前端開發】什麼是原子設計(Atomic Design)?優化網頁元件架構的設計原則

更新於 發佈於 閱讀時間約 3 分鐘

前端工程師可能會隨著工作經驗的累積,而開始想要寫出更好的網頁架構,又或者是能有一套方法讓組織間的溝通、工作模式更加順暢。

在一次面試中,我向面試官分享了我在元件拆分、模組化網頁服務架構時的難題,對方向我建議了「原子設計」這套方法,使用了一年多後,我覺得這套模式真的很讚,所以想要寫一篇文章來分享這個簡單,卻能大大提升網頁元件開發效率的設計原則:「原子設計(Atomic Design)」。

什麼是原子設計?

raw-image

原子設計最初是一種設計方法,旨在幫助設計師更好地組織和管理網頁元素。

它可以將網頁元素拆分成更小、更可重用的元件,這些元件被稱為「原子」,並被組合成更大的模塊和模板。這種設計方法能夠提高效率、減少重複工作、促進團隊協作,並提高網頁的可維護性和可擴展性。

原子化網頁設計中的元素按照不同的層次來分類,包括原子(Atoms)、分子(Molecules)、組織(Organisms) 和模板(Templates),這些元素最終會組成頁面(Pages)。

原子是最基本的元素,例如:標籤、按鈕、文字輸入框、Checkbox、Input、Select 等。

分子是由多個原子組成的元素,例如:複合 Input 、Modal 、Dialog 等。

組織是由多個分子和原子組成的元素,例如:頁首(header)、導覽列(Navigator)等。

模板是網頁的整體布局和結構,我個人覺得這邊與頁面的定義有點模糊,所以個人的使用習慣是只會採用頁面這個層級,不會特別使用模板,大家可以根據自己的需求進行調整。

如果我們把這個結構展開來可能會長這樣,以 React 結構為例:

raw-image

是不是很簡單明瞭呢?

原子設計的優缺點

先講缺點,很多人一開始使用原子設計可能會覺得「很麻煩」、「花太多時間在拆分層級」,因為要拆分很細不得不花更多時間設計一個好用的元件。

雖然初期開發共用元件會花比較多時間去思考一些使用者情境,但後續接手維護的開發者相較起來就不需要每接到一個需求,嚴謹開發出來的元件可被擴充的空間更大,也比較好維護,如果搭配一些第三方套件,例如:Storybook,甚至可以與跨部門的人透過這套原子設計,協同開發組織等級的設計系統。

不論是對開發者或是設計師來說,就不需要花多餘的時間開發可能已經既有的元件,出現重工的狀況,真的是一個很棒的設計方法,推薦給跟曾經的我一樣苦思更好網頁元件管理方法的你!

我是 Vivian 我們下次見 :)


關於我:

一名從英文系畢業的前端工程師,喜歡閱讀、寫東西及自我成長。

|Instagram: Vivian Yeh|vivian_enlife

|聯絡我:vivian.enlife@gmail.com


參考資料:Atomic Web Design by Brad Frost

留言
avatar-img
留言分享你的想法!
avatar-img
Vivian Yeh - 跨領域轉職的軟體工程師
447會員
103內容數
為了追求可以窩在座位上、可以心無旁騖思考問題、座位可以亂七八糟沒關係、不需要到處哈腰點頭跑客戶,不用腳踩十公分、連妝都可以不用化的職場人生,文組少女毅然決然踏上RD的養成日常。
2024/05/23
與 cookie 相比,localStorage 與 sessionStorage 的機制相對單純,兩者皆是瀏覽器中的儲存空間,與 cookie 最大的不同在於:localStorage 與 ⋯⋯
Thumbnail
2024/05/23
與 cookie 相比,localStorage 與 sessionStorage 的機制相對單純,兩者皆是瀏覽器中的儲存空間,與 cookie 最大的不同在於:localStorage 與 ⋯⋯
Thumbnail
2024/05/22
在瀏覽器環境中有許多的儲存空間,想要查看這些空間的話,可以透過「chrome > Dev Tools > Application > Storage」即能進行查看。 瀏覽器內存空間的差異不僅常常被拿來被當作面試考題,在實務開發中更扮演舉足輕重的角色,今天就想透過這系列的文章深度了解這些瀏覽器內存⋯
Thumbnail
2024/05/22
在瀏覽器環境中有許多的儲存空間,想要查看這些空間的話,可以透過「chrome > Dev Tools > Application > Storage」即能進行查看。 瀏覽器內存空間的差異不僅常常被拿來被當作面試考題,在實務開發中更扮演舉足輕重的角色,今天就想透過這系列的文章深度了解這些瀏覽器內存⋯
Thumbnail
2024/03/27
Vite 是由 Vue 開發者 Evan You 所開發出來,用來加快、優化程式碼打包的工具,在這裡我們不免會需要提到大部分前端開發者可能都會聽過、使用過的前端工具:Webpack。 在那之前,我們先來聊聊為什麼前端會需要所謂的打包工具呢?
Thumbnail
2024/03/27
Vite 是由 Vue 開發者 Evan You 所開發出來,用來加快、優化程式碼打包的工具,在這裡我們不免會需要提到大部分前端開發者可能都會聽過、使用過的前端工具:Webpack。 在那之前,我們先來聊聊為什麼前端會需要所謂的打包工具呢?
Thumbnail
看更多
你可能也想看
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
這學期我們主要學習了原子的基本結構和定律,週期表與性質,還學習了價電子和化學鍵,在學習的過程中,讓我了解到非常多知識,同時又結合了課本的的題目練習,讓我對於這些知識更加熟悉。  這些知識中最讓我印象深刻的應該是價電子和化學鍵,每個價電子的數量都不同,價電子是指原子最外層的那層電子,同時因為價電子的
Thumbnail
這學期我們主要學習了原子的基本結構和定律,週期表與性質,還學習了價電子和化學鍵,在學習的過程中,讓我了解到非常多知識,同時又結合了課本的的題目練習,讓我對於這些知識更加熟悉。  這些知識中最讓我印象深刻的應該是價電子和化學鍵,每個價電子的數量都不同,價電子是指原子最外層的那層電子,同時因為價電子的
Thumbnail
打造具有邏輯的 Figma 顏色命名體系,是提高設計效率並增添專業感的關鍵一環。 這不僅是優化工作流程的實用方式,更是為你的設計注入有條理的美感。
Thumbnail
打造具有邏輯的 Figma 顏色命名體系,是提高設計效率並增添專業感的關鍵一環。 這不僅是優化工作流程的實用方式,更是為你的設計注入有條理的美感。
Thumbnail
為什麼元素周期表如此重要? 元素周期表是現代化學的基石,它提供了化學元素的排列方式,以及元素的性質、結構和反應特性等基本資訊。這個表格由俄羅斯化學家門捷列夫於1869年創建,至今已成為現代化學教學不可或缺的工具。 在元素周期表中,元素依據其原子序數(即原子核中質子的數目)從左至右排列,同時元素的週期
Thumbnail
為什麼元素周期表如此重要? 元素周期表是現代化學的基石,它提供了化學元素的排列方式,以及元素的性質、結構和反應特性等基本資訊。這個表格由俄羅斯化學家門捷列夫於1869年創建,至今已成為現代化學教學不可或缺的工具。 在元素周期表中,元素依據其原子序數(即原子核中質子的數目)從左至右排列,同時元素的週期
Thumbnail
這篇文章將會講述 Blockout 的介紹和適合的材質。
Thumbnail
這篇文章將會講述 Blockout 的介紹和適合的材質。
Thumbnail
本文摘要出我覺得IC開發流程中最基本的相關知識,幫自己的成長做紀錄,也分享給剛加入半導體/IC產業的小白們,希望這篇文章可以提供幫助。
Thumbnail
本文摘要出我覺得IC開發流程中最基本的相關知識,幫自己的成長做紀錄,也分享給剛加入半導體/IC產業的小白們,希望這篇文章可以提供幫助。
Thumbnail
知名的物理學家費曼 (Richard Feynman 1918–1988) 曾被問到:「如果有一天人類面臨大災難,所有已知的科學都被破壞殆盡,如何只用一句話能夠包含最多的資訊給下一代的"生物"?」 到底物理學家跟化學家如何表示原子呢?
Thumbnail
知名的物理學家費曼 (Richard Feynman 1918–1988) 曾被問到:「如果有一天人類面臨大災難,所有已知的科學都被破壞殆盡,如何只用一句話能夠包含最多的資訊給下一代的"生物"?」 到底物理學家跟化學家如何表示原子呢?
Thumbnail
「圖解」是一項很有魅力的技能,夠將複雜的資訊濃縮在一張圖上說清楚。這篇文章寫給需要處理複雜問題的人,內容摘要於一位工程師分享「為自己的程式碼做圖解的經驗」,看完後你可以學習圖解的 3 個大概念 — 區分、連結、描述關係,將腦中複雜的問題與邏輯架構,透過圖解表達出來。
Thumbnail
「圖解」是一項很有魅力的技能,夠將複雜的資訊濃縮在一張圖上說清楚。這篇文章寫給需要處理複雜問題的人,內容摘要於一位工程師分享「為自己的程式碼做圖解的經驗」,看完後你可以學習圖解的 3 個大概念 — 區分、連結、描述關係,將腦中複雜的問題與邏輯架構,透過圖解表達出來。
Thumbnail
原子長什麼樣子?簡單介紹原子模型與電子結構。
Thumbnail
原子長什麼樣子?簡單介紹原子模型與電子結構。
Thumbnail
筆者從事建築學習及建築設計的工作大約有三十多年,雖然很少以建築為主題發表文章與看法,不過也一直在探尋有關建築設計創作架構的概念和公式。以上所述,也就是此一探尋的初步結果,而實際應用在建築概念設計的過程、當作一個建築設計的心法之時,也能使個人心中有譜而不至於六神無主,同時避免陷入現代建築哲學的……
Thumbnail
筆者從事建築學習及建築設計的工作大約有三十多年,雖然很少以建築為主題發表文章與看法,不過也一直在探尋有關建築設計創作架構的概念和公式。以上所述,也就是此一探尋的初步結果,而實際應用在建築概念設計的過程、當作一個建築設計的心法之時,也能使個人心中有譜而不至於六神無主,同時避免陷入現代建築哲學的……
Thumbnail
# 55《大師說化學》:被污名化的學科,畢竟總是一堆人看到「含化學添加物」就會拒買。所以今天這篇將帶著大家認識分子,最後再來討論化學的道德爭議問題!
Thumbnail
# 55《大師說化學》:被污名化的學科,畢竟總是一堆人看到「含化學添加物」就會拒買。所以今天這篇將帶著大家認識分子,最後再來討論化學的道德爭議問題!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News