9.9 KiB
9.9 KiB
مشخصات درسنامه: تعریف وایب کدینگ و نقش تازهٔ شما (Vibe Coding Definition & Your New Role)
- شناسه در سیلابس:
L2.2 - فصل: فصل ۲: شروع مسیر Vibe Coding (Ch 2)
- نوع محتوا: 📘 درسنامه متنی
- زمان تقریبی مطالعه: ۱۰ دقیقه
- پیشنیازهای مستقیم:
L2.1(اهداف فصل دوم)
۱. اهداف یادگیری (Learning Objectives - Bloom's Taxonomy)
دانشجو پس از مطالعهٔ این درسنامه باید بتواند:
- درک کند (Understand): اصطلاح وایب کدینگ (Vibe Coding) دقیقاً به چه معناست و چه ریشه و پیشینهای در تحولات اخیر هوش مصنوعی دارد.
- تحلیل/ارزیابی کند (Evaluate): سه پارادایم توسعه نرمافزار را از یکدیگر تمایز دهد: ۱. کدنویسی دستی سنتی، ۲. کدنویسی کمکی (Copilot-style)، و ۳. وایب کدینگ ایجنتیک (Agentic Vibe Coding).
- درک کند (Understand): وایب کدینگ چه چیزهایی نیست (رفع باورهای غلط: جادوی بینیاز از فکر، کپی-پیست از چتبات، یا رها کردن کیفیت نرمافزار).
- بهکار ببندد (Apply): ماتریس مسئولیت انسانی در برابر هوش مصنوعی را بشناسد؛ بداند انسان چه تصمیماتی میگیرد (طراحی مسئله، تجربه کاربری، مرزبندی فیچرها، معیارهای قبولی) و هوش مصنوعی چه بخشهایی را اجرا میکند (سینتکس، ساختاربندی فایلها، اجرای دستورات و پیادهسازی منطق).
۲. محدوده و مرزهای محتوا (Scope & Boundaries)
آنچه باید پوشش داده شود (In-Scope):
- داستان شکلگیری اصطلاح: معرفی مفهوم مطرحشده توسط آندری کارپاتی (Andrej Karpathy) درباره کدنویسی بر پایه «هدایت به زبان طبیعی، دیدن جریان کار و بازخورد دادن به جای تایپ کاراکترها».
- سیر تکامل سهمرحلهای توسعه نرمافزار:
- عصر سنتی: تسلط عمیق بر سینتکس زبانها، فریمورکها و نوشتن دستی تکتک خطوط.
- عصر دستیار هوشمند (Copilot Era): برنامهنویس مینویسد و هوش مصنوعی خط یا تابع بعدی را کامل میکند (Autocomplete).
- عصر وایب کدینگ (Agentic Era): انسان معماری، رفتار و الزامات را شرح میدهد و ایجنت هوش مصنوعی کل فایلها، پکیجها و تسکها را مستقلاً پیادهسازی و اصلاح میکند.
- وایب کدینگ چه چیزهایی نیست؟ (Myth Busting):
- جادو نیست: اگر ندانید چه میخواهید، هوش مصنوعی محصول بیمصرف تولید میکند.
- چت کردن ساده در یک پنجره نیست: اتصال به ادیتور، فایلهای پروژه و اجرای واقعی تفاوت آن با ChatGPT است.
- شلختگی و بیمسئولیتی نیست: کدهای ساختهشده باید تستپذیر و تمیز باشند.
- نقش تازهٔ شما: از برنامهنویس به مدیر محصول / معمار نرمافزار:
- شما در صندلی کارگردان یا کارفرما هستید؛ هوش مصنوعی یک توسعهدهنده بااستعداد، باانگیزه اما نیازمند هدایت و نظارت دقیق است.
- ماتریس تفکیک وظایف انسان و هوش مصنوعی: جدول شفاف وظایف انسانی (چرا، چه چیزی، برای چه کسی) در برابر وظایف AI (چگونه در کد پیاده شود).
- کالاوتهای Quera:
<details class="violet">: تاریخچه توییت آندری کارپاتی و مفهوم "English is the hottest new programming language".<details class="red">: خطر سندروم توهم تسلط (فکر کردن به اینکه هوش مصنوعی همهچیز را بینقص میسازد بدون نیاز به راستیآزمایی).
آنچه نباید وارد آن شویم (Out-of-Scope):
- بررسی جزئیات مدلهای ریاضی ترنسفورمر، پنجره بافت یا توکنها (در درس ۲.۳ ارائه میشود).
- معرفی ابزارهای مشخص یا آموزش نصب آنها (درس ۲.۴ و فصل ۳).
۳. مفاهیم کلیدی و کلمات تخصصی (Key Concepts & Terms)
| اصطلاح انگلیسی | معادل فارسی مصوب | توضیح یکخطی ساده |
|---|---|---|
| Vibe Coding | وایب کدینگ | توسعه نرمافزار از طریق مکالمه، تعیین نیت و هدایت ایجنتهای هوش مصنوعی |
| Agentic Workflow | جریان کاری ایجنتیک | سپردن زنجیرهای از تسکهای نرمافزاری به هوش مصنوعی با قابلیت ساخت و ادیت فایل |
| Mental Model | مدل ذهنی | چارچوب مفهومی در ذهن کاربر برای درک رفتار و کنترل هوش مصنوعی |
| Responsibility Matrix | ماتریس مسئولیت | تفکیک روشن وظایف تصمیمگیری انسان از وظایف اجرایی هوش مصنوعی |
| AI Slop | زبالهٔ هوش مصنوعی | کدهای کثیف، بیکیفیت و سرهمبندیشده ناشی از هدایت اشتباه و بدون نظارت |
۴. جایگاههای تصاویر و نمودارها (Visual & Diagram Placeholders)
راهنمای ایجنت نویسنده: تمام تصاویر باید در پوشهٔ
images/قرار گرفته و در قالب جدول تکخانهای وسطچین با کپشن تفصیلی درج شوند:
- تصویر کاور درس:
images/cover.png- موضوع: کاور جذاب با تم تیره که یک کاربر را پشت میز نشان میدهد در حال هدایت تصویری از یک ارکستر دیجیتال هوش مصنوعی.
- نمودار تکامل سهگانه توسعه نرمافزار:
images/evolution-of-coding.png- موضوع: مقایسه بصری سه دوره: ۱. کدنویسی سنتی (تایپ خطوط کد)
\rightarrow۲. کدنویسی دستیار (پیشنهاد کد)\rightarrow۳. وایب کدینگ (هدایت ایجنت مستقل).
- موضوع: مقایسه بصری سه دوره: ۱. کدنویسی سنتی (تایپ خطوط کد)
- نقش تازه کاربر (کارگردان در برابر برنامهنویس جونیور):
images/director-vs-junior.png- موضوع: تصویر استعاری که کاربر را در نقش مدیر محصول و هدایتکننده نشان میدهد و هوش مصنوعی را به عنوان یک برنامهنویس سریع اما نیازمند دستورالعمل دقیق.
- وایب کدینگ چه چیزی نیست؟:
images/vibe-coding-myths.png- موضوع: اینفوگرافیک ۳ باور غلط (فکر نکردن، کپیپیست چتبات، عدم مسئولیتپذیری) در برابر واقعیت هرکدام.
- ماتریس مسئولیت انسان و AI:
images/human-ai-matrix.png- موضوع: جدول شماتیک دورنگ: سمت انسان (تعریف مسئله، جریان کاربری، محدودیتها، تایید خروجی) و سمت AI (تولید ساختار کد، تبدیل منطق، اجرای ترمینال).
۵. بخشبندی و ساختار محتوایی پیشنهادی درسنامه (README.md)
- تیتر اصلی:
# تعریف وایب کدینگ و نقش تازهٔ شما - پاراگراف آغازین: ماجرای تغییر بزرگ در مهندسی نرمافزار و بازتعریف واژه «برنامهنویس».
- جدول کاور درس
- وایب کدینگ واقعاً چیست؟: تشریح تعریف اصلی به زبان ساده و قابل لمس.
- باکس نکته Quera (
<details class="violet">): توییت کارپاتی و داستان تولد عبارت Vibe Coding. - سیر تکامل: از تایپ تا رهبری: شرح سه نسل برنامهنویسی همراه با نمودار تکامل.
- نقش جدید شما: هدایتکننده به جای تایپیست: تحلیل رابطه انسان و ایجنت.
- وایب کدینگ چه چیزی نیست؟ (باورهای اشتباه): تحلیل خطرات سطحینگری همراه با اینفوگرافیک.
- باکس هشدار Quera (
<details class="red">): خطر تولید AI Slop در صورت عدم وجود مدل ذهنی درست. - ماتریس تفکیک مسئولیتها: ارائه جدول شفاف مرز وظایف.
- جمعبندی و نتیجهگیری: تغییر لنز دید نسبت به ابزارهای هوش مصنوعی.
۶. معیارهای پذیرش (Acceptance Criteria for Reviewer)
- درس بدون نیاز به هیچ پیشزمینه برنامهنویسی کاملاً قابل فهم و روشن باشد.
- تمایز میان چتبات ساده (مانند پاسخ متنی چتجیپیتی) و ایجنت کدنویسی ملموس بیان شده باشد.
- ماتریس وظایف انسان و هوش مصنوعی در ساختار متن حضور داشته باشد.
- خطرات ناشی از اعتماد کورکورانه به خروجیهای هوش مصنوعی (AI Slop) هشدار داده شده باشد.