feat: add chapter 12-deployment-and-shipping specs

This commit is contained in:
2026-09-05 22:33:11 +08:00
parent 8e4e8d4f82
commit 18b9a967cf
7 changed files with 746 additions and 0 deletions

View File

@@ -0,0 +1,84 @@
# مشخصات درس‌نامه: اهداف فصل دوازدهم (Chapter Goals)
- **شناسه در سیلابس:** `L12.1`
- **فصل:** فصل ۱۲: انتشار روی اینترنت (Ch 12)
- **نوع محتوا:** 📘 درس‌نامه متنی
- **زمان تقریبی مطالعه:** ۵ دقیقه
- **پیش‌نیازهای مستقیم:** `L11.9` (هزینه، مالکیت و اخلاق حرفه‌ای)
---
## ۱. اهداف یادگیری (Learning Objectives - Bloom's Taxonomy)
دانشجو پس از مطالعهٔ این درس‌نامه باید بتواند:
- [ ] **درک کند (Understand):** چرا تا زمانی که یک وب‌سایت روی اینترنت عمومی منتشر نشده باشد، تنها یک فایل تفننی روی کامپیوتر شخصی است و دیپلوی کردن (Shipping) نقطه تولد واقعی محصول است.
- [ ] **درک کند (Understand):** نقشه راه ۷ درس‌نامه تخصصی فصل دوازدهم شامل: تمایز محیط‌های توسعه و تولید (Dev vs Staging vs Prod)، مفاهیم پایه وب (Domain, DNS, SSL, CDN)، انتخاب پلتفرم ابری (PaaS)، استقرار عملی با لیارا (Liara) و ورسل (Vercel)، پیکربندی متغیرهای محیطی پروداکشن، و اتصال دامنه اختصاصی به همراه ابر آروان و Cloudflare را بشناسد.
- [ ] **تحلیل/ارزیابی کند (Evaluate):** رویکرد دوگانه میزبانی (پلتفرم داخلی لیارا برای دسترس‌پذیری پایدار ملی در برابر Vercel برای استانداردهای جهانی) را ارزیابی کند.
- [ ] **به‌کار ببندد (Apply):** پورتفولیوی شخصی، پنل ادمین، دیتابیس Supabase، و تمام یکپارچه‌سازی‌های پیامک، ایمیل و هوش مصنوعی را به صورت زنده و با پروتکل امن HTTPS روی یک دامنه اینترنتی واقعی مستقر سازد.
---
## ۲. محدوده و مرزهای محتوا (Scope & Boundaries)
### آنچه باید پوشش داده شود (In-Scope):
1. **ورود به نقطه اوج دوره: انتشار به سوی جهان (Shipping):**
* تبدیل کدها از `localhost:3000` به یک آدرس اینترنتی معتبر که هر کسی در دنیا با موبایل یا لپ‌تاپ بتواند آن را باز کند.
2. **مرور سرفصل‌های تخصصی فصل ۱۲:**
* درس ۱۲.۲: محیط‌های توسعه و تولید؛ تفاوت Development، Staging و Production و نحوه کار کامپایلر بیلد (`npm run build`).
* درس ۱۲.۳: الفبای وب برای انتشار؛ دامین، هاست، سرورهای نام (DNS)، گواهی امنیتی SSL/TLS، و شبکه توزیع محتوا (CDN).
* درس ۱۲.۴: انتخاب مدل میزبانی مدرن؛ چرا دور دوران هاست‌های سنتی سی‌پنل گذشته و پلتفرم‌های ابری (PaaS) حکومت می‌کنند؟
* درس ۱۲.۵: استقرار عملی پروژه؛ دیپلوی خودکار مبتنی بر گیت با لیارا (Liara) و ورسل (Vercel) و اتصال دیتابیس پروداکشن.
* درس ۱۲.۶: تنظیمات محیط واقعی؛ تزریق متغیرهای محیطی محرمانه در داشبورد ابری و تفاوت آدرس‌های Localhost با Production URL.
* درس ۱۲.۷: اتصال دامنه اختصاصی؛ تنظیم رکوردهای A و CNAME، فعال‌سازی SSL رایگان و استفاده از Cloudflare و ابر آروان.
3. **تمرکز بر پروژه پورتفولیو:**
* انتشار ویترین رزومه شخصی به همراه چت‌بات آنلاین، درگاه پرداخت و پنل ادمین با دامنه اختصاصی دانشجو.
4. **دستورات چندسکویی برای نصب CLIهای استقرار:**
* منوهای کشویی ویندوز، مک و لینوکس برای نصب ابزارهای خط فرمان لیارا و ورسل.
5. **کال‌اوت‌های کوئرا:**
* کال‌اوت سبز (`<details class="green">`): انگیزه و شعف حاصل از ارسال اولین لینک عمومی به دوستان و کارفرمایان.
### آنچه نباید وارد آن شویم (Out-of-Scope):
- مانیتورینگ بلادرنگ، لاگین ارورها با Sentry و تحلیل رفتار کاربر (فصل ۱۳).
- کانفیگ دستی کانتینرهای داکر روی سرورهای خام مجازی لینوکس (VPS با دستورات کرنل).
---
## ۳. مفاهیم کلیدی و کلمات تخصصی (Key Concepts & Terms)
| اصطلاح انگلیسی | معادل فارسی مصوب | توضیح یک‌خطی ساده |
| :--- | :--- | :--- |
| Deployment (Shipping) | استقرار / انتشار نهایی | فرآیند بارگذاری، کامپایل و اجرای برنامه روی سرورهای ابری برای دسترسی همگانی کاربران اینترنت |
| PaaS (Platform as a Service) | پلتفرم به عنوان سرویس | سرویس‌های ابری مدرن که مدیریت سرور، لینوکس و امنیت را بر عهده گرفته و شما فقط کد را تحویل می‌دهید |
| Production Environment | محیط تولید / پروداکشن | محیط واقعی و آنلاین اجرای نرم‌افزار که کاربران و مشتریان واقعی از آن استفاده می‌کنند |
| DNS (Domain Name System) | سامانه نام دامنه | دفترچه تلفن اینترنت که نام‌های متنی خوانا (مثل سایت شما) را به آدرس‌های عددی سرور (IP) تبدیل می‌کند |
| CDN (Content Delivery Network) | شبکه توزیع محتوا | شبکه‌ای از سرورهای جهانی که فایل‌های سایت را در نزدیک‌ترین شهر به کاربر کپی و با حداکثر سرعت تحویل می‌دهند |
---
## ۴. جایگاه‌های تصاویر و نمودارها (Visual & Diagram Placeholders)
> **راهنمای ایجنت نویسنده:** تمام تصاویر باید در پوشهٔ `images/` ذخیره شده و در جدول تک‌خانه‌ای وسط‌چین درج شوند:
1. **تصویر کاور درس:** `images/cover.png`
* **موضوع:** موشک نئونی مدرن که از روی کیبورد لپ‌تاپ به سمت کره زمین دیجیتال پرتاب می‌شود و آدرس دامنه اینترنتی را به آسمان متصل می‌کند.
2. **نقشه راه جامع فصل ۱۲:** `images/chapter-12-roadmap.png`
* **موضوع:** اینفوگرافیک ۷ مرحله‌ای فصل ۱۲ با نمادهای محیط‌ها، DNS، ورسل/لیارا، بیلد، متغیرهای ابری، و ابر آروان/کلودفلر.
3. **گذار از لوکال‌هاست به اینترنت جهانی:** `images/localhost-to-global-web.png`
* **موضوع:** تصویر مقایسه‌ای: لپ‌تاپ شخصی در خانه با برچسب localhost:3000 در برابر شبکه سرورهای ابری پروداکشن با نماد قفل سبز HTTPS.
---
## ۵. بخش‌بندی و ساختار محتوایی پیشنهادی درس‌نامه (`README.md`)
1. **تیتر اصلی:** `# اهداف فصل دوازدهم: انتشار روی اینترنت؛ تولد رسمی محصول شما در جهان وب`
2. **مقدمه کوتاه:** چرا تا زمانی که پروژه‌تان آدرس اینترنتی ندارد، انگار وجود خارجی ندارد؟
3. **جدول کاور درس**
4. **سرفصل‌های طلایی فصل در یک نگاه:** مرور ۷ ایستگاه استقرار و پرواز محصول.
5. **جدول نقشه راه یادگیری فصل**
6. **معرفی پلتفرم‌های میزبان این فصل:** لیارا برای سرعت و دسترسی پایدار داخلی، و Vercel برای استانداردهای بین‌المللی.
7. **پورتفولیوی شخصی در جهان واقعی:** داشتن یک لینک اختصاصی با دامنه شخصی برای درج در رزومه و پروفایل لینکدین.
8. **کال‌اوت هیجان‌انگیز Quera (`<details class="green">`):** آماده‌سازی برای فشردن دکمه پرتاب؛ پروژه‌ای که از ایده خام شروع شد، اکنون به دروازه اینترنت رسیده است!
---
## ۶. معیارهای پذیرش (Acceptance Criteria for Reviewer)
- [ ] اهداف کلان فصل ۱۲ و اهمیت استقرار عمومی (Shipping) به شکل الهام‌بخش تبیین شود.
- [ ] سرفصل‌های ۷ درس‌نامه بعدی با ذکر ابزارهای مصوب (لیارا، ورسل، کلودفلر، ابر آروان) معرفی گردند.
- [ ] مفاهیم بنیادین میزبانی ابری و رویکرد دوگانه به صورت روان تشریح شوند.