برنامه نویسی اسکرچ به کودکان کمک می‌کند تا از طریق Scratch، یک ابزار رایگان برای برنامه نویسی بصری در سطح بلوک، کدنویسی را یاد بگیرند.

کد نویسی اسکرچ به عنوان فرآیند نوشتن و اجرای برنامه‌ها با استفاده از Scratch، یک زبان برنامه نویسی رایگان و ویرایشگر کد تعریف می‌شود که به زبان آموزان جوان کمک می‌کند تا منطق کدنویسی را با استفاده از بلوک‌ها و وسایل کمک بصری درک کنند. این مقاله به تعریف مفهوم کدگذاری اسکرچ و کاربردهای آن در علوم کامپیوتر و برنامه نویسی می‌پردازد.

برنامه نویسی اسکرچ چیست؟

برنامه نویسی اسکرچ

برنامه نویسی اسکرچ، فرآیند نوشتن و اجرای برنامه‌ها با استفاده از اسکرچ است، یک زبان برنامه نویسی رایگان و ویرایشگر کد که به زبان آموزان جوان کمک می‌کند تا منطق کدنویسی را با استفاده از بلوک‌ها و وسایل کمک بصری درک کنند.

Scratch یک پلتفرم برنامه نویسی برای کودکان است که توسط آزمایشگاه رسانه MIT در سال 2007 ایجاد شد. این پلتفرم از آن زمان تاکنون تحت دو بازنگری قرار گرفته است و از زبان برنامه نویسی Squeak از طریق ActionScript  به جدیدترین نسخه جاوا اسکریپت منتقل شده است. Scratch برای ارائه یک پلتفرم کدنویسی بدون هزینه و از نظر بصری جذاب برای کودکان ایجاد شد که همزمان با آموزش اصول برنامه نویسی، محصولی تولید می‌کند.

در ادامه ویژگی‌های اصلی اسکرچ آورده شده است:

  • به کودکان می‌آموزد که چگونه کد را به صورت بصری گویا بنویسند.
  • کدگذاری مبتنی بر بلوک را ارائه می‌دهد و به زبان آموزان اجازه می‌دهد دستورالعمل‌های از پیش نوشته شده را برای ایجاد اقدامات ترتیب دهند.
  • به کاربران کمک می‌کند تا با هم کار کنند، تخیلی فکر کنند و روشمند تحلیل کنند.
  • به آن‌ها اجازه می‌دهد تا انیمیشن‌ها و گرافیک‌هایی ایجاد کنند که پس از تکمیل پروژه قابل اشتراک‌گذاری باشند.
  • به کاربران امکان می‌دهد پروژه‌های تکمیل شده را با استفاده از ابزارهای خارجی به فایل‌های  HTML5، برنامه‌های  Android، Bundle (macOS)  یا EXE تبدیل کنند.
  • دانش‌آموزان را قادر می‌سازد تا انیمیشن، بازی‌های رایانه‌ای و سایر پروژه‌ها را با استفاده از صداها و تصاویر ترکیب کنند.
  • دارای یک جامعه آنلاین است که به کودکان امکان می‌دهد رسانه‌های تعاملی مانند قصه‌ها، پازل‌ها و انیمیشن‌ها را با افراد در سراسر جهان توسعه دهند و تبادل کنند.
  • به معلمان امکان تعیین تکالیف برای دانش آموزان را ارائه می‌دهد که آن را به یک پلتفرم آموزشی عالی تبدیل می‌کند، به خصوص وقتی صحبت از یادگیری از راه دور می‌شود.
  • راهی عالی برای آشنا کردن بچه‌ها با علوم کامپیوتر و برنامه نویسی.
  • قابل دسترسی به 70 زبان در سراسر جهان

تا دسامبر 2022، بیش از 67 میلیون پروژه توسط بیش از 64 میلیون کاربر در Scratch ایجاد شده است. با 38 میلیون کاربر ماهانه، اسکرچ امروزه بسیار محبوب است. با این حال، به توانایی‌های اولیه‌ای در خواندن نیاز دارد و برای کودکان کمتر از هشت سال بی‌فایده است. توسعه دهندگان Scratch به سرعت متوجه این موضوع شدند و ScratchJr را در سال 2014 راه اندازی کردند.


