|
|
4 days ago | |
|---|---|---|
| .. | ||
| 1-getting-started-lessons | 2 weeks ago | |
| 2-js-basics | 2 weeks ago | |
| 3-terrarium | 2 weeks ago | |
| 4-typing-game | 2 weeks ago | |
| 5-browser-extension | 2 weeks ago | |
| 6-space-game | 2 weeks ago | |
| 7-bank-project | 2 weeks ago | |
| 8-code-editor/1-using-a-code-editor | 2 weeks ago | |
| 9-chat-project | 2 weeks ago | |
| 10-ai-framework-project | 2 weeks ago | |
| Git-Basics | 2 weeks ago | |
| docs | 2 weeks ago | |
| lesson-template | 2 weeks ago | |
| memory-game | 2 weeks ago | |
| quiz-app | 2 weeks ago | |
| .co-op-translator.json | 4 days ago | |
| AGENTS.md | 4 days ago | |
| CODE_OF_CONDUCT.md | 2 weeks ago | |
| CONTRIBUTING.md | 2 weeks ago | |
| README.md | 4 days ago | |
| Roadmap.md | 4 days ago | |
| SECURITY.md | 2 weeks ago | |
| SUPPORT.md | 2 weeks ago | |
| _404.md | 2 weeks ago | |
| for-teachers.md | 2 weeks ago | |
README.md
توسعه وب برای مبتدیان - یک برنامه درسی
اصول توسعه وب را با دوره جامع ۱۲ هفتهای ما توسط مایکروسافت کلود ادوکیتس بیاموزید. هر یک از ۲۴ درس به صورت عملی به جاوااسکریپت، CSS و HTML میپردازد از طریق پروژههای عملی مانند تراریومها، افزونههای مرورگر و بازیهای فضایی. با آزمونها، بحثها و تکالیف عملی درگیر شوید. مهارتهای خود را تقویت کنید و با روش آموزش مبتنی بر پروژه مؤثر، دانش خود را بهینه کنید. سفر برنامهنویسی خود را امروز آغاز کنید!
به انجمن دیسکورد Azure AI Foundry بپیوندید
برای شروع استفاده از این منابع، این مراحل را دنبال کنید:
- فورک کردن مخزن: کلیک کنید بر روی
- کلون کردن مخزن:
git clone https://github.com/microsoft/Web-Dev-For-Beginners.git - به دیسکورد Azure AI Foundry بپیوندید و با متخصصان و توسعهدهندگان دیگر دیدار کنید
🌐 پشتیبانی چندزبانه
پشتیبانی شده از طریق GitHub Action (خودکار و همیشه بهروز)
Arabic | Bengali | Bulgarian | Burmese (Myanmar) | Chinese (Simplified) | Chinese (Traditional, Hong Kong) | Chinese (Traditional, Macau) | Chinese (Traditional, Taiwan) | Croatian | Czech | Danish | Dutch | Estonian | Finnish | French | German | Greek | Hebrew | Hindi | Hungarian | Indonesian | Italian | Japanese | Kannada | Korean | Lithuanian | Malay | Malayalam | Marathi | Nepali | Nigerian Pidgin | Norwegian | Persian (Farsi) | Polish | Portuguese (Brazil) | Portuguese (Portugal) | Punjabi (Gurmukhi) | Romanian | Russian | Serbian (Cyrillic) | Slovak | Slovenian | Spanish | Swahili | Swedish | Tagalog (Filipino) | Tamil | Telugu | Thai | Turkish | Ukrainian | Urdu | Vietnamese
ترجیح میدهید به صورت محلی کلون کنید؟
این مخزن شامل بیش از ۵۰ ترجمه زبان است که بهطور قابل توجهی حجم دانلود را افزایش میدهد. برای کلون بدون ترجمهها از چکاوت جزئی استفاده کنید:
git clone --filter=blob:none --sparse https://github.com/microsoft/Web-Dev-For-Beginners.git cd Web-Dev-For-Beginners git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'این به شما همه چیز لازم برای کامل کردن دوره را با دانلود بسیار سریعتر میدهد.
اگر مایل هستید زبانهای ترجمه اضافی پشتیبانی شوند، این زبانها در اینجا فهرست شدهاند
🧑🎓 آیا دانشجو هستید؟
از صفحه مرکز دانشجویی دیدن کنید، جایی که منابع مبتدی، بستههای دانشجویی و حتی راههایی برای دریافت رایگان کد تخفیف گواهی را پیدا خواهید کرد. این صفحهای است که باید ذخیره کنید و هر از گاهی بررسی کنید چون محتوای آن ماهانه به روز میشود.
📣 اعلامیه - چالشهای جدید حالت GitHub Copilot Agent برای تکمیل!
چالش جدید اضافه شده است، در اکثر فصلها دنبال "چالش GitHub Copilot Agent 🚀" باشید. این چالش جدیدی است برای شما که با استفاده از GitHub Copilot و حالت Agent تکمیل کنید. اگر قبلاً از حالت Agent استفاده نکردهاید، این حالت نه تنها قادر به تولید متن است بلکه میتواند فایل بسازد و ویرایش کند، دستورات اجرا کند و بیشتر.
📣 اعلامیه - پروژه جدید برای ساخت با استفاده از هوش مصنوعی مولد
پروژه دستیار هوش مصنوعی جدید همین الان اضافه شده است، آن را بررسی کنید پروژه
📣 اعلامیه - برنامه درسی جدید درباره هوش مصنوعی مولد برای جاوااسکریپت به تازگی منتشر شده است
برنامه درسی جدید هوش مصنوعی مولد ما را از دست ندهید!
برای شروع به https://aka.ms/genai-js-course مراجعه کنید!
- دروس شامل همه چیز از اصول تا RAG.
- تعامل با شخصیتهای تاریخی با استفاده از GenAI و اپلیکیشن همراه ما.
- روایت سرگرمکننده و جذاب، شما سفر در زمان خواهید داشت!
هر درس شامل یک تکلیف برای کامل کردن، یک آزمون دانش و یک چالش برای راهنمایی شما در یادگیری موضوعاتی مانند:
- درخواست و مهندسی درخواستها
- تولید اپلیکیشنهای متنی و تصویری
- اپلیکیشنهای جستجو
برای شروع به https://aka.ms/genai-js-course مراجعه کنید!
🌱 شروع به کار
معلمان، ما چند پیشنهاد برای استفاده از این برنامه درسی تهیه کردهایم. ما مشتاق دریافت بازخورد شما در انجمن بحث و گفتگو هستیم!
دانشآموزان، برای هر درس، با یک آزمون قبل از کلاس شروع کنید و سپس مطالب درس را مطالعه کنید، فعالیتهای مختلف را انجام دهید و درک خود را با آزمون پس از کلاس بسنجید.
برای ارتقای تجربه یادگیری خود، با همکلاسیهایتان برای انجام پروژهها همکاری کنید! مشارکت در بحثها در انجمن بحث و گفتگو تشویق میشود و تیم ناظران ما آماده پاسخگویی به سوالات شما خواهند بود.
برای ادامه تحصیل، به شدت پیشنهاد میکنیم مواد آموزشی بیشتر را در Microsoft Learn کاوش کنید.
📋 راهاندازی محیط کاری شما
این برنامه درسی یک محیط توسعه آماده دارد! هنگام شروع میتوانید انتخاب کنید که دوره را در یک Codespace (یک محیط مبتنی بر مرورگر و بدون نیاز به نصب) یا به صورت محلی روی کامپیوتر خود با استفاده از یک ویرایشگر متن مانند Visual Studio Code اجرا کنید.
ایجاد مخزن خود
برای اینکه به راحتی بتوانید کار خود را ذخیره کنید، توصیه میشود یک نسخه از این مخزن را ایجاد کنید. میتوانید این کار را با کلیک روی دکمه Use this template در بالای صفحه انجام دهید. این یک مخزن جدید در حساب گیتهاب شما با کپی برنامه درسی ایجاد میکند.
مراحل زیر را دنبال کنید:
- فورک کردن مخزن: روی دکمه "Fork" در گوشه بالای سمت راست این صفحه کلیک کنید.
- کلون کردن مخزن:
git clone https://github.com/microsoft/Web-Dev-For-Beginners.git
اجرای برنامه درسی در یک Codespace
در نسخه کپی شده مخزن که ایجاد کردهاید، دکمه Code را کلیک کرده و Open with Codespaces را انتخاب کنید. این یک Codespace جدید برای کار ایجاد خواهد کرد.
اجرای برنامه به صورت محلی روی کامپیوتر خود
برای اجرای این برنامه روی کامپیوترتان به یک ویرایشگر متن، یک مرورگر و یک ابزار خط فرمان نیاز دارید. اولین درس ما، مقدمهای بر زبانهای برنامهنویسی و ابزارهای کار، شما را از طریق گزینههای مختلف برای هر یک از این ابزارها راهنمایی میکند تا بهترین گزینه برای خود را انتخاب کنید.
توصیه ما استفاده از Visual Studio Code به عنوان ویرایشگر است که دارای ترمینال داخلی نیز میباشد. میتوانید Visual Studio Code را از اینجا دانلود کنید.
-
مخزن خود را به کامپیوترتان کلون کنید. میتوانید این کار را با کلیک روی دکمه Code و کپی کردن URL انجام دهید:
CodeSpace سپس، درون ترمینال در ویژوال استودیو کد باز کنید و دستور زیر را اجرا کنید، جایگزین
<your-repository-url>با آدرسی که همین حالا کپی کردید:git clone <your-repository-url>
۲. پوشه را در ویژوال استودیو کد باز کنید. میتوانید این کار را با کلیک روی File > Open Folder و انتخاب پوشهای که همین حالا کلون کردهاید، انجام دهید.
افزونههای پیشنهادی ویژوال استودیو کد:
- Live Server - برای پیشنمایش صفحات HTML در ویژوال استودیو کد
- Copilot - برای کمک به شما در نوشتن سریعتر کد
📂 هر درس شامل:
- یادداشت اختیاری
- ویدئوی مکمل اختیاری
- آزمون گرمکننده پیش از درس
- درس کتبی
- برای درسهای مبتنی بر پروژه، راهنمای گامبهگام برای ساخت پروژه
- بررسی دانش
- یک چالش
- مطالعه مکمل
- تمرین
- آزمون پس از درس
یادداشتی درباره آزمونها: تمام آزمونها در پوشه Quiz-app قرار دارند، مجموعاً ۴۸ آزمون هر کدام شامل سه سوال. آنها در اینجا قابل دسترسی هستند؛ برنامه آزمون را میتوان به صورت محلی اجرا کرد یا در Azure مستقر نمود؛ دستورالعملها را در پوشه
quiz-appدنبال کنید.
🗃️ درسها
| نام پروژه | مفاهیم آموزش داده شده | اهداف یادگیری | درس مرتبط | نویسنده | |
|---|---|---|---|---|---|
| ۰۱ | شروع به کار | مقدمهای بر برنامهنویسی و ابزارهای مرتبط | یادگیری اصول پایه اکثر زبانهای برنامهنویسی و نرمافزاری که به توسعهدهندگان حرفهای کمک میکند وظایف خود را انجام دهند | مقدمه بر زبانهای برنامهنویسی و ابزارها | Jasmine |
| ۰۲ | شروع به کار | اصول گیتهاب، شامل کار تیمی | نحوه استفاده از گیتهاب در پروژه خود، نحوه همکاری با دیگران روی یک کد | مقدمه بر گیتهاب | Floor |
| ۰۳ | شروع به کار | دسترسیپذیری | یادگیری اصول دسترسیپذیری وب | مبانی دسترسیپذیری | Christopher |
| ۰۴ | مفاهیم پایه JS | انواع داده در جاوااسکریپت | اصول انواع داده در جاوااسکریپت | انواع داده | Jasmine |
| ۰۵ | مفاهیم پایه JS | توابع و متدها | آموزش توابع و متدها برای مدیریت جریان منطق برنامه | توابع و متدها | Jasmine and Christopher |
| ۰۶ | مفاهیم پایه JS | گرفتن تصمیم با JS | یادگیری ایجاد شرایط در کد با استفاده از روشهای تصمیمگیری | گرفتن تصمیم | Jasmine |
| ۰۷ | مفاهیم پایه JS | آرایهها و حلقهها | کار با دادهها با استفاده از آرایهها و حلقهها در جاوااسکریپت | آرایهها و حلقهها | Jasmine |
| ۰۸ | تراریوم | HTML در عمل | ساخت HTML برای ایجاد یک تراریوم آنلاین، تمرکز بر ساختار صفحه | مقدمهای بر HTML | Jen |
| ۰۹ | تراریوم | CSS در عمل | ساخت CSS برای استایل دهی تراریوم آنلاین، تمرکز بر اصول CSS و ساخت صفحه واکنشگرا | مقدمهای بر CSS | Jen |
| ۱۰ | تراریوم | کلوزرهای جاوااسکریپت، دستکاری DOM | ساخت جاوااسکریپت برای ایجاد رابط کشیدن و رها کردن در تراریوم، تمرکز بر کلوزرها و دستکاری DOM | کلوزرهای جاوااسکریپت، دستکاری DOM | Jen |
| ۱۱ | بازی تایپ | ساخت بازی تایپ | یادگیری استفاده از رویدادهای کیبورد برای مدیریت منطق برنامه جاوااسکریپت | برنامهنویسی رویداد محور | Christopher |
| ۱۲ | افزونه مرورگر سبز | کار با مرورگرها | یادگیری طرز کار مرورگرها، تاریخچه آنها و ساختار اولیه افزونه مرورگر | درباره مرورگرها | Jen |
| ۱۳ | افزونه مرورگر سبز | ساخت فرم، فراخوانی API و ذخیره متغیرها در ذخیره محلی | ساخت المانهای جاوااسکریپت در افزونه مرورگر برای فراخوانی API با استفاده از متغیرهای ذخیره شده در ذخیره محلی | APIها، فرمها و ذخیره محلی | Jen |
| ۱۴ | افزونه مرورگر سبز | فرایندهای پسزمینه در مرورگر، بهینهسازی وب | استفاده از فرایندهای پسزمینه مرورگر برای مدیریت آیکون افزونه؛ یادگیری درباره عملکرد وب و بهینهسازیهای مربوطه | فرایندهای پسزمینه و عملکرد | Jen |
| ۱۵ | بازی فضایی | توسعه پیشرفته بازی با جاوااسکریپت | یادگیری وراثت با استفاده از کلاسها و ترکیب و الگوی Pub/Sub، برای آمادگی ساخت بازی | مقدمهای بر توسعه پیشرفته بازی | Chris |
| ۱۶ | بازی فضایی | رسم روی بوم | آشنایی با API بوم که برای رسم اجزا روی صفحه استفاده میشود | رسم روی بوم | Chris |
| ۱۷ | بازی فضایی | حرکت دادن اجزا روی صفحه | کشف نحوه حرکت اجزا با استفاده از مختصات کارتزین و API بوم | حرکت دادن اجزا | Chris |
| ۱۸ | بازی فضایی | تشخیص برخورد | ایجاد برخورد بین اجزا و واکنش به هم با کلیدهای فشرده شده و فراهمسازی عملکرد خنککننده برای تضمین اجرای صحیح بازی | تشخیص برخورد | Chris |
| ۱۹ | بازی فضایی | نگهداری امتیاز | انجام محاسبات ریاضی براساس وضعیت و عملکرد بازی | نگهداری امتیاز | Chris |
| ۲۰ | بازی فضایی | پایان و راهاندازی مجدد بازی | آشنایی با پایان و راهاندازی مجدد بازی، شامل پاکسازی منابع و بازنشانی متغیرها | شرط پایان | Chris |
| ۲۱ | اپ بانکداری | قالبها و مسیرها در اپ وب | یادگیری ایجاد چارچوب معماری یک وبسایت چند صفحهای با استفاده از مسیرها و قالبهای HTML | قالبها و مسیرهای HTML | Yohan |
| ۲۲ | اپ بانکداری | ساخت فرم ورود و ثبت نام | یادگیری ساخت فرمها و مدیریت اعتبارسنجی | فرمها | Yohan |
| ۲۳ | اپ بانکداری | روشهای واکشی و استفاده از داده | نحوه جریان دادهها در اپلیکیشن، نحوه واکشی، ذخیرهسازی و حذف آنها | دادهها | Yohan |
| ۲۴ | اپ بانکداری | مفاهیم مدیریت وضعیت | یادگیری اینکه اپ چگونه وضعیت را حفظ میکند و چطور میتوان آن را به صورت برنامهای مدیریت کرد | مدیریت وضعیت | Yohan |
| ۲۵ | کد مرورگر/ویاسکد | کار با ویاسکد | یادگیری استفاده از ویرایشگر کد | استفاده از ویرایشگر کد ویاسکد | Chris |
| ۲۶ | دستیارهای هوش مصنوعی | کار با هوش مصنوعی | یادگیری ساخت دستیار هوش مصنوعی خود | پروژه دستیار هوش مصنوعی | Chris |
🏫 روش تدریس
برنامه آموزشی ما بر اساس دو اصل کلیدی آموزشی طراحی شده است:
- یادگیری مبتنی بر پروژه
- آزمونهای مکرر
این برنامه اصول جاوااسکریپت، HTML و CSS و همچنین جدیدترین ابزارها و تکنیکهای مورد استفاده توسعهدهندگان وب امروزی را آموزش میدهد. دانشآموزان فرصت خواهند داشت با ساختن بازی تایپ، تراریوم مجازی، افزونه مرورگر دوستدار محیطزیست، بازی سبک مهاجم فضایی و اپ بانکداری برای کسبوکارها، تجربه عملی کسب کنند. تا پایان این مجموعه، دانشآموزان درک خوبی از توسعه وب پیدا خواهند کرد.
🎓 میتوانید چند درس اول این برنامه آموزشی را به عنوان یک مسیر یادگیری در مایکروسافت لرن دنبال کنید!
با اطمینان از تطابق محتوا با پروژهها، فرآیند یادگیری برای دانشآموزان جذابتر میشود و حفظ مفاهیم افزایش مییابد. همچنین چند درس ابتدایی در مبانی جاوااسکریپت برای معرفی مفاهیم همراه با ویدیویی از مجموعه "سری مقدماتی به: جاوااسکریپت"، که برخی نویسندگان آن در این برنامه همکاری کردهاند، نوشته شده است.
علاوه بر این، آزمون کمفشار پیش از کلاس هدف دانشآموز را به سمت یادگیری موضوع مشخص میکند و آزمون دوم پس از کلاس تضمینکننده حفظ بیشتر است. این برنامه آموزشی طراحی شده تا انعطافپذیر و سرگرمکننده باشد و میتوان آن را به طور کامل یا جزئی گذراند. پروژهها کوچک شروع شده و تا پایان سیکل ۱۲ هفتهای پیچیدهتر میشوند.
در حالی که عمداً از معرفی چارچوبهای جاوااسکریپت خودداری کردهایم تا بر مهارتهای پایه لازم برای توسعهدهنده وب قبل از استفاده از چارچوب تمرکز کنیم، قدم بعدی مناسب پس از تکمیل این دوره میتواند یادگیری Node.js از طریق مجموعه دیگری از ویدیوها باشد: "سری مقدماتی به: Node.js".
راهنمای رفتار حرفهای و همکاری ما را ببینید. بازخورد سازنده شما را خوشآمد میگوییم!
🧭 دسترسی آفلاین
میتوانید این مستندات را به صورت آفلاین با استفاده از Docsify اجرا کنید. این مخزن را فورک کنید، Docsify را نصب کنید روی دستگاه خود، سپس در پوشه اصلی این مخزن فرمان docsify serve را وارد کنید. وبسایت روی پورت ۳۰۰۰ در لوکالهاست شما ارائه میشود: localhost:3000.
نسخه PDF همه دروس را میتوانید از اینجا بیابید.
🎒 دورههای دیگر
تیم ما دورههای دیگری هم تولید میکند! مشاهده کنید:
LangChain
Azure / Edge / MCP / Agents
Generative AI Series
Core Learning
Copilot Series
دریافت کمک
اگر گیر افتادید یا سوالی درباره ساخت برنامههای هوش مصنوعی دارید، به بحثها در مورد MCP با یادگیرندگان و توسعهدهندگان با تجربه بپیوندید. این یک جامعه حمایتی است که سوالات استقبال میشود و دانش به صورت آزادانه به اشتراک گذاشته میشود.
اگر بازخورد محصول دارید یا هنگام ساخت با خطا مواجه شدید به آدرس زیر مراجعه کنید:
مجوز
این مخزن تحت مجوز MIT منتشر شده است. برای اطلاعات بیشتر به فایل LICENSE مراجعه کنید.
سلب مسئولیت: این سند با استفاده از سرویس ترجمه هوش مصنوعی Co-op Translator ترجمه شده است. هر چند ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمههای خودکار ممکن است دارای خطا یا نادرستیهایی باشند. سند اصلی به زبان بومی خود باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفهای انسانی توصیه میشود. ما مسئول هیچ گونه سوءتفاهم یا تفسیر نادرستی که ناشی از استفاده از این ترجمه باشد، نیستیم.


