سلام روزتون بخیر آموزشها برای بچهها ساده توضیح داده شده یا نیاز به کمک بزرگتر داره؟
سلام وقت بخیر آموزش ها در دوره های نخبه شو کاملا ساده و مفهومی هستند.
پیش از ثبتنام ببینید فرزندتان دقیقاً چه چیزی یاد میگیرد و در پایان دوره چه میسازد.
پیش از ثبتنام دقیقاً بدانید فرزندتان چه میگیرد
این درسها بدون ثبتنام و بدون پرداخت قابل تماشا هستند تا لحن تدریس، کیفیت تصویر و سرعت پیشرفت دوره را از نزدیک بسنجید.
قهرمان میدود، میپرد، سکه جمع میکند و از موانع فرار میکند. این دقیقاً همان بازیای است که فرزند شما قدمبهقدم و با دستان خودش میسازد و برنامهنویسی میکند.
1
2
3
4
5
6
7
این دوره یک بازیِ آماده برای بازیکردن نیست؛ یک مسیر عملی است که در آن فرزند شما با دستان خودش یک بازیِ واقعی میسازد و برنامهنویسی میکند. مهارتهایی که در ادامه میبینید نتیجهٔ ملموس همین مسیرند.
یک دونده مترو بساز که میدوه، میپره، سکه جمع میکنه و از موانع فرار میکنه! در ۷ فصل کوتاه، یاد میگیری چطور یه بازی واقعی بسازی — با صدا، انیمیشن، امتیاز و حتی جاذبه!
اگر فرزند شما به بازیهای رایانهای علاقه دارد، احتمالاً بارها دیدهاید که چطور با اشتیاق مراحل مختلف یک بازی را دنبال میکند. اما اگر بهجای بازی کردن، خودش بتواند شخصیت بسازد، موانع را طراحی کند و برای برنده شدن قوانین مشخصی بنویسد، تجربه متفاوتی از دنیای فناوری خواهد داشت. اسکرچ یکی از ابزارهایی است که این مسیر را برای کودکان و نوجوانان سادهتر و جذابتر میکند.
آموزش برنامه نویسی برای کودکان
آموزش اسکرچ رایگان فرصتی است تا دانشآموزان بدون نیاز به یادگیری دستورهای پیچیده و نوشتن کدهای متنی، با اصول برنامهنویسی آشنا شوند. آنها با کنار هم قرار دادن بلوکهای تصویری یاد میگیرند به رایانه دستور بدهند، نتیجه کارشان را مشاهده کنند و در صورت بروز مشکل، راهحل دیگری را امتحان کنند.
در این صفحه، از معرفی اسکرچ و امکانات آن شروع میکنیم و به سراغ مفاهیم پایه برنامهنویسی، طراحی انیمیشن، ساخت بازی و رفع خطا میرویم. در پایان نیز با دوره رایگان Magic Runner نخبهشو آشنا میشوید؛ دورهای پروژهمحور که میتواند نقطه شروع مناسبی برای ورود به دنیای بازیسازی باشد.
اسکرچ (Scratch) یک محیط برنامهنویسی تصویری است که با هدف سادهتر کردن یادگیری برنامهنویسی، بهویژه برای کودکان و نوجوانان، توسعه یافته است. این محیط به کاربران اجازه میدهد با اتصال بلوکهای آماده، داستان تعاملی، انیمیشن، بازی و پروژههای آموزشی بسازند.
اسکرچ توسط گروه Lifelong Kindergarten در آزمایشگاه رسانه مؤسسه فناوری ماساچوست (MIT Media Lab) توسعه داده شد. در این محیط، بهجای اینکه کاربر تمام دستورها را با صفحهکلید تایپ کند، بلوکهایی را انتخاب میکند که هرکدام وظیفه مشخصی دارند؛ مثلاً حرکت دادن شخصیت، پخش صدا، بررسی یک شرط یا تغییر امتیاز.
برای مثال، کودک میتواند بلوک «وقتی پرچم سبز کلیک شد» را به بلوک «۱۰ گام حرکت کن» متصل کند. با اجرای برنامه، شخصیت روی صفحه حرکت میکند. سپس میتواند دستورهای بیشتری اضافه کند تا شخصیت بچرخد، حرف بزند یا به مانعی واکنش نشان دهد.
محدودیت اسکرچ به ساخت بازیهای ساده ختم نمیشود. با شناخت امکانات این محیط میتوان پروژههایی با سطح دشواری متفاوت طراحی کرد.
| نوع پروژه | نمونه کاربرد | مفاهیم قابل یادگیری |
|---|---|---|
| انیمیشن | نمایش حرکت یک شخصیت در داستان | رویدادها، حرکت، تغییر لباس |
| بازی ماز | رساندن شخصیت به مقصد بدون برخورد با دیوار | مختصات، حسگرها، شرطها |
| بازی امتیازی | جمعآوری سکه و افزایش امتیاز | متغیرها، برخورد، حلقهها |
| داستان تعاملی | انتخاب مسیر داستان توسط مخاطب | پیامها، شرطها، رویدادها |
| پروژه آموزشی | ساخت آزمون ریاضی یا پرسشوپاسخ | متغیرها، عملگرها، ورودی کاربر |
| پروژه موسیقی | نواختن نت با کلیدهای صفحهکلید | رویدادها، صدا، زمانبندی |
در برنامهنویسی متنی، کاربر باید دستورها را با رعایت قواعد نگارشی یک زبان برنامهنویسی بنویسد. در برنامهنویسی تصویری، بسیاری از این قواعد در قالب بلوکهای آماده ارائه شدهاند و کاربر میتواند آنها را به هم متصل کند.
این تفاوت باعث میشود فرد تازهکار بتواند بهجای درگیر شدن با خطاهای تایپی، روی منطق برنامه تمرکز کند. البته برنامهنویسی تصویری به معنی حذف تفکر برنامهنویسی نیست؛ برای ساخت یک بازی درست، همچنان باید ترتیب دستورات، شرطها، تکرارها و رفتار شخصیتها را بهدرستی طراحی کرد.