اسکرچ جونیور روش ساده‌تری برای برنامه نویسی در سنین پایین بدون توانایی خواندن یا محاسبه ارائه می‌دهد. اسکرچ جونیور که توسط بیش از ده میلیون نفر در سراسر جهان استفاده می‌شود، برای کودکان 5 تا 7 ساله در نظر گرفته شده است و به صورت رایگان در iOS ،Android و Chromebook در دسترس است.

مبانی کدنویسی

نمونه برنامه اسکرچ

در توضیح ساده، کدنویسی به معنای آموزش یک آیتم برای رفتار است. به همین ترتیب، هرگاه ما به عنوان معلم (کدگذار)، رایانه (اشیاء) را آموزش دهیم، آنها باید اطاعت کنند. با این حال، از آنجایی که ماشین هیچ گفتار طبیعی را درک نمی‌کند، جهت ها باید در قالب کد ارائه شوند. کدنویسی همین است.

به طور کلی دو نوع کدنویسی وجود دارد:

  • کدنویسی مبتنی بر بلوک مثلاً شامل  Scratch، code.org، Thunkable  و غیره.
  • کدنویسی متنی مثلاً شامل  C، جاوا، پایتون و غیره.

حال بیایید کدنویسی مبتنی بر بلوک را درک کنیم.

کد نویسی مبتنی بر بلوک، نسخه اصلی برنامه نویسی کامپیوتری است. و یک روش عالی برای آموزش مبانی برنامه نویسی بدون خطوط کد پیچیده و مبتنی بر متن است.

در این نوع کدنویسی، زبان آموزان از واحدهای گرافیکی برای ساخت انیمیشن و پازل استفاده می‌کنند. با استفاده از یک رابط بصری، برنامه به آنها اجازه می‌دهد دنباله‌ای از بلوک‌ها را بکشند و رها کنند. هر بلوک شامل یک خط کد است. بنابراین، کاربر اساساً یک نرم افزار را بدون کمک متن ایجاد می‌کند. این کار به آنها اجازه می‌دهد تا به سرعت اصول اساسی و منطق برنامه نویسی را درک کنند.

از آنجایی که هر بلوک عملکرد یا دستور جداگانه‌ای را انجام می‌دهد، فقط باید آنها را در یک توالی خاص مرتب کنید تا برنامه تازه ایجاد شده کار کند. استفاده از بلوک‌ها همچنین تشخیص و تصحیح خطاهای برنامه نویسی را تسهیل می‌کند. ماهیت بصری و مشارکتی کدگذاری مبتنی بر بلوک، این فرآیند را ساده‌تر و مؤثرتر می‌کند.

برنامه نویسی اسکرچ چگونه کار می‌کند؟

داشبورد کاربر اسکرچ، ناحیه‌ای از صفحه است که در آن برنامه Scratch نشان داده می‌شود. صفحه نمایش به بخش‌ها یا صفحات زیادی تقسیم می‌شود. هر صفحه هدف مشخصی را دنبال می‌کند، مانند انتخاب بلوک‌هایی برای نوشتن، نوشتن کد و دیدن نتایج کار شما.

