در توضیح اسکرچ چیست (Scratch) باید آن را یک زبان برنامهنویسی بصری و رایگان معرفی کرد که به شما اجازه میدهد بهجای نوشتن کدهای متنی پیچیده، با کشیدن و رها کردن (Drag and Drop) بلاکهای گرافیکی برنامهسازی کنید. این محیط که توسط آزمایشگاه رسانه MIT توسعه یافته، بهطور خاص برای آموزش مفاهیم اساسی برنامهنویسی به کودکان و نوجوانان (و البته مبتدیان در هر سنی) طراحی شده است.
هدف اصلی اسکرچ، تبدیل فرایند کدنویسی به تجربهای شبیه به بازی و ساخت لگو در کودکان و نوجوانان است. کاربران میتوانند با اتصال این بلاکهای رنگی، بهراحتی بازیها، انیمیشنها و داستانهای تعاملی خود را بسازند و همزمان تفکر محاسباتی (Computational Thinking)، استدلال منطقی و مهارت حل مسئله را در خود پرورش دهند.
در این مقاله به بررسی کامل برنامه نویسی اسکرچ میپردازیم؛ از نحوه کارکرد و اجزای محیط آن تا راهنمای کامل نصب اسکرچ روی سیستمهای مختلف و شروع ساخت اولین پروژه.
فهرست مطالب
اسکرچ (Scratch) چگونه کار میکند؟

اسکرچ پیچیدگیهای زبانهای برنامهنویسی سنتی (مانند حفظ کردن دستورات و رعایت دقیق سینتکس) را حذف میکند. اساس کار این زبان بر دو مفهوم کلیدی استوار است: برنامهنویسی بلاکی و محیط بصری مبتنی بر کشیدن و رها کردن.
مفهوم برنامهنویسی بلاکی
برنامهنویسی بلاکی (Block-based Programming) رویکردی است که در آن دستورات برنامهنویسی بهجای کلمات و متن، در قالب بلاکهای گرافیکی (شبیه به قطعات پازل یا لگو) ارائه میشوند. هر بلاک نماینده یک دستور خاص است (مثلاً «حرکت کن»، «صدا پخش کن» یا «اگر این شرط برقرار بود…»).
اما روش کد نویسی اسکرچ چیست؟ کاربر هنگام کدنویسی این بلاکها را از یک «پالت» برداشته و در محیط اسکریپتنویسی بههم متصل میکند. شکل ظاهری بلاکها طوری طراحیشده که فقط بلاکهای منطبق (ازنظر منطقی و دستوری) به یکدیگر متصل میشوند. این ویژگی بروز خطاهای رایج سینتکسی (Syntax Errors) را که بزرگترین مانع برای مبتدیان است، عملاً غیرممکن میکند.
درگ اند دراپ (Drag and Drop) بهجای کدنویسی متنی
محیط اسکرچ کاملاً مبتنی بر «کشیدن و رها کردن» (Drag and Drop) است. شما برای نوشتن یک برنامه، نیازی به تایپ کردن ندارید؛ کافی است بلاک موردنظر خود را از لیست بلاکها پیدا کنید، آن را با ماوس بکشید و درجای مناسب در زنجیره کد خود رها کنید. این فرایند بصری درک روند (Flow) اجرای برنامه را بسیار آسانتر میکند؛ زیرا کاربر میتواند بهوضوح ببیند که کدام دستورات به چه ترتیبی و در چه زمانی اجرا خواهند شد.
اجزای اصلی محیط اسکرچ