یادگیری برنامهنویسی زمانی ارزشمندتر میشود که کودک فقط دستورها را حفظ نکند، بلکه از آنها برای حل مسئله و ساخت یک محصول استفاده کند. اسکرچ محیطی فراهم میکند که در آن نتیجه تصمیمهای برنامهنویس بهسرعت قابل مشاهده است.همان طور که در متن زیر نیز راجب اهمیت یادگیری اسکرچ صحبت شده است: ( منبع )
As Scratchers program and share interactive projects, they learn important mathematical and computational concepts, as well as how to think creatively, reason systematically, and work collaboratively: all essential skills for the 21st century.
ترجمه:
اسکرچکارها وقتی پروژههای تعاملی برنامهنویسی میکنند و آنها را با دیگران به اشتراک میگذارند، مفاهیم مهم ریاضی و محاسباتی را یاد میگیرند. در کنار آن، خلاقانه فکر کردن، منظم و منطقی استدلال کردن و کار گروهی را هم میآموزند؛ مهارتهایی که همگی برای قرن بیستویکم ضروریاند.
مهمترین مزایای این تجربه عبارتاند از:
برای مثال، ساخت یک بازی جمعآوری سکه فقط به حرکت دادن یک شخصیت محدود نیست. کودک باید تشخیص دهد چه زمانی سکه جمعآوری شده، امتیاز چقدر افزایش پیدا کند و بازی در چه شرایطی به پایان برسد. همین مراحل ساده، فرصتی برای تمرین چند مفهوم مختلف فراهم میکنند.
اسکرچ بهطور کلی برای کودکان و نوجوانانی طراحی شده است که میخواهند برنامهنویسی را با ساخت پروژههای خلاقانه تجربه کنند. بااینحال، سن مناسب شروع به توانایی خواندن، درک دستورهای ساده، علاقه کودک و میزان همراهی آموزشی بستگی دارد.نسخه اصلی اسکرچ معمولاً برای گروه سنی حدود ۸ تا ۱۶ سال معرفی میشود؛ البته افراد خارج از این بازه نیز میتوانند از آن استفاده کنند. برای کودکان کمسنتر، اسکرچ جونیور گزینه سادهتری است.
| گروه سنی تقریبی | مسیر پیشنهادی | نمونه فعالیت |
|---|---|---|
| 4 تا ۷ سال | اسکرچ جونیور و فعالیتهای مقدماتی | حرکت دادن شخصیت و ساخت داستان کوتاه |
| ۸ تا ۱۰ سال | شروع کار با اسکرچ | ساخت انیمیشن و بازی ساده |
| ۱۱ تا ۱۲ سال | توسعه پروژههای تعاملی | بازی امتیازی، ماز و آزمون |
| ۱۳ تا ۱۶ سال | پروژههای پیچیدهتر | استفاده از لیستها، کلونها و منطق چندمرحلهای |
| نوجوانان بزرگتر و بزرگسالان | یادگیری بر اساس هدف | ساخت پروژههای شخصی و آمادگی برای زبانهای متنی |
این جدول یک راهنمای تقریبی است، نه یک قانون قطعی. دانشآموز پایه ششم میتواند با توجه به تجربه و علاقه خود از پروژههای مقدماتی شروع کند و بهتدریج سراغ بازیهای پیچیدهتر برود. آیا یادگیری بدون تجربه قبلی امکانپذیر است؟ بله. برای شروع، نیازی به سابقه برنامهنویسی نیست. بهتر است اولین پروژه کوچک باشد و کودک بهجای حفظ کردن تعداد زیادی بلوک، کاربرد هر دستور را در عمل یاد بگیرد.
همچنین آموزش اسکرچ جونیور رایگان میتواند برای آشنایی کودکان کمسنتر با مفهوم ترتیب دستورات و حرکت شخصیتها مناسب باشد. این برنامه با نسخه اصلی اسکرچ تفاوت دارد و محیط آن برای کاربران خردسال سادهسازی شده است.
نسخه رسمی اسکرچ بهصورت رایگان در دسترس است. برای شروع، لازم نیست هزینهای بابت خرید مجوز نرمافزار پرداخت کنید. میتوانید از نسخه آنلاین استفاده کنید یا در صورت نیاز، نسخه قابل نصب را از منابع رسمی دریافت کنید.برای ورود به محیط آنلاین، آدرس وبسایت رسمی را در مرورگر باز کنید:
پس از ورود به سایت، با انتخاب گزینه ساخت پروژه (Create) میتوانید محیط ویرایش را باز کنید. برای ذخیره آنلاین و مدیریت پروژهها، داشتن حساب کاربری مفید است؛ اما میتوانید پیش از ثبتنام نیز محیط را بررسی کنید.
در بسیاری از پروژههای ابتدایی، تجهیزات خاصی نیاز نیست. اگر اینترنت در دسترس نباشد، نسخه آفلاین نیز میتواند گزینه مناسبی باشد؛ البته نحوه ذخیره و انتقال فایلها به نسخه و شیوه استفاده بستگی دارد.
خیر. تسلط به زبان انگلیسی شرط شروع نیست. محیط اسکرچ از زبانهای مختلف، از جمله فارسی، پشتیبانی میکند و میتوان زبان نمایش بلوکها را تغییر داد. بااینحال، آشنایی تدریجی با واژههای رایج انگلیسی در برنامهنویسی میتواند در مراحل بعدی کمککننده باشد.افرادی که به دنبال آموزش اسکرچ فارسی هستند، بهتر است از آموزشهایی استفاده کنند که در کنار توضیح فارسی، نام انگلیسی بلوکهای مهم را نیز معرفی میکنند؛ زیرا این کار پیدا کردن دستورها در منابع دیگر را آسانتر میکند.
مقاله پیشنهادی : آموزش برنامه نویسی کودکان بدون زبان انگلیسی
برای شروع کار، لازم نیست تمام امکانات برنامه را از ابتدا بشناسید. بهتر است ابتدا یک پروژه جدید بسازید، چند بلوک را به هم متصل کنید و نتیجه را ببینید.
مراحل شروع کار به این صورت است:
1. وارد وبسایت رسمی اسکرچ شوید.
2. گزینه Create را انتخاب کنید تا ویرایشگر پروژه باز شود.
3. از بخش انتخاب شخصیت، یک کاراکتر مانند گربه اسکرچ را انتخاب کنید.
4. از دستهبندی حرکت، یک بلوک حرکتی به ناحیه کدنویسی بکشید.
5. یک رویداد مانند کلیک روی پرچم سبز را به ابتدای برنامه اضافه کنید.
6. روی پرچم سبز کلیک کنید و نتیجه را مشاهده کنید.
7. چند دستور دیگر اضافه کنید و تفاوت نتیجه را بررسی کنید.
برای ذخیره آنلاین پروژه و انتشار آن در جامعه اسکرچ، میتوانید حساب کاربری ایجاد کنید. اگر پروژه را بدون ورود به حساب میسازید، بهتر است از گزینههای ذخیره محلی موجود در ویرایشگر استفاده کنید تا کارتان از دست نرود.
محیط اسکرچ از چند قسمت تشکیل شده که هرکدام وظیفه مشخصی دارند. شناخت این بخشها کمک میکند کودک هنگام انجام تمرینها بداند هر دستور را از کجا پیدا کند و نتیجه اجرای برنامه را کجا ببیند.
برای مثال، اگر بخواهید شخصیت هنگام فشردن کلید راست حرکت کند، باید یک رویداد مربوط به صفحهکلید و یک یا چند دستور حرکتی را در ناحیه کدنویسی قرار دهید. نتیجه حرکت را نیز روی صحنه مشاهده خواهید کرد.
آشنا شوید: زبان های برنامه نویسی کودکان
در اسکرچ میتوانید از کتابخانه آماده شخصیتها و پسزمینهها استفاده کنید یا طرح اختصاصی خودتان را بسازید. انتخاب یک شخصیت مناسب برای شروع کافی است؛ لازم نیست از همان ابتدا زمان زیادی را صرف طراحی گرافیکی کنید.
برای ساخت پروژههای جذابتر میتوانید:
بلوکها براساس کاربردشان گروهبندی شدهاند. هر گروه به حل بخشی از مسئله کمک میکند و ترکیب آنها امکان ساخت برنامههای پیچیدهتر را فراهم میسازد.
| دسته بلوک | کاربرد اصلی | مثال |
|---|---|---|
| حرکت (Motion) | کنترل موقعیت و جهت | حرکت ۱۰ گام |
| ظاهر (Looks) | تغییر ظاهر و نمایش متن | گفتن یک جمله |
| صدا (Sound) | پخش و کنترل صدا | اجرای افکت صوتی |
| رویداد (Events) | تعیین زمان شروع دستورها | کلیک روی پرچم سبز |
| کنترل (Control) | تکرار و تصمیمگیری | اجرای دستور در حلقه |
| حسگر (Sensing) | دریافت اطلاعات از محیط | تشخیص برخورد |
| عملگرها (Operators) | محاسبات و مقایسه | جمع دو عدد |
| متغیرها (Variables) | نگهداری اطلاعات | ثبت امتیاز |
| بلوکهای سفارشی (My Blocks) | ساخت دستورهای قابل استفاده مجدد | اجرای یک مجموعه دستور |
بهتر است در ابتدای مسیر، بهجای یادگیری همه دستهها بهصورت جداگانه، چند بلوک مرتبط را در یک پروژه واقعی به کار ببرید. برای نمونه، حرکت شخصیت با کلیدهای صفحهکلید میتواند تمرینی مناسب برای ترکیب رویدادها، حرکت و کنترل باشد.
الگوریتم مجموعهای از مراحل مشخص برای رسیدن به یک نتیجه است. پیش از آنکه بلوکها را به هم متصل کنید، بهتر است بدانید برنامه قرار است چه کاری انجام دهد و هر مرحله به چه ترتیبی اجرا شود.
فرض کنید میخواهید شخصیتی از نقطه شروع به سمت یک ستاره حرکت کند. الگوریتم ابتدایی آن میتواند چنین باشد:
1. بازی را با کلیک روی پرچم سبز شروع کن.
2. شخصیت را به نقطه شروع ببر.
3. منتظر فشرده شدن کلید جهتدار بمان.
4. با توجه به کلید فشردهشده، شخصیت را حرکت بده.
5. اگر شخصیت به ستاره رسید، پیام موفقیت نمایش بده.
در این مثال، الگوریتم قبل از پیادهسازی مشخص شده است. حالا میتوانید هر مرحله را به دستورهای مناسب تبدیل کنید.
تفاوت دستور، الگوریتم و برنامه نیز در همینجا روشن میشود: دستور یک فرمان مشخص است، الگوریتم ترتیب حل مسئله را توضیح میدهد و برنامه مجموعهای از دستورهای اجراشدنی است که الگوریتم را پیادهسازی میکند.

