UX Design

Design System Nedir?

Tutarlı Tasarımın Temeli

What is Design System?

Serhat BahçelilerSerhat Bahçeliler
15 Ocak 202515 dk okuma

Design System Nedir? Tutarlı Tasarımın Temeli

Seviye: Orta
Kategori: UX Design
Son güncelleme: Ocak 2025


Giriş

Aynı ürünün farklı sayfalarında farklı buton stilleri. Bir yerde 16px padding, başka yerde 20px. Mavi tonları birbiriyle uyumsuz. Mobilde farklı, desktop'ta farklı.

Tanıdık geldi mi?

Ekip büyüdükçe, ürün genişledikçe tutarlılık kayboluyor. Her tasarımcı kendi kararlarını veriyor. Her developer farklı yorumluyor. Sonuç: Frankenstein ürün.

Design system, bu kaosa son veren sistemdir. Ortak dil, ortak kurallar, ortak component'ler. Herkes aynı yapı taşlarını kullanır, tutarlılık garanti.

Bu yazıda design system'ın ne olduğunu, bileşenlerini ve nasıl başlayacağını öğreneceksin.


Design System Nedir?

Design System: Bir ürün veya ürün ailesinin tutarlı tasarımını sağlamak için kullanılan yeniden kullanılabilir component'ler, stil kuralları, pattern'ler, ilkeler ve dokümantasyondan oluşan kapsamlı ekosistem.

Design system sadece bir dosya veya kütüphane değil. Üç ayağı var:

1. Tasarım varlıkları: Figma component'leri, stiller, token'lar 2. Kod varlıkları: React/Vue/Swift component'leri 3. Dokümantasyon: Kurallar, kullanım rehberleri, ilkeler

Bu üçü senkronize çalıştığında design system işlevsel olur.


Neden Design System?

1. Tutarlılık

Aynı component her yerde aynı görünür ve çalışır. Kullanıcı deneyimi birleşik olur.

2. Verimlilik

Sıfırdan tasarlamak yerine, hazır component'leri birleştir. Tasarım süresi kısalır.

3. Ölçeklenebilirlik

Yeni sayfa, yeni özellik eklemek kolaylaşır. Temel yapı hazır.

4. İş birliği

Tasarımcı ve developer aynı dili konuşur. "Primary button" deyince herkes aynı şeyi anlar.

5. Bakım kolaylığı

Bir değişiklik merkezi olarak yapılır, her yere yayılır. Mavi tonu değişecek? Token'ı güncelle, bitti.

6. Kalite

Test edilmiş, erişilebilir, responsive component'ler. Her seferinde baştan düşünmek yok.

%47 daha hızlı
Design system kullanan ekipler, tasarım ve geliştirme süresinde ortalama %47 tasarruf sağlıyor

Design System Bileşenleri

1. Design Tokens

Tasarım kararlarının en küçük birimi. Platform-agnostik değişkenler.

Token kategorileri:

[TABLE] | Kategori | Örnekler | |----------|----------| | Color | color-primary, color-background, color-text | | Typography | font-size-lg, font-weight-bold, line-height-tight | | Spacing | spacing-xs, spacing-md, spacing-xl | | Border | border-radius-sm, border-width-default | | Shadow | shadow-sm, shadow-lg | | Animation | duration-fast, easing-default | [/TABLE]

Token yapısı örneği: color-primary-500: #6366F1 color-primary-600: #4F46E5 spacing-4: 16px spacing-8: 32px font-size-base: 16px border-radius-md: 8px

💡

💡 Token isimlendirmesinde anlamlı ve tutarlı ol. "blue-500" yerine "color-primary-500" kullan. Böylece mavi yeşile dönse bile isim mantıklı kalır.

2. Foundation / Style Guide

Token'ların nasıl kullanılacağını tanımlar.

İçerir:

  • Renk paleti ve kullanım kuralları
  • Tipografi sistemi (scale, hierarchy)
  • Spacing sistemi (grid, margin, padding)
  • İkonografi kuralları
  • Görsel dil (fotoğraf, illüstrasyon)

3. Component Library

Yeniden kullanılabilir UI elementleri.

Temel component'ler:

  • Button (primary, secondary, ghost, disabled)
  • Input (text, email, password, error state)
  • Select / Dropdown
  • Checkbox / Radio
  • Card
  • Modal / Dialog
  • Toast / Notification
  • Navigation (header, sidebar, tabs)
  • Table
  • Form