برای شروع کار، باید با ۴ بخش اصلی محیط اسکرچ آشنا شوید. درک این اجزا به شما کمک میکند تا بهتر بفهمید که برنامه اسکرچ چیست و بتوانید بهسرعت اولین برنامه خود را بسازید.
۱- استیج (Stage)؛ صحنه اجرا
استیج یا صحنه، خروجی نهایی برنامه شماست و جایی است که انیمیشن شما پخش میشود یا بازی به اجرا درمیآید و شخصیتها (اسپرایتها) با هم تعامل میکنند. استیج نتیجه بصری کدهایی است که شما نوشتهاید و معمولاً در گوشه بالا سمت راست یا چپ رابط کاربری قرار دارد.
۲- اسپرایت (Sprite)؛ شخصیتها و اشیاء
اسپرایت (Sprite) به هر شخصیت، کاراکتر یا شیء قابل برنامهریزی در اسکرچ گفته میشود. آنها بازیگران شما در صحنه (Stage) هستند. اسپرایت پیشفرض اسکرچ، گربه معروف آن است، اما شما میتوانید اسپرایتهای بیشماری از کتابخانه اسکرچ انتخاب کنید، خودتان آنها را نقاشی کنید یا حتی تصاویر دلخواه خود را وارد برنامه کنید. تمام کدهایی که مینویسید، برای کنترل رفتار یک اسپرایت خاص بهکار میرود.
۳- پالت بلاکها
تمام دستورات برنامهنویسی اسکرچ در پالت بلاکها (Block Palette) و در دستهبندیهای رنگی مختلف (مانند حرکت، ظاهر، صدا، رویدادها، کنترل و…) سازماندهی شدهاند. شما بلاکهای مورد نیاز خود را از این پالت انتخاب کرده و به محیط اسکریپتنویسی میکشید.
۴- محیط اسکریپتنویسی (Scripting Area)
محیط اسکریپتنویسی (که به آن Code Area هم گفته میشود)، میز کار اصلی شماست. این فضای خالی بزرگ در مرکز صفحه، جایی است که شما بلاکها را از پالت به آنجا میکشید و آنها را به هم متصل میکنید تا اسکریپت یا سناریوی نهایی خود را برای اسپرایت انتخابشده بسازید. هر اسپرایت میتواند چندین اسکریپت مستقل در این محیط داشته باشد.
معرفی انواع اسکرچ و نسخه مناسب

در ادامه Scratch چیست باید اشاره کنیم که اسکرچ یک نسخه واحد ندارد. بسته به سن کاربر و پلتفرم مورداستفاده میتوانید از نسخههای متفاوتی استفاده کنید. شناخت این نسخهها به شما کمک میکند تا نقطه شروع مناسبی را انتخاب کنید.
اسکرچ جونیور (ScratchJr)
اسکرچ جونیور (ScratchJr) یک زبان برنامهنویسی بصری مقدماتیتر است که بهطور خاص برای کودکان خردسال (سنین ۵ تا ۷ سال) طراحی شده است. هدف برنامه اسکرچ جونیور چیست؟ این برنامه به کودکانی که هنوز توانایی خواندن و نوشتن کامل را ندارند اجازه میدهد تا با استفاده از بلاکهای گرافیکی مبتنی بر آیکون، داستانها و بازیهای تعاملی ساده بسازند.
ScratchJr در واقع دروازه ورود به دنیای کدنویسی قبلاز رسیدن به نسخه اصلی اسکرچ است و بر روی تبلتها (اندروید و iOS) اجرا میشود.
تفاوت اسکرچ و اسکرچ جونیور (رده سنی و قابلیتها)
تفاوت اصلی این دو نسخه در مخاطب هدف و پیچیدگی قابلیتهای آنهاست. اسکرچ جونیور نقطه شروع عالی برای خردسالان است، اما اسکرچ (نسخه ۳) برای کودکان بزرگتر و نوجوانان طراحیشده است.
| ویژگی | اسکرچ جونیور | اسکرچ (Scratch 3) |
|---|---|---|
| رده سنی هدف | ۵ تا ۷ سال | ۸ تا ۱۶ سال (و بالاتر) |
| پلتفرم | تبلت و موبایل | دسکتاپ و وب |
| رابط کاربری | مبتنی بر آیکون، بسیار ساده (مناسب عدم توانایی خواندن) | مبتنی بر متن و بلاک، پیشرفتهتر |
| قابلیتها | محدودتر، تمرکز بر داستانگویی و انیمیشن ساده | کامل، امکان ساخت بازیهای پیچیده، متغیرها، لیستها و افزونهها |
| هدف | آشنایی با مفاهیم اولیه منطق و توالی | یادگیری کامل مفاهیم برنامهنویسی (حلقه، شرط، متغیر) |
اسکرچ آنلاین (Web) در مقایسه با دسکتاپ (Offline Editor)
برنامه نویسی اسکرچ (نسخه اصلی یا Scratch 3) به دو شکل اصلی قابل دسترس است:
- اسکرچ آنلاین (Web Editor): این نسخه مستقیماً ازطریق مرورگر وب شما (در سایت رسمی MIT) اجرا میشود. مزیت اصلی آن عدمنیاز به نصب اسکرچ، دسترسی همیشگی به آخرین بهروزرسانیها و امکان ذخیرهسازی و اشتراکگذاری مستقیم پروژهها در جامعه آنلاین اسکرچ است. تنها پیشنیاز آن یک اتصال اینترنت پایدار است.
- اسکرچ دسکتاپ (Offline Editor): این نسخهای است که شما آن را دانلود و روی کامپیوتر خود (ویندوز، مک یا لینوکس) نصب میکنید. مزیت کلیدی آن، امکان کار کردن بدون نیاز به اینترنت است. این نسخه برای کلاسهای درس یا مکانهایی که دسترسی به اینترنت محدود است ایدئال محسوب میشود. (در بخشهای بعدی، آموزش نصب Scratch دسکتاپ را بررسی خواهیم کرد).
مزایا و کاربردهای اسکرچ