رویدادها مشخص میکنند اجرای یک مجموعه دستور چه زمانی آغاز شود. بدون رویداد مناسب، ممکن است بلوکها در برنامه وجود داشته باشند، اما در زمان مورد انتظار اجرا نشوند.
از رویدادهای رایج میتوان به موارد زیر اشاره کرد:
برای مثال، در یک بازی میتوانید تعیین کنید که با کلیک روی پرچم سبز، امتیاز به صفر برگردد و شخصیت به نقطه شروع منتقل شود. سپس با فشردن کلیدهای جهتدار، حرکت شخصیت آغاز شود.
نکته مهم این است که هر رویداد باید با هدف مشخصی استفاده شود. اگر چند اسکریپت بدون هماهنگی اجرا شوند، ممکن است شخصیت ناخواسته حرکت کند یا چند دستور همزمان نتیجه نامطلوبی ایجاد کنند.
دستورات حرکتی به شما امکان میدهند شخصیت را جابهجا کنید، جهت آن را تغییر دهید یا به نقطه مشخصی ببرید. برای ساخت بازیهای تعاملی، شناخت مختصات نیز اهمیت زیادی دارد. در صحنه اسکرچ، محور افقی با X و محور عمودی با Y نمایش داده میشود. مقدار X مشخص میکند شخصیت در کجای مسیر افقی قرار دارد و مقدار Y موقعیت عمودی را نشان میدهد.
برای مثال، اگر مقدار X افزایش پیدا کند، شخصیت معمولاً به سمت راست حرکت میکند؛ افزایش Y نیز آن را به سمت بالای صحنه میبرد. مقدارهای منفی در جهتهای مخالف قرار میگیرند.
فرض کنید شخصیت باید از سمت چپ صفحه به سمت راست برود. میتوانید برای آن یک نقطه شروع تعیین کنید و با تغییر مقدار X، حرکتش را کنترل کنید. اگر قرار باشد شخصیت به مقصد مشخصی برسد، استفاده از مختصات به شما امکان میدهد مسیر و موقعیت نهایی را دقیقتر تنظیم کنید.
برای ساخت بازی ماز نیز میتوانید از مختصات برای تعیین محل شروع، مقصد و حرکت شخصیت استفاده کنید. البته برای تشخیص برخورد با دیوار، لازم است حسگرهای مناسب را هم به برنامه اضافه کنید.
همه دستورها نباید پشت سر هم و با بیشترین سرعت اجرا شوند. در بعضی پروژهها لازم است بین مراحل فاصله زمانی وجود داشته باشد یا شخصیت بهصورت تدریجی حرکت کند. بلوک Wait برای مکث در اجرای برنامه کاربرد دارد. دستور Glide نیز میتواند شخصیت را طی مدت مشخصی به موقعیت دیگری منتقل کند. ترکیب این دستورات با حلقهها و رویدادها به شما اجازه میدهد حرکتهای نرمتر و قابلکنترلتری بسازید.
حلقه زمانی استفاده میشود که بخواهیم یک دستور یا مجموعهای از دستورها چند بار اجرا شود. برای مثال، اگر قرار باشد شخصیت در بازی چندین بار بپرد، نیازی نیست همه مراحل پرش را بهصورت دستی تکرار کنیم.
در اسکرچ چند نوع حلقه مهم وجود دارد:
فرض کنید میخواهید شخصیت در یک بازی چند بار بپرد. میتوانید مجموعه دستورهای مربوط به بالا رفتن و پایین آمدن را داخل یک حلقه قرار دهید. برای توقف حرکت نیز باید شرایط پایان مناسبی تعریف کنید. حلقهها علاوه بر بازیسازی، برای رسم شکلهای هندسی و ایجاد الگوهای تکرارشونده هم کاربرد دارند. مثلاً با تکرار حرکت و چرخش به اندازه مشخص، میتوان یک شکل هندسی رسم کرد.