رابط کاربری اسکرچ به سه قسمت اصلی تقسیم می‌شود: یک زمینه مرحله بندی، پالت‌های بلوک و یک منطقه کدنویسی. علاوه بر این، کاربران ممکن است بلوک‌های کد سفارشی خود را ایجاد کنند که در «بلوک‌های من» نمایش داده می‌شود. Scratch 3.0 (آخرین نسخه Scratch) از سه عنصر تشکیل شده است:

  • ناحیه صحنه یا stage: صحنه نتایج را نشان می‌دهد – به عنوان مثال، انیمیشن‌ها یا گرافیک‌ها، در مقیاس کوچک یا معمولی، با گزینه تمام صفحه، در حالی که بخش پایین همه sprite thumbnailها را فهرست می‌کند. صحنه از مختصات y و x استفاده می‌کند که 0،0 مرکز صحنه را نشان می‌دهد.(حروف و اشیاء در اسکرچ به عنوان “اسپرایت” شناخته می‌شوند.)
  • پالت‌های بلوک: پالت بلوک حاوی تمام دستورالعمل‌هایی است که ممکن است کشیده شده و در ناحیه کد پروژه رها شوند. هنگامی که یک sprite در نیمه پایینی منطقه مرحله‌بندی انتخاب می‌شود، می‌توان بلوک‌های دستورالعمل را از طریق پالت‌های بلوک به ناحیه کدگذاری بکشاند.
  • ناحیه کد: ناحیه کد ناحیه سمت چپ ویرایشگر پروژه است که کدها در آن جمع می‌شوند. این قسمت برای قرار دادن و مرتب کردن بلوک‌ها به عنوان اسکریپت است که ممکن است با کلیک کردن روی سیگنال سبز رنگ یا ضربه زدن روی خود کد اجرا شوند. کاربر می‌تواند یک کاراکتر sprite را انتخاب کند یا دستورالعمل‌ها را از پالت به ناحیه کدگذاری منتقل کند و به اسپرایت اجازه دهد تا اقدامات مورد نظر را انجام دهد. برای مثال، یک کارتون/انیمیشن گربه ممکن است طوری برنامه ریزی شود که ده قدم به جلو بردارد.
  • تب Costumes: به کاربران این امکان را می‌دهد تا با استفاده از وکتور و ویرایشگر بیت مپ، ظاهر یک sprite را تغییر دهند تا جلوه‌های متعددی از جمله انیمیشن تولید کنند.
  • تب Sounds: امکان اتصال موزیک و جلوه‌های صوتی به یک اسپرایت را فراهم می‌کند. هنگام طراحی اسپرایت و پس زمینه، کاربران می‌توانند به صورت دستی اسپرایت خود را ترسیم کنند، یکی از مجموعه را انتخاب کنند یا تصویری را آپلود کنند.
  • قلم مو: برای ترسیم اشکال با دست آزاد با کشیدن و رها کردن استفاده می‌شود. هنگام استفاده از ابزار قلم مو، کاربر باید روی نماد قلم مو در سمت چپ فضای طراحی در مرکز نوار ابزار کلیک کند.

برنامه نویسی اسکرچ شکل بسیار ساده‌ای از کدنویسی است که به جای زبان برنامه نویسی به طور مستقیم بر آموزش فرآیندهای کدگذاری مبتنی بر رویداد تمرکز دارد.

بلوک‌های برنامه نویسی اسکرچ

در Scratch، بلوک‌ها به ساختارهایی می‌گویند که برای ساخت کد استفاده می‌شوند. بلوک‌ها مانند قطعات پازل به‌صورت عمودی به هم متصل می‌شوند، هر دسته بلوک شکل و شکاف منحصربه‌فرد خود را دارند و در نتیجه از مشکلات سینتکس جلوگیری می‌کنند. اسکریپت‌ها مجموعه‌ای از بلوک‌های مرتبط هستند.

عملکرد بلوک‌ها معمولاً ساده‌تر از برنامه‌نویسی مبتنی بر متن است، زیرا مانند دستورالعمل‌های نوشته شده به حفظ نیاز ندارند و نمی‌توانند منجر به مشکلات نحوی شوند. کدنویسی مبتنی بر متن از برنامه‌نویسی مبتنی بر بلوک تطبیق‌پذیرتر است زیرا ممکن است متن بدون کشیدن بلوک‌های اضافی به ویرایشگر تغییر یابد.