Her component için:

  • Tüm varyasyonlar (size, state, type)
  • Responsive davranış
  • Erişilebilirlik gereksinimleri
  • Kullanım rehberi
  • Do's and don'ts

4. Patterns

Component'lerin birlikte nasıl kullanılacağını gösteren şablonlar.

Örnek pattern'ler:

  • Form pattern (label + input + error + help text)
  • Card grid pattern
  • Empty state pattern
  • Loading state pattern
  • Error page pattern
  • Navigation pattern

5. Dokümantasyon

Her şeyin nasıl kullanılacağını anlatan rehber.

İçerir:

  • Genel ilkeler (tone of voice, accessibility)
  • Token referansı
  • Component kataloğu
  • Pattern örnekleri
  • Contribution guide
  • Changelog

Atomic Design

Brad Frost'un Atomic Design metodolojisi, design system yapılandırmasında yaygın kullanılır.

5 seviye:

[TABLE] | Seviye | Açıklama | Örnek | |--------|----------|-------| | Atoms | En küçük birim, bölünemez | Button, input, label, icon | | Molecules | Atom grupları, basit fonksiyon | Search bar (input + button) | | Organisms | Molecule grupları, bölüm | Header (logo + nav + search + user) | | Templates | Sayfa iskeletleri | Blog post template | | Pages | Gerçek içerikli sayfalar | Specific blog post | [/TABLE]


Design System vs Diğerleri

Design System vs UI Kit

[TABLE] | Özellik | UI Kit | Design System | |---------|--------|---------------| | İçerik | Görsel component'ler | Component + kural + kod + döküman | | Yaşam döngüsü | Statik dosya | Yaşayan ekosistem | | Kod | Genellikle yok | Dahil | | Dokümantasyon | Minimal | Kapsamlı | | Governance | Yok | Süreç ve sahiplik var | [/TABLE]

Design System vs Style Guide

Style guide, design system'ın bir parçası. Sadece stil kurallarını içerir (renk, tipografi). Design system bunun üzerine component'ler, pattern'ler ve kod ekler.

Design System vs Component Library

Component library, design system'ın bir parçası. UI component koleksiyonu. Design system bunun üzerine token'lar, kurallar ve dokümantasyon ekler.


Popüler Design System Örnekleri

Material Design (Google)

  • En kapsamlı ve detaylı
  • Android'in temeli
  • Web için Material UI (React)
  • material.io

Human Interface Guidelines (Apple)

Carbon (IBM)

Polaris (Shopify)

Ant Design (Alibaba)

  • Enterprise React component'leri
  • Çin pazarı odaklı
  • ant.design

Atlassian Design System


Design System Nasıl Başlanır?

Küçük Başla

Tam teşekküllü sistem hemen gelmez. Önce:

1

Token'larla başla

Renk, tipografi, spacing tanımla

2

Temel component'leri oluştur

Button, input, card - en sık kullanılanlar

3

Dokümante et

Basit de olsa kullanım rehberi yaz

4

Pilot proje

Bir projede dene, feedback al

5

İtere et

Eksikleri tamamla, genişlet

Audit ile Başla

Mevcut ürünü audit et:

  • Kaç farklı buton stili var?
  • Kaç farklı renk kullanılıyor?
  • Tutarsızlıklar nerede?

Bu audit, design system'ın kapsamını belirler.

Önceliklendir

Her şeyi aynı anda yapamazsın. Öncelik:

  1. En sık kullanılan component'ler
  2. En çok tutarsızlık olan alanlar
  3. En kritik kullanıcı akışları

Design System Araçları

Tasarım

[TABLE] | Araç | Özellik | |------|---------| | Figma | Component, variant, auto layout, token plugin'leri | | Sketch | Library, symbol, shared styles | | Adobe XD | Component, design token desteği | [/TABLE]

Token Yönetimi

  • Tokens Studio (Figma plugin): Figma'da token yönetimi
  • Style Dictionary (Amazon): Token'ları koda çevirme
  • Theo (Salesforce): Token build tool

Dokümantasyon

  • Storybook: Component dokümantasyonu, interactive playground
  • Zeroheight: Design system dokümantasyon platformu
  • Notion/Confluence: Basit döküman için

Kod

  • Storybook: React, Vue, Angular component geliştirme
  • Bit: Component paylaşımı
  • Lerna/Nx: Monorepo yönetimi