دستورهای شرطی به برنامه اجازه میدهند براساس وضعیت موجود، رفتار متفاوتی نشان دهد. در یک بازی، ممکن است بخواهید شخصیت فقط زمانی امتیاز بگیرد که به سکه برخورد کند یا زمانی که به مانع برسد، بازی متوقف شود. دستور If برای اجرای یک بخش از برنامه در صورت برقرار بودن شرط به کار میرود. If Else نیز به برنامه اجازه میدهد برای حالت برقرار بودن شرط و حالت برقرار نبودن آن، دو رفتار متفاوت تعریف کند.
برای مثال:
عملگرهای منطقی AND، OR و NOT امکان ترکیب شرطها را فراهم میکنند. فرض کنید بازیکن فقط زمانی برنده شود که به مقصد رسیده باشد و امتیاز لازم را نیز کسب کرده باشد. در این حالت میتوان دو شرط را با AND ترکیب کرد.
عملگرهای ریاضی نیز برای جمع، تفریق، ضرب، تقسیم، مقایسه اعداد و تولید عدد تصادفی کاربرد دارند. این امکانات در ساخت بازیهای امتیازی، آزمونهای آموزشی و پروژههای محاسباتی بسیار مفید هستند.
متغیر فضایی برای نگهداری یک مقدار است. در بازیها میتوان از متغیر برای ذخیره امتیاز، زمان باقیمانده، تعداد جانها یا مرحله فعلی استفاده کرد. برای مثال، وقتی بازیکن یک سکه جمعآوری میکند، مقدار متغیر امتیاز یک واحد افزایش مییابد. هنگام شروع دوباره بازی نیز باید مقدار اولیه متغیر تنظیم شود تا نتیجه اجرای قبلی روی بازی جدید اثر نگذارد.
لیست برای نگهداری چند مقدار در کنار هم استفاده میشود. فرض کنید میخواهید ده سؤال یک آزمون را مدیریت کنید. بهجای ساخت یک متغیر جداگانه برای هر سؤال، میتوانید اطلاعات را در یک لیست قرار دهید و بر اساس شماره هر سؤال، داده موردنیاز را بخوانید.
| مفهوم | متغیر | لیست |
|---|---|---|
| کاربرد | نگهداری یک مقدار | نگهداری مجموعهای از موارد |
| مثال | امتیاز فعلی بازیکن | فهرست سؤالهای آزمون |
| عملیات رایج | تعیین یا تغییر مقدار | افزودن، حذف یا جایگزینی مورد |
| استفاده در بازی | زمان و امتیاز | سؤالها، پاسخها یا رکوردها |
در پروژههای مقدماتی معمولاً متغیرها زودتر از لیستها آموزش داده میشوند؛ زیرا درک آنها برای ساخت یک سیستم امتیازدهی ساده کافی است. پس از آن، لیستها میتوانند راه مدیریت اطلاعات متعدد را هموار کنند.
در پروژههایی که چند شخصیت دارند، لازم است شخصیتها بتوانند رفتار یکدیگر را هماهنگ کنند. پیامها در اسکرچ این امکان را فراهم میکنند. با استفاده از Broadcast میتوانید پیامی ارسال کنید و در شخصیت دیگر، با بلوک When I Receive به آن واکنش نشان دهید. برای مثال، پس از پایان مرحله اول، یک پیام ارسال میشود تا پسزمینه تغییر کند و مرحله بعد آغاز شود.
حسگرها نیز به برنامه کمک میکنند اطلاعاتی درباره محیط و تعامل کاربر دریافت کند. از کاربردهای مهم آنها میتوان به این موارد اشاره کرد:
در بازی ماز، حسگر برخورد با رنگ میتواند برای شناسایی تماس با دیوار استفاده شود. در بازی جمعآوری سکه نیز با تشخیص تماس شخصیت با سکه، امتیاز افزایش پیدا میکند.
بخش گرافیکی پروژه نقش مهمی در جذابیت خروجی دارد. در اسکرچ میتوانید از شخصیتهای آماده استفاده کنید، ظاهر آنها را تغییر دهید یا با ابزار نقاشی، شخصیت اختصاصی بسازید. برای ساخت انیمیشن راه رفتن، کافی است چند لباس با حالتهای متفاوت داشته باشید و در زمان مناسب لباس شخصیت را تغییر دهید. اگر تغییر لباس با سرعت و ترتیب مناسبی انجام شود، حرکت طبیعیتری دیده خواهد شد.
صدا نیز میتواند به تجربه کاربر کمک کند. برای نمونه، هنگام جمعآوری سکه یک افکت صوتی پخش میشود یا با رسیدن به پایان بازی، موسیقی متفاوتی اجرا میشود.
برای بهتر شدن نتیجه، به این نکات توجه کنید:
پس از یادگیری رویدادها، حلقهها، شرطها و متغیرها، میتوانید به سراغ امکاناتی بروید که ساخت پروژههای بزرگتر را سادهتر میکنند.
بلوکهای سفارشی به شما اجازه میدهند مجموعهای از دستورها را در قالب یک دستور جدید تعریف کنید. برای مثال، اگر چند بار در پروژه به یک فرایند مشخص نیاز دارید، میتوانید آن را در قالب بلوکی جداگانه قرار دهید تا برنامه مرتبتر شود.
کلون نسخهای از یک شخصیت است که هنگام اجرای برنامه ایجاد میشود. این قابلیت برای ساخت تعداد زیادی سکه، دشمن یا مانع کاربرد دارد. بهجای اینکه هر سکه را بهعنوان یک شخصیت مستقل طراحی کنید، میتوانید از کلونها استفاده کنید و رفتار آنها را کنترل کنید.
در استفاده از کلونها باید به زمان ایجاد و حذف آنها توجه کنید؛ زیرا باقی ماندن نسخههای غیرضروری میتواند اجرای بازی را پیچیده کند.
افزونه Pen امکان رسم خط و شکل را با حرکت شخصیت فراهم میکند. با ترکیب این قابلیت و حلقهها میتوان شکلهای هندسی، الگوهای تکراری و آثار هنری الگوریتمی ساخت.
اسکرچ از افزونههایی مانند قلم، موسیقی و تشخیص ویدیو پشتیبانی میکند. بعضی افزونهها نیز برای کار با تجهیزات سازگار کاربرد دارند. افزونه مناسب به هدف پروژه بستگی دارد و همه آنها برای شروع ضروری نیستند.
از سوی دیگر، ممکن است چند اسکریپت بهصورت همزمان اجرا شوند؛ برای مثال، یک اسکریپت حرکت شخصیت را کنترل کند و اسکریپت دیگری صدای پسزمینه را مدیریت کند. هماهنگی این دستورها به جلوگیری از رفتارهای ناخواسته کمک میکند.
یکی از بهترین راههای یادگیری برنامهنویسی، ساخت پروژههایی است که نتیجه آنها قابل مشاهده و آزمایش باشد. در این روش، کودک هر مفهوم را هنگام حل یک مسئله واقعی تمرین میکند و بهتدریج میتواند پروژههای پیچیدهتری بسازد.
برای ساخت یک انیمیشن، ابتدا شخصیت و پسزمینه مناسب را انتخاب کنید. سپس مشخص کنید شخصیت چه حرکتی انجام دهد، چه زمانی صحبت کند و در چه مرحلهای ظاهرش تغییر کند. برای نمونه، میتوانید انیمیشنی بسازید که در آن یک شخصیت وارد صحنه میشود، سلام میکند و به سمت شخصیت دیگری میرود. این پروژه برای تمرین رویدادها، حرکت، لباسها و صدا مناسب است.
در داستان تعاملی، مخاطب تنها تماشاگر نیست؛ بلکه میتواند با انتخابهای خود بر روند داستان تأثیر بگذارد. برای ساخت چنین پروژهای، باید گفتوگوها، تغییر پسزمینهها و ترتیب اتفاقها را طراحی کنید. برای مثال، شخصیت اصلی داستان میتواند از مخاطب بپرسد کدام مسیر را انتخاب میکند. سپس برنامه براساس پاسخ کاربر، صحنه یا ادامه داستان را تغییر دهد.
بازی ماز یکی از پروژههای مناسب برای یادگیری مختصات و تشخیص برخورد است. ابتدا مسیر و دیوارها را طراحی کنید، سپس شخصیت را در نقطه شروع قرار دهید و حرکت آن را با کلیدهای جهتدار کنترل کنید. برای کامل کردن پروژه، باید برخورد با دیوار را تشخیص دهید، مقصد را مشخص کنید و پس از رسیدن به هدف، پیام موفقیت نمایش دهید. در مراحل بعدی میتوانید زمانسنج یا چند مرحله با دشواری متفاوت اضافه کنید.
در این بازی، شخصیت باید سکهها را در محیط جمعآوری کند. هر بار که برخورد با سکه اتفاق میافتد، امتیاز بازیکن افزایش پیدا میکند. برای توسعه بازی میتوانید از متغیر امتیاز، حسگر برخورد، کلونها و شرطهای پایان مرحله استفاده کنید. در نسخههای پیشرفتهتر نیز میتوان محدودیت زمانی یا موانع متحرک اضافه کرد.
بازیهای دونده، مانند بازیهایی که شخصیت در مسیر حرکت میکند و باید از موانع عبور کند، برای تمرین چند مفهوم برنامهنویسی بهصورت همزمان مناسب هستند.
برای ساخت نمونهای ساده از این سبک بازی، میتوانید مراحل زیر را دنبال کنید:
1. شخصیت اصلی و پسزمینه مسیر را انتخاب کنید.
2. حرکت شخصیت را با کلیدهای صفحهکلید کنترل کنید.
3. پرش را با تغییر تدریجی موقعیت عمودی شبیهسازی کنید.
4. موانع را در مسیر قرار دهید و برخورد با آنها را تشخیص دهید.
5. با استفاده از متغیر، امتیاز بازی را محاسبه کنید.
6. سرعت حرکت موانع را بهتدریج افزایش دهید.
7. در صورت برخورد با مانع، بازی را متوقف کنید و امکان شروع دوباره را فراهم سازید.
چنین پروژهای میتواند مقدمهای برای شناخت بهتر حلقهها، شرطها، متغیرها، مختصات و زمانبندی باشد.