ده نوع بلوک شامل حرکت، ظاهر، صداها، رویدادها، کنترل‌ها، حسگرها، عملگرها، متغیرها، فهرست‌ها و بلوک‌های من است. برخی از انواع بلوک‌های کلیدی در زیر مورد بحث قرار می‌گیرند:

  • رویدادها Events: این آجرهای زرد رنگ، شکل منحصر به فردی دارند و در قسمت بالاییشان برآمدگی دارند. این بلوک‌ها “بلوک‌های شروع” هستند، به این معنی که باید در ابتدای هر بخش کد جدید قرار گیرند. آنها نشان می‌دهند که اسکریپت چه زمانی اجرا می‌شود.
  • حرکت Motion: این آجرهای آبی حرکت اسپرایت، چرخش و سر خوردن را با تعداد درجه یا گام خاصی امکان پذیر می‌کنند.
  • ظاهر Looks: این قطعات بنفش ظاهر بصری اسپرایت شما را تغییر می‌دهند. این کار شامل رنگ، اندازه، حباب‌های فکری و سایر جلوه‌های جالب است.
  • حلقه‌ها Loops: این بلوک‌های نارنجی رنگ در بخش “کنترل” قرار دارند. مشابه بلوک‌های رویدادها، این بلوک‌ها شکل منحصر به فردی دارند. حلقه‌ها امکان تکرار مداوم یک اثر را فراهم می‌کنند.
  • صداها Sounds: این قسمت به شما امکان می‌دهد صدا را در برنامه خود قرار دهید. در تب “صداها”، می‌توانید صداهای خود را به هر اسپرایت اضافه کنید. به عنوان مثال صداهایی را ضبط کنید تا ” کاراکتر شما صحبت کند”.

بلوک‌های اسکرچ یک توسعه بزرگ برای دوره‌های آینده بلوک‌های برنامه‌نویسی گرافیکی است که بر اساس مشارکت Google و تیم Scratch MIT ساخته شده است – تقویت فناوری Blockly Google و ترکیب تخصص تیم Scratch در ایجاد وسایل کمک آموزشی تخیلی برای کودکان. بلوک‌های اسکرچ چارچوبی برای ایجاد واحدهای برنامه نویسی عمودی (مبتنی بر متن) یا افقی (مبتنی بر آیکون) ارائه می‌دهند.

اکستنشن‌های اسکرچ

بسیاری از پسوندهای Scratch وجود دارند که ممکن است به ناحیه بلوک متصل شوند. برای انتخاب پسوند، می‌توان نماد آبی را در سمت راست بخش‌های بلوک معمولی انتخاب کرد. پسوندهای رایج کدنویسی Scratch عبارتند از:

  • موسیقی: این افزونه به کاربران امکان می‌دهد نت‌های MIDI را بر روی سازهای مختلف پخش کنند.
  • سنجش ویدیو: پروژه ها می‌توانند با استفاده از این افزونه با دوربین ارتباط برقرار کنند.
  • ترجمه: با استفاده از افزونه Translate، ممکن است متن به زبان‌های مختلف ترجمه شود.
  • قلم: افزونه Pen به کاربران امکان می‌دهد با استفاده از قلم روی صحنه طراحی کنند.
  • متن به گفتار: این امکان را می‌دهد که متن با صدای بلند خوانده شود.
  • پسوند LEGO MINDSTORM EV3: به پروژه‌های Scratch اجازه می‌دهد تا به دستگاه‌های LEGO MINDSTORM EV3 متصل شوند.
  • پسوند Micro:bit: پروژه های Scratch را قادر می‌سازد تا با پروژه‌های micro:bit ارتباط برقرار کنند.

مزایای برنامه نویسی اسکرچ

هدف اصلی اسکرچ کمک به یادگیرندگان جوان است که مفاهیم اولیه کدنویسی را بدون وارد شدن به پیچیدگی‌های برنامه نویسی شی گرا یا کدنویسی متنی یاد بگیرند. در ادامه برخی از مزایای کدنویسی با Scratch را آورده‌ایم:

1. مهارت‌های تحلیلی و حل مسئله را بهبود می‌بخشد

همانطور که بچه‌ها در طول کدنویسی چالش‌های مختلف را حل می‌کنند و بر آنها غلبه می کنند، Scratch به آنها کمک می‌کند تا توانایی‌های استدلال منطقی و مهارت‌های حل مسئله را توسعه دهند.