Design System Governance

Sistem var, peki kim sahip? Nasıl güncellenir?

Sahiplik Modelleri

Centralized (Merkezi): Dedicated design system ekibi var. Tüm kararlar bu ekipten geçer.

Federated (Dağıtık): Farklı ekiplerden temsilciler bir araya gelir. Kararlar ortaklaşa alınır.

Hybrid: Core ekip temel sistemi yönetir, diğer ekipler katkıda bulunur.

Contribution Süreci

  1. Öneri/talep oluştur
  2. Review ve tartışma
  3. Tasarım + geliştirme
  4. Test
  5. Dokümantasyon
  6. Release

Versiyonlama

Design system'lar semantic versioning kullanır:

  • Major (1.0 → 2.0): Breaking change
  • Minor (1.0 → 1.1): Yeni özellik, geriye uyumlu
  • Patch (1.0.0 → 1.0.1): Bug fix

Sık Yapılan Hatalar

1. Çok erken genişlemek

Kötü Örnek
❌ Hata: İlk günden 100 component hedeflemek
İyi Örnek
✅ Doğrusu: 10-15 temel component ile başla, ihtiyaç oldukça ekle

2. Tasarım ve kod senkronizasyonu

Figma'daki component ile koddaki farklıysa, sistem işe yaramaz. Sync mekanizması kur.

3. Dokümantasyon eksikliği

Component var ama nasıl kullanılacağı yok. Dokümantasyon olmadan adoption düşer.

4. Adoption zorlamak

Ekibi zorla değil, değer göstererek ikna et. "Bak ne kadar hızlı" daha etkili.

5. Güncellememek

Design system yaşayan organizma. Güncel tutulmazsa ölür.

6. Edge case'leri görmezden gelmek

"Standart dışı" ihtiyaçlar olacak. Bunları nasıl ele alacağını planla.


Küçük Ekipler İçin

Tam teşekküllü design system lüks görünebilir. Ama küçük ekipler de faydalanabilir:

Minimum viable design system:

  • Renk token'ları (5-10 renk)
  • Tipografi scale (4-5 boyut)
  • Spacing scale (4-6 değer)
  • 5-10 temel component
  • Basit bir Notion sayfası dokümantasyon

Bu kadar bile tutarlılığı artırır ve tekrar eden işleri azaltır.


30 dakika
✏️

Şimdi Sen Dene

30 dakika

Görev: Mini design system token seti oluştur.

Senaryo: Yeni bir SaaS ürünü için temel token'ları tanımla.

Adımlar:

  1. Renk token'ları (10 dk)

    • Primary renk (5 ton: 100, 300, 500, 700, 900)
    • Neutral/Gray (5 ton)
    • Semantic: success, warning, error
    • Background, surface, text renkleri
  2. Tipografi token'ları (10 dk)

    • Font family (1-2 font)
    • Font size scale (xs, sm, base, lg, xl, 2xl)
    • Font weight (regular, medium, bold)
    • Line height (tight, normal, relaxed)
  3. Spacing token'ları (5 dk)

    • 4px base ile scale: 4, 8, 12, 16, 24, 32, 48, 64
  4. Diğer token'lar (5 dk)

    • Border radius: sm, md, lg, full
    • Shadow: sm, md, lg

Çıktı: Figma'da veya Notion'da token listesi oluştur.


📝

Özet

  • Design system = component'ler + kurallar + kod + dokümantasyon
  • Token'lar en küçük birim: renk, tipografi, spacing değişkenleri
  • Atomic design: atom → molecule → organism → template → page
  • UI kit statik, design system yaşayan ekosistem
  • Küçük başla: token + temel component + basit döküman
  • Governance önemli: sahiplik, contribution, versiyonlama
  • Tasarım-kod senkronizasyonu kritik
  • Popüler örnekler: Material, Carbon, Polaris, Ant Design

İlgili İçerikler

Önceki: Heuristic Evaluation Nedir?

Sonraki: Accessibility (Erişilebilirlik) Temelleri (yakında)

İlgili konular:

  • UI Nedir?
  • Component Tasarım İlkeleri (yakında)
  • Figma'da Design System Kurma (yakında)

İlgili Roadmap: UI Designer Roadmap → Design Systems


Kaynaklar

Derinleşmek istersen:

Design Atlas - UX, UI ve Product Design Öğrenme Platformu