11 KiB
11 KiB
مشخصات درسنامه: سیستم طراحی (Design Systems & Component Ecosystems)
- شناسه در سیلابس:
L5.8 - فصل: فصل ۵: طراحی تجربه و هویت محصول (Ch 5)
- نوع محتوا: 📘 درسنامه متنی
- زمان تقریبی مطالعه: ۱۵ دقیقه
- پیشنیازهای مستقیم:
L5.7(کامپوننتها، وضعیتها و انیمیشن)
۱. اهداف یادگیری (Learning Objectives - Bloom's Taxonomy)
دانشجو پس از مطالعهٔ این درسنامه باید بتواند:
- درک کند (Understand): سیستم طراحی (Design System) چیست و چرا بدون آن، یک پروژه بزرگ ساختهشده با هوش مصنوعی تدریجاً به یک «هیولای فرانکنشتاین» با دهها رنگ و دکمه ناهماهنگ تبدیل میشود.
- تحلیل/ارزیابی کند (Evaluate): سیر تحول کتابخانههای رابط کاربری از نسل بوتاسترپ (Bootstrap) و متریال یوآی (Material UI) تا پارادایم انقلابی shadcn/ui و Tailwind (مالکیت کامل کدها در پروژه) را مقایسه کند.
- بهکار ببندد (Apply): معماری توکنهای طراحی (Design Tokens) را بر اساس استانداردهای Aura Design Systems (https://www.aura.build/design-systems) برای استخراج متغیرهای تم تیره و روشن پیادهسازی کند.
- بهکار ببندد (Apply): سند مشخصات طراحی مارکداون اختصاصی
design.md(بر پایه https://getdesign.md/design-md) را در ریشه پروژه پورتفولیو قرار دهد تا هوش مصنوعی را مجبور به استفاده از توکنهای از پیشتعیینشده نماید.
۲. محدوده و مرزهای محتوا (Scope & Boundaries)
آنچه باید پوشش داده شود (In-Scope):
- سندرم هیولای فرانکنشتاین در وایب کدینگ:
- وقتی با هوش مصنوعی چند صفحه مختلف میسازید، در صفحه اول دکمه آبی و گرد است، در صفحه دوم بنفش و تیز، و در صفحه سوم خاکستری!
- سیستم طراحی منبع واحد حقیقت بصری است که جلوی این چندپارگی را میگیرد.
- سیر تحول کتابخانههای کامپوننت وب:
- نسل اول (بوتاسترپ - Bootstrap): کلاسهای سنگین یکپارچه با ظاهر یکنواخت و قدیمی سال ۲۰۱۲.
- نسل دوم (Material UI و کتابخانههای پکیجی): کامپوننتهای آماده کامل در قالب پکیجهای حجیم npm که تغییر ظاهر آنها طاقتفرسا و قفلشده بود.
- نسل سوم و حاکم فعلی (shadcn/ui + Tailwind CSS): کامپوننت جعبه سیاه نیست؛ کدهای تکتک اجزا (Button, Card, Modal, Input) مستقیماً درون پوشه
components/ui/پروژه شما کپی میشوند و شما و ایجنت هوش مصنوعی مالک ۱۰۰٪ آنها هستید.
- معماری توکنهای طراحی با الهام از Aura (aura.build/design-systems):
- جریان تبدیل توکنها:
- متغیرهای ریشه CSS در فایل سراسری (
--background,--foreground,--primary,--card,--radius). - نگاشت متغیرها به کلاسهای کلاسیک Tailwind (
bg-background text-foreground border-border). - استفاده در کامپوننتها به طوری که با یک سوییچ تم، تمام رنگهای کل سایت همزمان تغییر کنند.
- متغیرهای ریشه CSS در فایل سراسری (
- جریان تبدیل توکنها:
- تدوین فایل
design.mdبرای هوش مصنوعی (getdesign.md/design-md):- ساخت فایلی سبک در ریشه پروژه که راهنمای هوش مصنوعی باشد:
- پالت رنگی مجاز، فواصل مجاز (گرید ۸ پیکسلی)، فونت مجاز (وزیرمتن و اینتر) و سبک کامپوننتها.
- ارجاع به
@design.mdدر پرامپتهای ادیتور Cursor و جلوگیری از اختراع کدهای سلیقهای تصادفی نظیرp-[17px]یاbg-[#2a4d69].
- ساخت فایلی سبک در ریشه پروژه که راهنمای هوش مصنوعی باشد:
- سیستم کامپوننتهای پروژه محوری (پورتفولیوی پویا):
- گونههای استاندارد دکمه (Button Variants: پیشفرض، ثانویه، خطدور، شبحی).
- کارت استاندارد پروژه با کادر شیشهای و شعاع گردی ۱۲ پیکسلی (
rounded-xl).
- کالاوتهای Quera:
<details class="violet">: چرا مدل shadcn/ui به پرطرفدارترین رویکرد در دنیای ایجنتهای مدرن تبدیل شد؟<details class="green">: فایلdesign.md؛ بیمهنامه یکپارچگی ظاهری پروژه شما در برابر شیطنتهای مدلهای زبانی.
آنچه نباید وارد آن شویم (Out-of-Scope):
- نصب فنی دستورات CLI شادسیان (در فصل ۶ به صورت عملی در کدبیس اجرا خواهد شد).
- توسعه پکیجهای سازمانی منتشرشونده در رجیستری npm.
۳. مفاهیم کلیدی و کلمات تخصصی (Key Concepts & Terms)
| اصطلاح انگلیسی | معادل فارسی مصوب | توضیح یکخطی ساده |
|---|---|---|
| Design System | سیستم طراحی | مجموعه یکپارچهای از قوانین، توکنها و کامپوننتهای قابلاستفاده مجدد برای ساخت رابط کاربری |
| shadcn/ui | شادسیان یوآی | مجموعه کامپوننتهای مدرن متنباز که کدهای آن مستقیماً در پوشه پروژه شما کپی و سفارشیسازی میشود |
| Design Tokens | توکنهای طراحی | متغیرهای استاندارد مرکزی برای مقادیر رنگ، فاصله، شعاع و سایهها در سراسر اپلیکیشن |
| design.md | سند مشخصات طراحی | فایل مارکداون راهنما برای ایجنتهای هوش مصنوعی جهت رعایت خطوط قرمز طراحی سیستم |
| Component Variants | گونههای کامپوننت | حالتها و نسخههای مختلف ظاهری یک جزء (مانند دکمه اصلی، دکمه حاشیهدار، دکمه خطر) |
۴. جایگاههای تصاویر و نمودارها (Visual & Diagram Placeholders)
راهنمای ایجنت نویسنده: تمام تصاویر باید در پوشهٔ
images/قرار گرفته و در قالب جدول تکخانهای وسطچین با کپشن تفصیلی درج شوند:
- تصویر کاور درس:
images/cover.png- موضوع: کاور مدرن با تم تیره و یک پالت سازمانیافته سهبعدی از کامپوننتهای شیشهای منظم، دکمهها، چیپها و سوییچهای هماهنگ سیستم طراحی.
- سندرم هیولای فرانکنشتاین در برابر سیستم طراحی:
images/frankenstein-vs-design-system.png- موضوع: تصویر مقایسهای: سمت چپ دکمهها و کادرهای نامتقارن و ناموزون در برابر سمت راست مجموعه یکدست، هارمونیک و چشمنواز.
- خط زمانی تحول کتابخانههای فرانتاند:
images/ui-libraries-evolution.png- موضوع: اینفوگرافیک تاریخی: بوتاسترپ ۲۰۱۲
\rightarrowمتریال یوآی ۲۰۱۸\rightarrowانقلاب شادسیان و تیلویند در عصر هوش مصنوعی.
- موضوع: اینفوگرافیک تاریخی: بوتاسترپ ۲۰۱۲
- پایپلاین توکنها در Aura Design Systems:
images/design-tokens-pipeline.png- موضوع: فلوچارت اتصال: توکنهای متغیر CSS در فایل سراسری
\rightarrowکلاسهای تیلویند\rightarrowخروجی یکپارچه کامپوننتها.
- موضوع: فلوچارت اتصال: توکنهای متغیر CSS در فایل سراسری
- نمونه فایل
design.mdدر ریشه پروژه:images/design-md-in-editor.png- موضوع: اسکرینشات تمیز از فایل مارکداون راهنمای طراحی باز شده در ادیتور در حال هدایت ایجنت هوش مصنوعی.
۵. بخشبندی و ساختار محتوایی پیشنهادی درسنامه (README.md)
- تیتر اصلی:
# سیستم طراحی: پایان دوران هیولای فرانکنشتاین در رابط کاربری - مقدمه: چرا سایتهای ساختهشده با هوش مصنوعی بعد از چند روز شبیه به چهلتکه میشوند؟
- جدول کاور درس
- سیستم طراحی چیست و چه مسائلی را حل میکند؟: خلق زبان بصری واحد و ابدی.
- سیر تحول کتابخانههای فرانتاند (از Bootstrap تا shadcn/ui):
- چرا دیگر کامپوننتهای پکیج بسته npm محبوب نیستند؟
- راز آزادی عمل با کپی کدهای کامپوننت در پوشه پروژه.
- باکس نکته Quera (
<details class="violet">): فلسفه بنیادین مالکیت کد در معماری shadcn/ui. - توکنهای طراحی در Aura (aura.build/design-systems):
- استخراج پالتهای متغیر معنایی و مدیریت تم تیره.
- سند مشخصات طراحی
design.md(getdesign.md/design-md):- چگونه سلیقه هوش مصنوعی را با یک فایل مارکداون مهار کنیم؟
- درج قوانین تایپوگرافی، فواصل گرید و گونههای دکمه.
- سیستم طراحی اختصاصی پورتفولیوی پویا: کالبدشکافی گونههای دکمه و کارتها.
- باکس آرامشبخش Quera (
<details class="green">): بیمهنامه هماهنگی پروژه با دستور@design.md. - جمعبندی درسنامه: مجهز شدن به سیستم طراحی و ورود به درس نهایی فصل: مبارزه با زباله هوش مصنوعی (AI Slop).
۶. معیارهای پذیرش (Acceptance Criteria for Reviewer)
- ضرورت سیستم طراحی در جلوگیری از تولید رابطهای کاربری چندتکه تبیین شده باشد.
- مقایسه تحلیلی نسلهای کامپوننت (Bootstrap, Material UI, shadcn/ui) ارائه گردد.
- مرجع Aura و معماری توکنهای معنایی رنگ و فواصل در متن شرح داده شود.
- مفهوم و کاربرد فایل
design.mdبرای هدایت ایجنتهای هوش مصنوعی مستند شود.