2. منحنی یادگیری را در دنیای کدنویسی ساده می‌کند

یکی از چالش برانگیزترین عناصر برنامه نویسی این است که درک کامل آن به تلاش زیادی نیاز دارد. با این حال، این قضیه در مورد Scratch صدق نمی‌کند. از آنجایی که این زبان با در نظر گرفتن کودکان ایجاد شده است، درک آن آسان است. کودکان برای درک نحوه عملکرد زبان نیازی به کتاب، دستورالعمل یا درس پیچیده ندارند

3. سرگرمی و تعامل را همراه با یادگیری فراهم می‌کند

برنامه نویسی اسکرچ به بچه‌ها کمک می‌کند خلاقانه فکر کنند و آزادانه خودشان را بیان کنند. علاوه بر این، وظایفی که آنها توسعه می‌دهند جذاب است که یادگیری را لذت بخش می‌کند.

4. یک رابط کاربری جذاب ارائه می‌دهد

به لطف رابط بصری جذاب، کدنویسی Scratch علاقه فرزند شما را به برنامه نویسی برمی‌انگیزد. این رابط کاربری به کودکان کمک می‌کند تا کد خود را تجسم کنند و تجربه را لذت بخش‌تر می‌کند.

5. آموزش مشارکت پسوندهای سخت افزاری با کد

برنامه نویسی اسکرچ برای کودکانی که از فعالیت‌های عملی لذت می‌برند بسیار عالی است. بسیاری از شرکت‌ها کیت‌های سخت افزاری سازگار با Scratch را می‌فروشند که ممکن است برای ساخت پروژه‌های جذاب استفاده شود. به عنوان مثال، Makey-Makey یا micro:bit، کودکان را قادر می‌سازد تا کنترلرهای بازی خود را طراحی کرده و بسازند.

6. موانع شغل کدنویسی را کاهش می‌دهد

برنامه نویسی با اسکرچ برای اکثر کاربران اینترنت قابل دسترسی است. بنابراین، می‌توانید با Scratch، درس‌های کدنویسی را از خانه خود به فرزندتان ارائه دهید. این کار، آنها را برای یک حرفه موفق در توسعه نرم افزار بدون ایجاد مشکل در فرآیند یادگیری، آماده می‌کند.

7. منطق برنامه نویسی را به صورت بصری توضیح می‌دهد

کودکان می‌توانند به طور مداوم آنچه را که خلق می‌کنند ببینند و نتیجه فعالیت‌های خود را بررسی کنند. این کار به آنها کمک می‌کند تا استدلال‌های اساسی برنامه‌های رایانه‌ای را درک کنند. منطق Scratch بر روی ایده‌های اساسی مانند پارامترهای متغیر، انواع داده‌ها، مجموعه‌ها، ماتریس‌ها، حلقه زدن و عملگرها گسترش می‌یابد.

وقتی دانش‌آموزان از برنامه‌نویسی مبتنی بر بلوک رایج به برنامه‌نویسی مبتنی بر متن می‌روند، این توانایی‌ها به زبان‌های دیگر نیز منتقل می‌شود.

8. قوانین نحو را در زبان‌های برنامه نویسی سنتی دور می‌زند

بسیاری از زبان‌های برنامه نویسی، کودکان را ملزم می‌کنند تا دستورات متنی را یاد بگیرند و محدودیت‌های شدیدی را برای استفاده از آنها اعمال کنند. برنامه نویسی اسکرچ به کودکان اجازه می‌دهد تا روی بخش‌های سرگرم کننده برنامه نویسی تمرکز کنند، مانند ایجاد مفاهیم برای برنامه‌های جدید، کشف نحوه ساخت آنها، ایجاد آنها و بحث در مورد آنها با دیگران.