در این پروژه، برنامه یک سؤال نمایش میدهد، پاسخ کاربر را دریافت میکند و درستی آن را بررسی میکند. با استفاده از متغیرها میتوان امتیاز را نگه داشت و با استفاده از لیستها، چند سؤال را مدیریت کرد.
در پایان، برنامه نتیجه نهایی را نمایش میدهد. این روش برای ساخت آزمونهای آموزشی، تمرین ریاضی و پروژههای پرسشوپاسخ مناسب است.
برای ساخت یک بازی دو نفره، باید کنترل هر شخصیت را به کلیدهای متفاوت اختصاص دهید. سپس میتوانید شرایط برد و باخت را تعریف کنید، برخورد میان شخصیتها را بررسی کنید و نتیجه را روی صفحه نمایش دهید.
این پروژه برای تمرین مدیریت چند شخصیت، رویدادها، شرطها و هماهنگی اسکریپتها کاربرد دارد.
گاهی پروژه اجرا میشود، اما نتیجه با چیزی که انتظار داشتید تفاوت دارد. ممکن است امتیاز افزایش پیدا نکند، شخصیت در جای اشتباه حرکت کند یا بازی پس از پایان مرحله همچنان ادامه داشته باشد. در چنین شرایطی باید برنامه را بررسی و اشکالزدایی کنید.
اشکالزدایی یعنی پیدا کردن علت عملکرد نادرست و اصلاح آن؛ نه اینکه کل پروژه را از ابتدا بسازید.
برای پیدا کردن خطا، این ترتیب را دنبال کنید:
برای مثال، اگر امتیاز در هر لحظه چند بار افزایش پیدا میکند، ممکن است شرط برخورد در یک حلقه دائمی قرار گرفته باشد و برنامه بارها آن را اجرا کند. در این حالت باید منطق تشخیص برخورد و نحوه ادامه اجرای برنامه را بررسی کنید.
پس از تکمیل پروژه، بهتر است آن را ذخیره کنید و برای معرفی به دیگران توضیح کوتاهی درباره نحوه اجرا بنویسید. اگر از حساب کاربری اسکرچ استفاده میکنید، میتوانید پروژه را در حساب خود ذخیره و در صورت تمایل منتشر کنید. برای پروژههای محلی نیز میتوانید از قابلیت ذخیره فایل پروژه در ویرایشگر استفاده کنید.
پیش از انتشار، چند نکته را بررسی کنید:
به اشتراک گذاشتن پروژه به کودک کمک میکند نتیجه تلاش خود را ارائه کند، بازخورد بگیرد و برای بهتر کردن نسخه بعدی ایده پیدا کند.
آشنا شوید: هزینه کلاس برنامه نویسی کودکان
پس از آنکه کودک چند پروژه مستقل ساخت، میتواند بر اساس علاقه خود مسیر یادگیری بعدی را انتخاب کند. لازم نیست بلافاصله سراغ زبانهای پیچیده برود؛ بهتر است ابتدا بتواند ایدهای را به مراحل منطقی تبدیل کند و آن را با ابزارهای آموختهشده پیادهسازی کند.
مسیرهای پیشنهادی عبارتاند از:
تمرین منظم، توسعه پروژههای قبلی و آزمایش راهحلهای مختلف، معمولاً از حفظ کردن تعداد زیادی دستور مفیدتر است. هدف این است که کودک بهتدریج بتواند بدون وابستگی کامل به آموزش، برای مسائل جدید راهحل طراحی کند.
تا اینجا با امکانات و مفاهیم اصلی اسکرچ آشنا شدیم؛ اما برای شروع عملی، داشتن یک پروژه مشخص میتواند مسیر یادگیری را روشنتر کند. در دوره Magic Runner نخبهشو، نقطه تمرکز ساخت یک بازی دونده است؛ یعنی بهجای یادگیری پراکنده دستورها، مفاهیم برنامهنویسی را در قالب یک خروجی قابل مشاهده تمرین میکنید.
آشنایی با پروژه دونده مترو
هدف پروژه، آشنایی عملی با منطق یک بازی دونده و ارتباط میان شخصیت، محیط، موانع و قوانین بازی است. کودک میتواند روند ساخت بازی را دنبال کند و عملکرد بخشهای مختلف را بهتر بشناسد.
یادگیری از طریق ساخت بازی
مفاهیمی مانند رویدادها، حرکت، شرطها و منطق برخورد در پروژههای بازیسازی کاربرد دارند. میزان پوشش هر مفهوم در دوره به محتوای واقعی آموزش بستگی دارد.
تمرین و تکمیل پروژه
کودک میتواند همزمان با مشاهده آموزش، مراحل را روی رایانه اجرا کند، نتیجه را آزمایش کند و با تغییرات کوچک، درک خود را از رفتار برنامه افزایش دهد.

