# مشخصات درس‌نامه: اهداف فصل هفتم (Chapter Goals) - **شناسه در سیلابس:** `L7.1` - **فصل:** فصل ۷: داده و بک‌اند (Ch 7) - **نوع محتوا:** 📘 درس‌نامه متنی - **زمان تقریبی مطالعه:** ۵ دقیقه - **پیش‌نیازهای مستقیم:** `L6.7` (تعامل با Agentها برای بهبود و توسعه تدریجی کد) --- ## ۱. اهداف یادگیری (Learning Objectives - Bloom's Taxonomy) دانشجو پس از مطالعهٔ این درس‌نامه باید بتواند: - [ ] **درک کند (Understand):** جایگاه بنیادین پایگاه داده و بک‌اند به عنوان قلب تپنده و حافظه دائمی هر نرم‌افزار تجاری واقعی را درک کند. - [ ] **درک کند (Understand):** نقشه راه ۸ درس‌نامه مفهومی و کاربردی این فصل (از مفاهیم جدول و رکوردهای دیتابیس تا معماری REST API، راه‌اندازی Supabase، ساخت اسکیما، اتصال پروژه، احراز هویت ادمین و امنیت RLS) چگونه چیده شده است. - [ ] **تحلیل/ارزیابی کند (Evaluate):** چگونگی گذار از داده‌های شبیه‌سازی‌شده (Mock Data فصل ۶) به پایگاه داده ابری زنده و ماندگار PostgreSQL را درک کند. - [ ] **به‌کار ببندد (Apply):** ذهنیت خود را برای اتصال کامل پروژه محوری (پورتفولیوی پویا) به دیتابیس و آماده‌سازی برای تحویل نخستین نقطه عطف بزرگ دوره (پروژه ۱ در فصل ۸) تنظیم نماید. --- ## ۲. محدوده و مرزهای محتوا (Scope & Boundaries) ### آنچه باید پوشش داده شود (In-Scope): 1. **ورود به قلمرو حافظه ماندگار نرم‌افزار:** * در فصل ۶ ظاهر و فرانت‌اند ساخته شد؛ اما هر بار که صفحه رفرش می‌شود تغییرات پاک می‌شوند چون حافظه دائمی وجود ندارد؛ در این فصل به برنامه حافظه و هوشمندی بک‌اند می‌بخشیم. 2. **مرور سرفصل‌های فصل ۷:** * درس ۷.۲: داده و دیتابیس چیست؛ ردیف‌ها، ستون‌ها، کلیدهای اصلی (Primary Key) و استعاره فایل اکسل ابرقدرت. * درس ۷.۳: مفهوم API و مکالمه کلاینت با سرور؛ متدهای چهارگانه GET, POST, PUT, DELETE. * درس ۷.۴: آشنایی با پلتفرم Supabase (آلترناتیو متن‌باز فایربیس بر پایه قدرتمندترین دیتابیس جهان، PostgreSQL). * درس ۷.۵: طراحی و ساخت جداول پروژه (`projects` برای نمونه‌کارها و `site_settings` برای متادیتای سئو). * درس ۷.۶: اتصال واقعی فرانت‌اند به دیتابیس و خداحافظی با Mock Data. * درس ۷.۷: احراز هویت (Auth)؛ لاگین ایمن ادمین با ایمیل/پسورد و محافظت از روت `/admin`. * درس ۷.۸: امنیت پایگاه داده با Row Level Security (RLS)؛ تعیین اینکه چه کسی حق خواندن و چه کسی حق ویرایش دارد. 3. **آماده‌سازی برای فینال فاز اول (پروژه ۱):** * تکمیل این فصل به معنای اتمام کامل فونداسیون، فرانت‌اند و بک‌اند پورتفولیوی پویاست که مستقیماً در فصل ۸ ارزیابی خواهد شد. 4. **کال‌اوت نکته کوئرا (`
`):** اهمیت حفظ خونسردی در برابر اصطلاحات بک‌اند؛ تمام مفاهیم با استعاره‌های ساده و ملموس تدریس خواهند شد. ### آنچه نباید وارد آن شویم (Out-of-Scope): - طراحی دیتابیس‌های توزیع‌شده با میلیون‌ها تراکنش بانکی (فصول پیشرفته). - پیاده‌سازی وب‌سوکت‌ها یا پردازش‌های پس‌زمینه (فصل ۱۳). --- ## ۳. مفاهیم کلیدی و کلمات تخصصی (Key Concepts & Terms) | اصطلاح انگلیسی | معادل فارسی مصوب | توضیح یک‌خطی ساده | | :--- | :--- | :--- | | Persistent Storage | ذخیره‌سازی ماندگار | نگهداری دائمی داده‌ها روی هارد سرور به گونه‌ای که با خاموش شدن سیستم یا رفرش صفحه پاک نشوند | | Backend-as-a-Service (BaaS) | بک‌اند به عنوان سرویس | پلتفرم ابری آماده (مانند Supabase) که بدون نیاز به سرورنویسی، دیتابیس و احراز هویت تحویل می‌دهد | | Database Schema | اسکیمای پایگاه داده | ساختار مهندسی و نقشه تعریف جداول، نام ستون‌ها و نوع فیلدهای ذخیره‌سازی داده | | Milestone Project 1 | نقطه عطف پروژه اول | پروژه عملی ارزیابی شایستگی در پایان فصل ۸ که پورتفولیوی متصل به دیتابیس را می‌سنجد | --- ## ۴. جایگاه‌های تصاویر و نمودارها (Visual & Diagram Placeholders) > **راهنمای ایجنت نویسنده:** تمام تصاویر باید در پوشهٔ `images/` قرار گرفته و در قالب جدول تک‌خانه‌ای وسط‌چین با کپشن تفصیلی درج شوند: 1. **تصویر کاور درس:** `images/cover.png` * **موضوع:** کاور مدرن با تم تیره و استوانه نورانی دیتابیس سبز نئونی (لوگوی سوپابیس) که پالس‌های داده را به سمت مرورگر فرانت‌اند ارسال می‌کند. 2. **نقشه راه یادگیری فصل ۷:** `images/chapter-7-roadmap.png` * **موضوع:** اینفوگرافیک گام‌به‌گام از مبانی دیتابیس $\rightarrow$ مفهوم API $\rightarrow$ سوپابیس $\rightarrow$ طراحی جداول $\rightarrow$ اتصال فرانت‌اند $\rightarrow$ لاگین ادمین $\rightarrow$ امنیت RLS $\rightarrow$ ورود به پروژه ۱. 3. **معماری پورتفولیوی پویا در فصل ۷:** `images/fullstack-portfolio-architecture.png` * **موضوع:** دیاگرام ارتباطی: فرانت‌اند Next.js $\rightarrow$ کلاینت Supabase $\rightarrow$ دیتابیس ابری PostgreSQL با جداول پروژه‌ها و تنظیمات سئو. --- ## ۵. بخش‌بندی و ساختار محتوایی پیشنهادی درس‌نامه (`README.md`) 1. **تیتر اصلی:** `# اهداف فصل هفتم: داده و بک‌اند؛ دمیدن روح جاودانگی به نرم‌افزار` 2. **مقدمه کوتاه:** چرا زیباترین فرانت‌اند دنیا بدون پایگاه داده، مثل ویترین مغازه‌ای است که اجناس پشت آن ماکت پلاستیکی هستند؟ 3. **جدول کاور درس** 4. **سرفصل‌های کلیدی فصل در یک نگاه:** مرور ۸ گام اتصال به دنیای داده‌ها و امنیت. 5. **جدول نقشه راه یادگیری فصل** 6. **معرفی سکوی پرتاب: پلتفرم ابری Supabase:** دیتابیس حرفه‌ای بدون نیاز به تنظیمات دشوار سرور. 7. **پل اتصال به پروژه ۱ (نقطه عطف فصل ۸):** هدف‌گذاری برای اتمام کامل نخستین محصول واقعی. 8. **کال‌اوت آرامش‌بخش Quera (`
`):** ثبت دکمه «خواندم» و آغاز سفر به دنیای شگفت‌انگیز داده‌ها. --- ## ۶. معیارهای پذیرش (Acceptance Criteria for Reviewer) - [ ] اهداف فصل و ضرورت یادگیری بک‌اند برای تبدیل پروتوتایپ به محصول واقعی تبیین شده باشد. - [ ] نقشه راه ۸ درس‌نامه بعدی به همراه معرفی Supabase و امنیت RLS پوشش داده شود. - [ ] پیوند این فصل با پروژه عملی اول در فصل ۸ به وضوح تشریح گردد.