اسکرچ

| 0 | 1 |
| --- | --- |
: 
توسعه‌دهنده: آزمایشگاه رسانه ام‌آی‌تی
ظهوریافته در: ۲۰۰۲؛ ۲۳ سال پیش (۲۰۰۲-خطا: زمان نامعتبر}}) (آزمایشی) ۲۰۰۵؛ ۲۰ سال پیش (۲۰۰۵-خطا: زمان نامعتبر}}) (رسمی) ۲۰۱۳؛ ۱۲ سال پیش (۲۰۱۳-خطا: زمان نامعتبر}}) (اسکرچ ۲٫۰)
سیستم‌عامل: ویندوز، OS X, Linux
پسوند(های) نام پرونده: .sb, .sprite (اسکرچ ۱٫۴ به قبل) .sb2, .sprite2 (اسکرچ ۲٫۰ به بعد)
وبگاه: scratch.mit.edu
متأثر از: متأثر از
لگو: لگو
اسکرچ (به انگلیسی: Scratch)
یک زبان برنامه‌نویسی تصویری است که برای کودکان و نوجوانان طراحی شده‌است. دانشمندان آزمایشگاه رسانه ام‌آی‌تی زبان برنامه‌نویسی اسکرچ (Scratch) را طراحی نموده و در سال ۲۰۰۷ به‌طور رسمی و به صورت کاملاً رایگان به دنیا عرضه کردند. این برنامه نویسان که به دنبال راه کاری بودند تا زبانی را طراحی کنند که کار کردن با آن بسیار ساده باشد با الهام گرفتن از روش بازی کودکان با لگو قطعات خانه سازی که با استفاده از آن می‌توان سازه‌های مختلفی ایجاد کرد. سعی کردند مفاهیم اصلی برنامه‌نویسی را در قالبی کاملاً بصری و همچون ساخت یک خانه با لگو آموزش دهند. کودکان به هیچ وجه نیازی به نوشتن حتی یک خط کد هم برای تکمیل پروژه خود ندارند بلکه کدهای این زبان برنامه‌نویسی در قالب شکل‌های مختلف در معرض دید کودک قرار می‌گیرد. حال کودک با کنار هم قرار دادن این اشکال اقدام به کدنویسی می‌کند. چنین قابلیت منحصر به فردی به وسیلهٔ شکل‌های مختلف فراهم شده‌است به این صورت که فقط اشکال خاصی هستند که می‌توان آن‌ها را در کنار یکدیگر جفت کرد. این بازی شباهت بسیاری به برنامه" ام بلاک"(m block) دارد.
اسکرچ برای کودکان و نوجوانان ۸ تا ۱۶ سال طراحی گردیده است. اما نسخه دیگری از این برنامه که ساده شدهٔ آن است، با نام اسکرچ‌جونیور(Scratch Jr) نیز وجود دارد که مختص رده‌های سنی پایین‌تر، یعنی کودکان حدود ۵ تا ۷ سال می‌باشد.  در بعضی کشور ها اسکرچ از پایه ششم در مدرسه تدریس میشود و اکنون نسخه فارسی اسکرچ در ایران مشاهده می شود.
| دسته | دسته | شرح |  | دسته | دسته | شرح |
| --- | --- | --- | --- | --- | --- | --- |
|  | Motion حرکت | Moves sprites and changes angles اسپرایت ها را حرکت می دهد و زاویه ها را تغییر می دهد |  |  | Events متغیر ها | Contains event handlers placed on  the top of each group of blocks شامل کنترل‌کننده‌های رویداد است که در بالای هر گروه از بلوک‌ها قرار گرفته‌اند |
|  | Looks ظاهر | Controls the visuals of the sprite; attach speech or thought bubble, change of background, enlarge or  shrink تصاویر بصری جن را کنترل می کند. حباب گفتار یا فکر را بچسبانید، پس زمینه را تغییر دهید، بزرگ کنید یا کوچک کنید |  |  | Control اداره | Conditional if-else statement, “forever”, “repeat”, and “stop” در این بلوک، شرایط "برای همیشه"، "تکرار" و "توقف" وجود دارد. |
|  | Sound صدا | Plays audio files and programmable sequences فایل های صوتی و سکانس های قابل برنامه ریزی را پخش می کند |  |  | Sensing تشخیص | Sprites can interact with the surroundings the user has created and can import from PicoBoard or Lego WeDo Sprites می تواند با محیطی که کاربر ایجاد کرده است تعامل داشته باشد و می تواند از PicoBoard یا Lego WeDo وارد کند |
|  | Pen قلم | Draw on portrait by controlling pen width, color, and shade با کنترل عرض، رنگ و سایه قلم روی پرده بکشید |  |  | Operators اپراتورها | Mathematical operators, random number generator, and-or statement that compares sprite positions عملگرهای ریاضی، مولدهای اعداد تصادفی، یا عباراتی که موقعیت‌های اسپرایت را با هم مقایسه می‌کنند |
|  | Data | Variable usage and assignment استفاده و تخصیص متغیر |  |  | More Blocks ایجاد بلوک | Custom procedures (blocks) and external devices control رویه های سفارشی (بلوک) و کنترل دستگاه های خارجی |
برنامه «سلام، دنیا!» در اسکرچ