برای اطمینان از اینکه کد نویسی Scratch همه این نیازها را برآورده می‌کند، تیم سازنده نرم افزار از مجموعه‌ای از اصول به نام چهار P یادگیری نحوه کدنویسی پیروی می‌کند – پروژه‌ها، اشتیاق، همتایان و بازی. projects, passion, peers, and play.

  • افراد زمانی که به طور فعال در فعالیت‌های پروژه‌محور، مانند تولید ایده‌ها، توسعه مدل‌ها، بهبودها و تولید محصولات نهایی شرکت می‌کنند، به بهترین شکل یاد می‌گیرند.
  • وقتی افراد روی موضوعاتی متمرکز می‌شوند که به آن علاقه دارند، سخت‌تر و طولانی‌تر کار می‌کنند، علی‌رغم موانع انعطاف‌پذیر می‌مانند و دانش بیشتری در این فرآیند کسب می‌کنند.
  • با ارتباط برقرار کردن با دیگران، یادگیری جهش پیدا می‌کند به دلیل مبادله ایده‌ها، همکاری در ابتکارات و گسترش کار همسالان.
  • یادگیری نیاز به کاوش بازیگوش دارد – تلاش برای چیزهای جدید، آزمایش با مواد، رد کردن محدودیت‌ها، ریسک کردن، و تکرار مکرر.

شروع برنامه نویسی اسکرچ

برای شروع برنامه نویسی با Scratch، از وب سایت MIT برای Scratch دیدن کنید و مراحل زیر را دنبال کنید:

  • برای شروع یک پروژه جدید، روی دکمه “create” کلیک کنید.
  • واحدهای کدنویسی در سمت چپ نمایشگر قرار دارند.
  • برای شروع کدنویسی، روی تکه‌ها ضربه بزنید و آنها رابه قسمت بزرگ در وسط بکشید.
  • حروف و اشیاء در اسکرچ به عنوان “اسپرایت” شناخته می‌شوند. شما می‌توانید تعداد نامحدودی sprites اضافه یا حذف کنید.
  • برای ایجاد کد برای آن اسپرایت، روی یک اسپرایت ضربه بزنید.
  • چندین اسپرایت سرگرم کننده برای انتخاب وجود دارد.
  • برای کدنویسی، می‌توانید تکه‌هایی از کد را با کشیدن آن‌ها از چپ به راست به هم بپیوندید.
  • علاوه بر پس زمینه، به هر اسپرایت کد مخصوص به خود داده می‌شود.
  • این بلوک‌ها می‌توانند حرکت کنند، صدا ایجاد کنند و رنگ اسپرایت‌ها را تغییر دهند. و هنگامی که با هم ترکیب شوند، مجموعه‌ای از رویدادها را تولید می‌کنند که می‌توانید از آنها برای ایجاد یک بازی، کارتون و پروژه‌های دیگر استفاده کنید.
  • پس از کدنویسی برنامه خود، می‌توانید پرچم سبز را برای اجرای آن در Stage انتخاب کنید.
  • اگر می‌خواهید آن را ذخیره کنید یا به اشتراک بگذارید، مطمئن شوید که پروژه شما در حساب شما ذخیره می‌شود.
  • Scratch به شما امکان می‌دهد پروژه‌های Scratch ایجاد شده را در استودیوی زنده مجازی خود، CODE آپلود کنید. همچنین می‌توانید پروژه های ارسال شده توسط برنامه نویسان دیگر را در اینجا ببینید و نظرات خود را بنویسید.

نتیجه‌گیری

اگر در زمینه برنامه نویسی تازه کار هستید – فارغ از سنتان – Scratch یک برنامه عالی برای شروع است. این برنامه نشان دهنده استفاده از منطق کدگذاری if/then است که پایه و اساس توسعه نرم افزار در همه زبان‌ها است. حتی اگر واژگان خاص یک زبان را نمی‌دانید، کدنویسی Scratch به شما اجازه می‌دهد تا با جنبه‌های منطقی آن بدون نیاز به استفاده از کامپایلر برای مشاهده خروجی شروع کنید. در نهایت، کد نویسی Scratch یک سرگرمی ساده است – راهی برای یادگیری یک مهارت فنی ارزشمند.

آیا این مقاله به شما درک دقیقی از نحوه کار برنامه نویسی اسکرچ داد؟ نظر شما در مورد اسکرچ چیست؟

از همین نویسنده: