**Soru:** Tasarım sistemi token kavramı nedir? Gerçekten gerekli mi, yoksa büyük şirketlerin lüksü mü? **Kısa cevap:** Token, bir tasarım değerinin (renk, boşluk, yazı tipi boyutu vb.) isme atanmış bir değişkenidir. Küçük projelerde opsiyonel, orta ve büyük projelerde ise sürdürülebilirlik için vazgeçilmez olmaktan öte kritik bir araçtır. --- **Tasarım sistemi token nedir?** Token'ı şöyle düşün: `#1A73E8` yazmak yerine `color.primary.brand` yazarsın. Renk değiştiğinde yalnızca token değerini güncellersin, her kullanıldığı yer otomatik olarak değişir. Token'lar üç katmanda düşünülür: 1. **Global / Primitive token:** Ham değerler. `blue.500 = #1A73E8` 2. **Semantic / Alias token:** Anlam yüklü adlar. `color.action.primary = blue.500` 3. **Component token:** Bileşene özel. `button.background.default = color.action.primary` --- **Tasarım sistemi token neden gerekli?** Rengi `#1A73E8` olarak 200 yerde kullandıysan ve marka rengi değişirse? 200 yeri manuel güncellemek hem zaman kaybı hem hata kaynağıdır. Token kullanıyorsan tek bir yeri değiştirirsin, hepsi güncellenir. Aynı durum: - Boşluk değerleri (`spacing.md = 16px`) - Yazı tipi boyutları (`typography.body.large = 16px`) - Gölge değerleri (`shadow.card = 0 2px 8px rgba(0,0,0,0.12)`) - Köşe yarıçapları (`border.radius.button = 8px`) --- **Tasarım sistemi token ile kod entegrasyonu:** Token'lar yalnızca tasarım aracında değil, kodda da yaşamalı. JSON, CSS değişkenleri veya platform-spesifik formatlar kullanılabilir: ```json { "color": { "primary": { "brand": "#1A73E8" } } } ``` Tasarımcı tasarım aracındaki token'ı günceller, geliştirici kodda aynı token'ı kullanır. Senkronizasyon araçları bu köprüyü otomatik kurar. --- **Küçük projeler için ne kadar gerekli?** Tek kişilik projede veya prototip aşamasında token sistemi aşırı yük getirebilir. Ama ekip büyüdükçe, platform sayısı arttıkça veya markanın birden fazla temayı desteklemesi gerektiğinde (açık/koyu mod, marka varyantları) tasarım sistemi token sistemi olmadan tutarlılığı korumak zorlaşır.