اسکرچ چیست و چه کاربردی دارد؟ این زبان، دروازهای برای ورود به دنیای فناوری و تقویت مهارتهای ذهنی بنیادی است. یادگیری اسکرچ فراتر از سرگرمی و ساخت چند بازی ساده است و بهمعنای سرمایهگذاری روی مهارتهای کلیدی قرن ۲۱ محسوب میشود.
کاربردهای اسکرچ
با اسکرچ تقریباً هر ایده بصری سادهای قابل پیادهسازی است. سه کاربرد اصلی آن عبارتند از:
۱- ساخت بازیهای ساده
یکی از محبوبترین کاربردهای برنامه نویسی اسکرچ، ساخت بازی است. بازیهای پلتفرمر ساده (مانند ماریو)، بازیهای کلیکی، پازلها و شبیهسازیهای آموزشی، همگی با استفاده از بلاکهای منطقی و کنترلی اسکرچ قابل پیادهسازی هستند.
۲- ساخت انیمیشن و داستانهای تعاملی
اسکرچ ابزارهای قدرتمندی برای کنترل ظاهر (Costumes)، حرکت و گفتگوی اسپرایتها دارد. این امکان به کاربران اجازه میدهد انیمیشنهای کوتاه، موزیک ویدئو یا داستانهای تعاملی (Interactive Stories) بسازند که در آن کاربر میتواند با کلیک کردن یا تایپ کردن، مسیر داستان را تغییر دهد.
۳- پروژههای هنری و موسیقی
با استفاده از افزونههای Pen (قلم) و Music (موسیقی)، اسکرچ تبدیل به یک بوم نقاشی و استودیوی موسیقی ساده میشود. کاربران میتوانند الگوهای هندسی پیچیده ترسیم کنند (هنر محاسباتی) یا قطعات موسیقی را با نتهای مختلف کدنویسی کنند.
مزایای یادگیری اسکرچ برای کودکان و نوجوانان
ارزش واقعی اسکرچ در محصول نهایی (بازی یا انیمیشن) نیست، بلکه در فرایند ساختن آن است.
۱- تقویت تفکر محاسباتی
اگر بپرسند که مهمترین دستاورد برنامه نویسی اسکرچ چیست؟ قطعاً خواهیم گفت تقویت تفکر محاسباتی، یعنی توانایی تجزیه یک مسئله پیچیده به بخشهای کوچکتر و قابلمدیریت، شناسایی الگوها و طراحی یک راهحل گامبهگام (الگوریتم) برای آن است. زبان برنامه نویسی اسکرچ، کودکان را وادار میکند تا دقیقاً به این شیوه فکر کنند تا بتوانند اسپرایت خود را به حرکت درآورند و این مهارتی است که در تمام شئون زندگی و تحصیلی کاربرد دارد.
۲- افزایش خلاقیت و مهارت حل مسئله
اسکرچ یک محیط جعبه شنی (Sandbox) است که هیچ پاسخ درست واحدی در آن وجود ندارد. وقتی بازی یک کودک کار نمیکند، او باید برگردد، کدها (بلاکها) را بررسی کند، خطا را پیدا کند (Debugging) و راهحل متفاوتی را امتحان کند. این فرایند تکرارشونده، خلاقیت در پیادهسازی ایدهها و تابآوری در برابر چالشها (مهارت حل مسئله) را بهشدت تقویت میکند.
۳- مقدمهای برای زبانهای برنامهنویسی پیشرفته (مانند پایتون)
در توضیح زبان برنامه نویسی اسکرچ چیست باید اضافه کنیم که این زبان یک پل آموزشی است. مفاهیمی مانند حلقهها (Loops)، دستورات شرطی (Conditionals) و متغیرها (Variables) که در اسکرچ بهصورت بصری آموزش داده میشوند، دقیقاً همان مفاهیم بنیادی در زبانهای پیشرفتهای مانند پایتون، جاوا اسکریپت یا C++ هستند. فردی که با اسکرچ کار کرده، درک بسیار عمیقتری از منطق این زبانها خواهد داشت و انتقال او به برنامهنویسی متنی بسیار سادهتر رخ میدهد.
اسکرچ در مقایسه با پایتون
این دو را نمیتوان باهم مقایسه کرد؛ چون اسکرچ در مقابل پایتون قرار نمیگیرد بلکه مقدمه آن است. در جدول زیر به تفاوتهای آنها اشاره کردهایم.
| ویژگی | اسکرچ (Scratch) | پایتون |
|---|---|---|
| نوع | بصری (Visual) – مبتنی بر بلاک | متنی (Text-based) – مبتنی بر سینتکس |
| هدف اصلی | آموزش منطق برنامهنویسی و تفکر محاسباتی | توسعه نرمافزار واقعی (وب، AI، علم داده) |
| سد ورودی (پیشنیاز) | بسیار پایین (تقریباً صفر) | متوسط (نیاز به یادگیری سینتکس) |
| مدیریت خطا | خطا (Syntax Error) غیرممکن است | مدیریت خطا (Debugging) بخش اصلی یادگیری است |
آموزش نصب اسکرچ
اگرچه نسخه آنلاین اسکرچ بسیار کارآمد است، بسیاری از کاربران (بهخصوص برای استفاده در مراکز آموزشی یا خانگی بدون اینترنت دائم) نسخه دسکتاپ (Offline Editor) را ترجیح میدهند. نصب Scratch فرایند سادهای دارد.
پیشنیازهای سیستمی برای نصب
قبل از دانلود، مطمئن شوید سیستم شما حداقل پیشنیازها را دارد. براساس اطلاعات صفحه رسمی دانلود اسکرچ، نسخه فعلی (Scratch 3) روی سیستمعاملهای زیر قابل اجرا است:
- ویندوز (Windows): ویندوز ۱۰ و نسخههای جدیدتر
- مک (macOS): macOS 10.13 و نسخههای جدیدتر
- کروم (ChromeOS): تقریباً روی تمام کرومبوکها قابلاجرا است.
- اندروید (Android): اندروید ۶.۰ یا جدیدتر
استفاده از نسخه آنلاین اسکرچ (بدون نیاز به نصب)
سریعترین راه برای استفاده از برنامه نویسی اسکرچ، مراجعه به وبسایت رسمی آن و کلیک روی گزینه ” Start Creating” (ساختن) است. این کار شما را مستقیماً به ویرایشگر آنلاین (Web Editor) منتقل میکند و نیازی به هیچگونه دانلود یا نصب اسکرچ ندارید.
نصب اسکرچ روی ویندوز (Windows 10/11)
نحوه نصب اسکرچ روی ویندوز بسیار ساده است:
- به صفحه رسمی دانلود اسکرچ به آدرس scratch.mit.edu/download مراجعه کنید.
- در بخش ویندوز، روی لینک “Direct download” کلیک کنید تا فایل Scratch 3.xx.x Setup.exe دانلود شود.
- فایل دانلود شده را اجرا کنید و مراحل نصب را مانند هر نرمافزار دیگری در ویندوز دنبال کنید.