این دوره میتواند برای کودکانی مناسب باشد که برای نخستین بار میخواهند برنامهنویسی را تجربه کنند، به ساخت بازی علاقه دارند یا ترجیح میدهند بهجای تماشای صرف بازیها، خودشان یک پروژه بسازند.همچنین والدینی که به دنبال یک فعالیت آموزشی عملی هستند، میتوانند از چنین پروژهای برای آشنایی فرزندشان با منطق برنامهنویسی استفاده کنند.
برای شروع، بهتر است کودک بتواند دستورهای ساده را دنبال کند و با کمک آموزش، مراحل ساخت پروژه را انجام دهد. تجربه قبلی برنامهنویسی شرط ضروری شروع نیست.
برای آغاز دوره، وارد صفحه دوره دونده مترو شوید و آموزش را از مراحل ابتدایی دنبال کنید. بهتر است هنگام مشاهده هر بخش، کودک همان مرحله را روی رایانه اجرا کند و تنها به تماشای ویدئو اکتفا نکند.
برای انجام تمرینها، یک لپ تاپ ، تبلت یا موبایل و دسترسی به محیط اسکرچ کافی است. در پایان هر بخش، نتیجه را آزمایش کنید و اگر برنامه مطابق انتظار عمل نکرد، بلوکهای مربوط به همان مرحله را دوباره بررسی کنید.
با یک پروژه مشخص وارد دنیای برنامهنویسی شوید و قدمبهقدم با منطق ساخت بازی آشنا شوید.
مشاهده دوره رایگان اسکرچ در نخبهشو
اطلاعات بیشتر: تفاوت اسکرچ و اسکرچ جونیور چیست ؟
اسکرچ یک محیط برنامهنویسی تصویری است که برای ساخت بازی، انیمیشن، داستان تعاملی و پروژههای آموزشی استفاده میشود. کاربران با اتصال بلوکهای برنامهنویسی، رفتار شخصیتها و منطق پروژه را تعیین میکنند.
نسخه رسمی اسکرچ رایگان است و میتوان از طریق وبسایت آن پروژه ساخت. رایگان بودن دورههای آموزشی به ارائهدهنده هر دوره بستگی دارد؛ برای اطلاع از شرایط دوره Magic Runner، صفحه رسمی نخبهشو را بررسی کنید.
نسخه اصلی اسکرچ معمولاً برای کودکان حدود ۸ تا ۱۶ سال معرفی میشود. بااینحال، آمادگی کودک، علاقه او و نوع آموزش در انتخاب زمان شروع اهمیت دارند.
خیر. اسکرچ از زبان فارسی پشتیبانی میکند. بااینحال، آشنایی تدریجی با اصطلاحات انگلیسی برنامهنویسی میتواند در استفاده از منابع آموزشی متنوع مفید باشد.
خیر. میتوانید از نسخه آنلاین در مرورگر استفاده کنید. نسخه آفلاین نیز برای کار بدون اتصال دائمی به اینترنت در دسترس است.
بله، برای بسیاری از پروژههای مقدماتی به رایانه قدرتمند نیاز ندارید. بهتر است مرورگر بهروز و دستگاهی داشته باشید که محیط ویرایش و اجرای پروژه را بهخوبی نمایش دهد.
بله. دانشآموزان این پایه میتوانند با ساخت انیمیشن و بازیهای ساده شروع کنند و بهتدریج مفاهیمی مانند شرطها، حلقهها و متغیرها را یاد بگیرند.
مدت یادگیری به میزان تمرین، پیچیدگی پروژه و تجربه قبلی بستگی دارد. آشنایی با چند دستور ابتدایی ممکن است سریع اتفاق بیفتد، اما ساخت پروژههای پیچیدهتر به تمرین بیشتری نیاز دارد.
بله. امکان ساخت بازیهای ماز، جمعآوری سکه، پرسشوپاسخ، دونده و بازیهای چندمرحلهای وجود دارد. پیچیدگی بازی به طراحی و ترکیب دستورها بستگی دارد.
بله. با ترکیب حرکت، تغییر لباس، رویدادها، صدا و تغییر پسزمینه میتوان انیمیشنهای ساده یا داستانهای تعاملی ساخت.
خیر. برای پروژههای ابتدایی، آشنایی با شمارش، چهار عمل اصلی و مفهوم مختصات معمولاً کافی است. پروژههای پیچیدهتر ممکن است به مفاهیم ریاضی بیشتری نیاز داشته باشند.
متغیر برای نگهداری اطلاعاتی مانند امتیاز، زمان، تعداد جانها یا شماره مرحله استفاده میشود. مقدار آن در طول اجرای برنامه میتواند تغییر کند.
حلقه برای تکرار دستورها استفاده میشود، اما شرط مشخص میکند دستورات در چه وضعیتی اجرا شوند. این دو مفهوم را میتوان برای ساخت رفتارهای پیچیدهتر با یکدیگر ترکیب کرد.
بله. هر شخصیت میتواند اسکریپتهای مخصوص خود را داشته باشد. با استفاده از رویدادها و پیامها میتوان رفتار شخصیتها را هماهنگ کرد.
کلونها نسخههایی از یک شخصیت هستند که هنگام اجرای برنامه ایجاد میشوند. از آنها میتوان برای ساخت سکهها، موانع یا اشیای متعدد استفاده کرد.
یک متغیر برای امتیاز بسازید، در آغاز بازی مقدار آن را صفر قرار دهید و هنگام رخ دادن رویداد موردنظر، مقدار متغیر را افزایش دهید. برای مثال، هنگام جمعآوری سکه میتوانید یک امتیاز به بازیکن اضافه کنید.
با ورود به حساب کاربری میتوانید پروژه را در فضای آنلاین خود ذخیره کنید. همچنین در ویرایشگر امکان ذخیره محلی پروژه وجود دارد. بهتر است روش ذخیره مناسب را پیش از بستن صفحه بررسی کنید.
میتوانید پروژه را در حساب کاربری اسکرچ منتشر کنید و پیوند آن را برای دیگران بفرستید. پیش از انتشار، بهتر است پروژه را آزمایش کنید و توضیحات لازم برای اجرای آن را بنویسید.
پایتون میتواند انتخاب مناسبی برای آشنایی با برنامهنویسی متنی باشد. انتخاب مسیر بعدی به علاقه فرد به بازیسازی، توسعه نرمافزار، رباتیک یا موضوعات دیگر بستگی دارد.
اسکرچ میتواند مفاهیم پایهای مانند الگوریتم، شرط، تکرار و منطق را آموزش دهد؛ این مفاهیم در یادگیری رباتیک و هوش مصنوعی نیز کاربرد دارند. البته برای ساخت پروژههای پیشرفته در این حوزهها، آموزشهای تکمیلی لازم است.
این دوره بر ساخت بازی Magic Runner تمرکز دارد. برای مشاهده جزئیات دقیق سرفصلها، مراحل آموزشی و خروجی دوره، به صفحه رسمی Magic Runner
مراجعه کنید.
برای کار با محیط اسکرچ، معمولاً رایانه یا لپتاپ و دسترسی به نسخه آنلاین یا آفلاین آن کافی است. نیاز به تجهیزات اضافی به فعالیتهای مشخصشده در دوره بستگی دارد.
مهارتهای کسبشده به محتوای دوره و میزان تمرین بستگی دارد. با انجام عملی پروژه میتوان درک بهتری از ساختار بازی، ترتیب دستورات و حل مشکلات برنامه به دست آورد. برای تسلط بیشتر نیز لازم است پروژههای مستقل دیگری بسازید.
همین امروز ثبتنام کنید و به جمعِ هزاران دانشآموزِ موفقِ ما بپیوندید
تیم نخبهشو به پرسشها پاسخ میدهد. پاسخها پس از بازبینی منتشر میشوند.
برای ثبت نظر یا پرسش، وارد حساب کاربریتان شوید.
ورود / ثبتنامسلام روزتون بخیر آموزشها برای بچهها ساده توضیح داده شده یا نیاز به کمک بزرگتر داره؟
سلام وقت بخیر آموزش ها در دوره های نخبه شو کاملا ساده و مفهومی هستند.
شمارهتان را بگذارید؛ کارشناس نخبهشو تماس میگیرد و بر اساس سن و علاقهٔ فرزندتان راهنمایی میکند. بدون هزینه و بدون تعهد.
کاربر گرامی، ارسالِ پیامکِ کد بهخاطرِ روشنبودنِ VPN (فیلترشکن) ممکن نشد. سرورهای پیامکِ ما داخلِ ایران هستند و با VPNِ روشن، پیامک به دستتان نمیرسد.