نصب اسکرچ روی مک (macOS)
نحوه نصب اسکرچ در مک نیز مشابه ویندوز است:
- به صفحه scratch.mit.edu/download بروید.
- در بخش macOS، روی “Direct download” کلیک کنید تا فایل Scratch 3.xx.x.dmg دانلود شود.
- پساز دانلود، فایل .dmg را باز کنید و آیکون Scratch 3 را به پوشه Applications بکشید (Drag and Drop کنید).

نصب اسکرچ روی موبایل و تبلت (اندروید و iOS)
برای استفاده از اسکرچ روی دستگاههای همراه، بهترین گزینه استفاده از اپلیکیشن اختصاصی آن است:
- اندروید (Android): در همان صفحه دانلود سایت، وارد قسمت اندروید شوید و روی بنر گوگلپلی کلیک کنید تا به صفحه دانلود هدایت شوید. مزیت این روش نسبت به جستجوی مستقیم در گوگلپلی این است که نرمافزار اشتباهی را دانلود نمیکنید.
- iOS (آیپد): در صفحه دانلود وارد بخش macos شوید و مثل بخش اندروید میتوانید از اپاستور یا دانلود مستقیم، نرمافزار را دریافت کنید.

شروع به کار با اسکرچ (اولین پروژه)
پساز نصب یا باز کردن نسخه آنلاین، آماده ساخت اولین پروژه خود هستید. زبان برنامه نویسی Scratch چیست؟ همانطور که گفتیم، در عمل بهمعنای کنار هم چیدن بلاکهای منطقی است.
ساخت حساب کاربری و ذخیرهسازی پروژه
اگر از نسخه آنلاین استفاده میکنید، بهشدت توصیه میشود یک حساب کاربری رایگان بسازید. این کار به شما اجازه میدهد پروژههای خود را آنلاین ذخیره کنید، آنها را با دیگران به اشتراک بگذارید و از پروژههای سایر اعضای جامعه اسکرچ ایده بگیرید.
آشنایی با رابط کاربری (UI)

همانطورکه در بخش «اجزای اصلی محیط اسکرچ» اشاره شد، رابط کاربری از چند بخش کلیدی تشکیل شده است:
- استیج (Stage): جایی که پروژه اجرا میشود.
- لیست اسپرایتها (Sprite List): مدیریت شخصیتهای پروژه
- پالت بلاکها (Block Palette): دستهبندی تمام دستورات (حرکت، ظاهر، صدا و…)
- محیط اسکریپتنویسی (Scripting Area): جایی که بلاکها را میچینید.
مفاهیم اصلی برنامهنویسی در اسکرچ

برای ساخت اولین پروژه (مثلاً حرکت دادن گربه)، باید با ۴ مفهوم کلیدی آشنا شوید:
۱- رویدادها (Events) – (مثال: وقتی پرچم سبز کلیک شد)
برنامههای اسکرچ «رویداد-محور» (Event-driven) هستند. یعنی برنامه منتظر میماند تا اتفاقی رخ دهد و سپس کد مربوط به آن را اجرا میکند. بلاکهای «رویداد» (زرد رنگ) همیشه نقطه شروع اسکریپت شما هستند.
- مثال: بلاک When Green Flag Clicked (وقتی پرچم سبز کلیک شد)، محبوبترین بلاک برای شروع اجرای کل پروژه است.

۲- حلقهها (Loops) – (مثال: تکرار)
«حلقهها» (از دسته کنترل – نارنجی رنگ قسمت control) به شما اجازه میدهند یک یا چند دستور را به تعداد مشخصی (یا تا ابد) تکرار کنید. بهجای اینکه ۱۰ بار بلاک «۱۰ قدم حرکت کن» را بگذارید، آن را داخل یک حلقه «۱۰ بار تکرار کن» قرار میدهید یا شرطی را مشخص میکنید.
- مثال: بلاک Forever (همیشه) یا Repeat 10 (۱۰ بار تکرار کن).

۳- شرطها (Conditionals) – (مثال: اگر… آنگاه)
شرطها (از دسته کنترل) به اسپرایت شما قدرت تصمیمگیری میدهند. این بلاکها یک وضعیت را بررسی میکنند و «اگر» آن وضعیت درست بود، کدهای داخل بلاک را اجرا میکنند.
- مثال: بلاک If… then (اگر… آنگاه). مثلاً: «اگر به لبه خوردی، برگرد».

۳- متغیرها (Variables)
«متغیرها» (Variables – نارنجی تیره) مانند جعبههایی برای نگهداری اطلاعات در حافظه برنامه هستند. شما میتوانید از آنها برای ذخیره امتیاز (Score) در یک بازی، شمارش تعداد پرشها یا نگهداری نام کاربر استفاده کنید.

مسیر یادگیری اسکرچ و منابع آموزشی
مسیر یادگیری اسکرچ (Scratch) یک مسیر خطی و آکادمیک نیست؛ بلکه یک فرایند اکتشافی مبتنی بر ساخت و تجربه است. بااینحال، دانستن اینکه از کجا شروع کنید و از چه منابعی استفاده کنید اهمیت زیادی دارد.
اسکرچ برای چه رده سنی مناسب است؟
- اسکرچ جونیور (ScratchJr): برای کودکان ۵ تا ۷ سال طراحی شده است (همانطور که در بخش انواع اسکرچ گفتیم).
- اسکرچ (Scratch 3): بهطور رسمی برای رده سنی ۸ تا ۱۶ سال توصیه میشود.
اما این به معنای محدودیت نیست. اسکرچ بهدلیل رویکرد بصری و سادهسازی مفاهیم پیچیده، یکی از بهترین ابزارها برای «هر فرد مبتدی» در هر سنی است که میخواهد اصول تفکر محاسباتی و منطق برنامهنویسی را بدون درگیر شدن با سینتکسهای پیچیده درک کند.
جامعه آنلاین اسکرچ و اشتراکگذاری پروژهها
قدرت واقعی اسکرچ، فراتر از نرمافزار آن و در جامعه آنلاین (Online Community) آن هم هست. برنامه نویسی اسکرچ ذاتاً یک فعالیت اجتماعی است. کاربران میتوانند:
- پروژههای خود را با میلیونها کاربر دیگر به اشتراک بگذارند.
- پروژههای دیگران را ببینند، اجرا کنند و از آنها ایده بگیرند.
- از قابلیت “Remix” استفاده کنند؛ یعنی یک کپی از پروژه فرد دیگری بسازند، آن را تغییر دهند (و بهبود ببخشند) و با ذکر منبع، مجدداً منتشر کنند. این فرایند، هسته اصلی یادگیری مشارکتی در اسکرچ است.
منابع آموزشی اسکرچ (فارسی و انگلیسی)
برای شروع یادگیری، منابع ساختاریافته زیادی وجود دارد:
- منابع انگلیسی:
وبسایت رسمی اسکرچ (scratch.mit.edu): بخش “Ideas” (ایدهها) و “Tutorials” (آموزشها) در داخل خود ویرایشگر اسکرچ، بهترین نقطه شروع برای ساخت پروژههای اولیه است.
ScratchEd (scratched.gse.harvard.edu): این منبع که توسط دانشگاه هاروارد مدیریت میشود، یک جامعه آنلاین گسترده برای مربیان و والدینی است که میخواهند زبان برنامه نویسی اسکرچ را آموزش دهند. این سایت پر از ایدههای درسی، استراتژیهای آموزشی و نمونه پروژههای الهامبخش است.
- منابع فارسی:
خوشبختانه منابع آموزشی اسکرچ به زبان فارسی نیز در سالهای اخیر رشد خوبی داشتهاند. وبسایتهای آموزشی متعددی در ایران، دورههای ویدیویی و مقالات آموزشی رایگان و پولی برای یادگیری اسکرچ (از مقدماتی تا پیشرفته) ارائه میدهند. مانند فرادرس، تاپ لرن و کدیاد
محدودیتهای اسکرچ چیست؟

اسکرچ یک ابزار آموزشی فوقالعاده است، اما یک ابزار همهکاره نیست. شناخت محدودیتهای آن به همان اندازه شناخت مزایایش اهمیت دارد. همانطور که در اسکرچ چیست؟ گفتیم باید یادآوری کنیم که باید آن را یک محیط یادگیری کنترلشده درنظر گرفت نه یک پلتفرم توسعه نرمافزار حرفهای.
محدودیتهای اسکرچ در پروژههای بزرگ
برنامه اسکرچ برای مدیریت پروژههای بسیار پیچیده یا بزرگ طراحی نشده است:
- محدودیت عملکرد (Performance): اسکرچ یک زبان مفسری (Interpreted) و بصری است. اگر پروژهای با صدها اسپرایت، هزاران بلاک کد و محاسبات همزمان سنگین (مانند فیزیک پیچیده در بازی) بسازید، با افت فریم شدید و «لگ» (Lag) مواجه خواهید شد.
- مدیریت کد: در برنامهنویسی واقعی از مفاهیمی مانند توابع پیچیده، کلاسها (OOP) و ماژولها برای سازماندهی کدهای طولانی استفاده میشود. مدیریت یک پروژه با ۵۰۰۰ بلاک در اسکرچ، بسیار سختتر از مدیریت ۵۰۰۰ خط کد پایتون سازماندهیشده است.
- خروجی نهایی: شما نمیتوانید با اسکرچ یک فایل exe برای ویندوز، یا یک اپلیکیشن قابل انتشار در اپ استور بسازید. پروژهها محدود به اجرا در محیط اسکرچ (آنلاین یا دسکتاپ) هستند.
مدیریت پروژههای سنگین
همانطور که دیدیم، اسکرچ در پروژههای پیچیده با محدودیت عملکردی مواجه میشود. وقتی یک شبیهسازی فیزیک ساده یا یک بازی با چند ده اسپرایت، کامپیوتر شما را به چالش میکشد، این یک درس مهم است: ایدههای محاسباتی سنگین به قدرت پردازشی واقعی نیاز دارند.
برنامه نویسی اسکرچ به شما «منطق» محاسبات را میآموزد. اما وقتی از این محیط آموزشی فراتر میروید و با زبانهایی مانند پایتون، وارد دنیای واقعی شبیهسازیهای علمی، تحلیل دادههای حجیم (Big Data) یا آموزش مدلهای هوش مصنوعی میشوید، میبینید که پرداختن به بسیاری از آنها در زیرساختهایی مانند اسکرچ یا رایانه شخصی ممکن نیست.
مرحله پیشرفتهتر از یادگیری اسکرچ
اسکرچ به شما و فرزندتان منطق ساختن و جرئت ایدهپردازی را میآموزد. شما یاد میگیرید که چطور یک سیستم را (هرچند ساده) طراحی کنید. اما سقف اسکرچ کوتاه است.
ایدههای بزرگی که در ذهن شما یا دانشآموزتان شکل میگیرد -مانند اجرای یک شبیهسازی فیزیک واقعی، آموزش یک مدل هوش مصنوعی ساده با پایتون یا تحلیل دادههای کلان- در محیط اسکرچ یا حتی روی یک کامپیوتر شخصی معمولی، قابلاجرا نیستند. در چنین سطوحی به چیزی فراتر از بلاکهای رنگی نیاز داریم و آن قدرت پردازشی عظیم، سریع و بدون وقفه است.
سرورهای محاسبات سنگین (HPC) ابر فردوسی ابزاری هستند که برای پر کردن این شکافهای سختافزاری طراحی و پیادهسازی شدهاند. شما برای برداشتن گام بعدی خود پساز اسکرچ و پایتون مقدماتی و اجرای پروژههای سنگین واقعی به آن نیاز خواهید داشت.
اگر میخواهید با این تکنولوژی و منافعی که برای شما خواهد داشت بیشتر آشنا شوید، خواندن مقاله زیر را ازدست ندهید.
چرا سرور HPC ابر فردوسی؟
- بهجای صرف هزینههای سنگین برای خرید سختافزارهایی که بهسرعت قدیمی میشوند، فقط هزینه دقیق منابعی که استفاده میکنید را پرداخت کنید.
- شما میتوانید براساس میزان ساعاتی که از سیستم استفاده میکنید هزینه پرداخت کنید (Pay-as-you-go).
- محاسبات سنگین و پروژههای پایتون که اجرای آنها روی لپتاپ شما ساعتها یا روزها طول میکشد را در چند دقیقه اجرا کنید.
- هر زمان که نیاز به منابع بیشتر یا کمتری داشتید (مثلا رَم یا cpu و یا گرافیک) به آسانی و فقط با چند کلیک منابع خود را تغییر بدهید.
اول تست کنید، بعد تصمیم بگیرید
ما میدانیم که ورود به محاسبات سنگین ابری میتواند چالشبرانگیز بهنظر برسد. به همین دلیل، برای اینکه این انتقال را بدون هیچ ریسکی تجربه کنید، میتوانید همین حالا ثبتنام کرده و اولین پروژه سنگین خود را با ۱۰۰ هزارتومان اعتبار رایگان ابر فردوسی تست کنید.

جمعبندی
در این مقاله دیدید که پاسخ ما به اسکرچ چیست؟ فراتر از یک زبان برنامهنویسی بصری بود. اسکرچ در واقع ابزاری برای آمادهسازی و پرورش ذهن است؛ محیطی که به شما (یا فرزندتان) اجازه میدهد منطق، حل مسئله و تفکر محاسباتی را بدون ترس از خطاهای سینتکسی پیچیده، تجربه و درونی کنید. از نصب اسکرچ تا ساخت اولین انیمیشن، تمام این فرایند تمرینی برای تجزیه یک ایده بزرگ به گامهای کوچک و اجرایی است. مهم نیست که اولین پروژه شما چقدر ساده باشد؛ مهم این است که شما فرایند خلق کردن را آموختهاید. این همان مهارتی است که هنگام مهاجرت به ابزارهای پیچیدهتری مانند پایتون یا زیرساختهای پردازشی سنگین به کار شما خواهد آمد.
حالا شما بگویید: اولین ایدهای که میخواهید با اسکرچ پیادهسازی کنید چیست؟
سؤالات متداول
برنامه نویسی اسکرچ چیست؟
برنامه نویسی اسکرچ (Scratch) روشی برای ساخت بازی و انیمیشن با استفاده از بلاکهای گرافیکی (مانند پازل) بهجای نوشتن کدهای متنی است. این روش برای آموزش منطق برنامهنویسی به مبتدیان، بهخصوص کودکان و نوجوانان، طراحی شده است.
آیا اسکرچ رایگان است؟
بله، اسکرچ (Scratch) و اسکرچ جونیور (ScratchJr) هر دو کاملاً رایگان هستند. این پروژهها توسط آزمایشگاه رسانه MIT پشتیبانی میشوند و هیچ هزینه اشتراک یا خرید درونبرنامهای ندارند.
آیا میتوان بدون اینترنت از اسکرچ استفاده کرد؟
بله. با نصب اسکرچ (نسخه Offline Editor) روی ویندوز، مک یا اندروید، میتوانید بهطور کامل و بدون نیاز به اتصال اینترنت از تمام امکانات آن استفاده کنید. نسخه آنلاین (Web Editor) به اینترنت نیاز دارد.
نصب Scratch چطور انجام میشود؟
آموزش نصب اسکرچ ساده است. کافی است به وبسایت رسمی scratch.mit.edu/download مراجعه کنید، نسخه متناسب با سیستمعامل خود (ویندوز، مک، اندروید) را دانلود و فایل دانلود شده را اجرا کنید.
اسکرچ برای چه سنی مناسب است؟
نسخه اصلی اسکرچ (Scratch 3) بهطور رسمی برای رده سنی ۸ تا ۱۶ سال توصیه میشود. نسخه سادهتر آن، اسکرچ جونیور، برای کودکان ۵ تا ۷ ساله مناسب است.
اسکرچ جونیور (ScratchJr) چیست؟
اسکرچ جونیور چیست؟ یک نسخه سادهتر و مقدماتیتر از اسکرچ است که برای کودکان خردسال (۵ تا ۷ سال) طراحی شده و به آنها اجازه میدهد با بلاکهای مبتنی بر آیکون (بدون نیاز به خواندن متن) انیمیشن بسازند.
منظور از اسکرچ پایتون چیست؟
عبارت اسکرچ پایتون معمولاً به دو مفهوم اشاره دارد: ۱) به مسیر یادگیری که در آن فرد پساز تسلط بر منطق در اسکرچ به یادگیری زبان متنی پایتون مهاجرت میکند (رایجترین مسیر). ۲) به ابزارها یا کتابخانههایی (مانند scratchpy) که امکان اتصال پروژههای اسکرچ به کدهای پایتون یا کنترل سختافزار ازطریق پایتون با الهام از اسکرچ را میدهند، اما این تخصصیتر است.
