آنچه در این صفحه می خوانید:
- معرفی زبان اسکرچ (Scratch)
- تاریخچه زبان اسکرچ (Scratch)
- ویژگی های زبان اسکرچ (Scratch)
- کاربرد زبان اسکرچ (Scratch)
معرفی زبان اسکرچ (Scratch)
Scratch یک زبان برنامه نویسی ویژوال است که برای کمک به ساده سازی روند ایجاد و برنامه نویسی انیمیشن ها، بازی ها، موسیقی، داستان های تعاملی و غیره طراحی شده است. زبان برنامه نویسی Scratch عمدتا برای کودکان 8 سال به بالا طراحی شده است تا تفکر محاسباتی را با استفاده از یک روش ساده برای توسعه نرم افزار را آموزش دهد که به جای سینتکس خاص بر روی حل مسائل متمرکز است. در واقع، Scratch یک کیت توسعه نرم افزار شی گرا (SDK) است که اجازه می دهد تا کودکان 8 تا 16 ساله انیمیشن ها، داستان های تعاملی، بازی ها و موسیقی را بدون نیاز به دانستن زبان برنامه نویسی خاص ایجاد کنند.
Scratch، شامل یک اسکریپت، رنگ و ویرایشگر صوتی می باشد که توسط گروه Lifelong Kindergarten در MIT Media Lab نگهداری می شود و دارای یک انجمن آنلاین برای تشویق همکاری میان برنامه نویسان جوان است. Scratch دارای رابط صفر کد است، به این معنی که کاربران (که خود را scratchers می نامند) مجبور نیستند کد منبع را برای برنامه هایی که ایجاد می کنند بنویسند. درنتیجه رابطی بدون نیاز به برنامه نویسی خواهند داشت. در عوض، آنها بلوک های اجزای کامپوننت را گدرآوری می کنند که در واقع واحدهای کد را با شکل های مختلف اتصال نمایش می دهد. هر بلوک دارای یک فرمان خاص و قابلیت منحصر به فرد است و هنگامی که کاربر مجموعه ای از بلوک ها را متصل می کند، می تواند بر روی پرچم سبز برای اجرای اسکریپت کلیک کند و برنامه را ببیند.
تا به امروز Scratch با بیش از 25000000 پروژه دانشجویی ایجاد شده ثابت کرده است که یک ابتکار محبوب می باشد. این برنامه که در بیش از 150 کشور مختلف مورد استفاده قرار می گیرد و در 40 زبان در دسترس است، جایگزین پاورپوینت به عنوان نرم افزار انتخابی در بسیاری از مدارس شده است. این برنامه علاوه بر تقویت سواد برنامه نویسی، به عنوان یک راه سرگرم کننده برای کمک به دانش آموزان در حل مشکلات منطقی، کار مشترک و بهبود مهارت های ارتباطی شناخته شده است.
تاریخچه زبان اسکرچ (Scratch)
Scratch توسعه در سال 2003 آغاز شد و در سال 2007 به عموم مردم عرضه شد. Scratch 1.0، اولین نسخه، بسیار شبیه به Scratch 1.4 بود. در آن زمان، فقط ویرایشگر آفلاین وجود داشت. وب سایت یک وبلاگ کوچک بود که پروژه ها را می توان بارگذاری و بازی کرد. با بزرگ شدن Scratch، وب سایت بزرگتر شد. در این مرحله، Scratch دارای میلیون ها کاربر و پروژه و بسیاری از ویژگی های جدید بود.
پس از انتشار Scratch 2.0 در سال 2013، وب سایت و User Interface تغییر یافت. اسکرچ به رشد خود ادامه داد و به 30 میلیون کاربر و پروژه رسید. Scratch 3.0 در سال 2019 منتشر شد. به دلیل رشد بسیار زیاد جامعه Scratch، بنیاد Scratch گسترش یافته و از 12 مارس سال 2019 طراحی، توسعه و پشتیبانی را هدایت می کند. MIT به همکاری نزدیک با بنیاد Scratch ادامه خواهد داد.
ویژگی های زبان اسکرچ (Scratch)
Scratch از برنامه نویسی مبتنی بر رویداد با چندین اشیاء فعال به نام sprites استفاده می کند. Sprites ها را می توان به عنوان وکتور یا گرافیک بیت مپ از ابتدا در یک ویرایشگر ساده که بخشی از Scratch است، کشید یا اینکه از منابع خارجی وارد شده است. Scratch 3 فقط از آرایه های یک بعدی، معروف به "لیست ها" پشتیبانی می کند، و مقیاس های شناور و رشته ها پشتیبانی می شوند، اما با توانایی دستکاری رشته ای محدود هستند. بین عملکردهای قدرتمند چندرسانه ای و سبک برنامه نویسی چند رشته ای و دامنه محدود زبان برنامه نویسی Scratch یک تضاد جدی وجود دارد.
نسخه 2.0 Scratch روشها را به عنوان ساختارهای درجه یک درمان نمی کند و دارای گزینه های محدود I / O فایل با پروتکل پسوند Scratch 2.0، یک ویژگی افزودنی آزمایشی است که امکان تعامل بین Scratch 2.0 و سایر برنامه ها را فراهم می کند. پروتکل پسوند اجازه می دهد تا با تخته های سخت افزاری مانند Lego Mindstorms یا Arduino رابط قرار دهید. نسخه 2 Scratch در ActionScript اجرا شد و یک مترجم مبتنی بر جاوا اسکریپت به صورت موازی ساخته شد.
نسخه 1.4 Scratch مبتنی بر Squeak است که مبتنی بر Smalltalk-80 است. تعدادی مشتقات Scratch با نام اصلاحات Scratch با استفاده از کد منبع Scratch نسخه 1.4 ایجاد شده اند. این برنامه ها نوعی از Scratch هستند که به طور معمول شامل چند بلوک اضافی یا تغییر در GUI می شوند.
ضربه محکم و ناگهانی!
یک زبان برنامه نویسی بصری پیشرفته تر که با الهام از Scratch Snap است! شامل مراحل کلاس اول است (مبانی ریاضی آنها نیز محاسبه لامبدا نامیده می شود)، لیست های کلاس اول (شامل لیست های لیست ها) و کلاس های کلاس اول واقعاً شی گرا با وراثت نمونه اولیه، و اسپریت های قابل توجیه، که بخشی از اسکرچ نیستند. ضربه محکم و ناگهانی! (قبلاً "BYOB") توسط جانس مونیگ با اسناد تهیه شده توسط برایان هاروی از دانشگاه کالیفرنیا، برکلی تهیه شده است و از آن برای آموزش دوره مقدماتی "زیبایی و لذت از محاسبات" در CS برای دانشجویان غیر CS استفاده شده است.
اسکرچ جونیور
در ژوئیه سال 2014، ScratchJr برای iPad منتشر شد و در سال 2016، ScratchJr برای اندروید. اگرچه به شدت از Scratch الهام گرفته شده و توسط میچ رزنیک به رهبری مشغول است، اما با این وجود بازنویسی کامل برای کودکان خردسال طراحی شده است - سن 5-7 را هدف قرار دهید.
- اسکرچ در حال حاضر تورینگ کامل است.
- این در درجه اول محور رویداد است.
- این که آیا OOP هست یا نیست، در جامعه مورد بحث است.
- Scratch متغیرها و لیست هایی برای ذخیره داده دارد و آرایه ها می توانند همانند سازی شوند.
- اسکرچ در تکرار اتمی نیست، اگرچه می توان با برنامه نویسی Single Frame شبیه سازی کرد.
- Scratch 2.0 روش های پشتیبانی و بازگشتی را پشتیبانی می کند.
- Scratch دارای بسیاری از قوانین ساده ریخته گری است. با این حال، داده ها کلاس اول نیستند - شما نمی توانید لیست های درجه یک، اسپریت ها یا مراحل (لامبدا) داشته باشید.
کاربرد زبان اسکرچ (Scratch)
اسکراچ در بسیاری از تنظیمات مختلف استفاده می شود: مدارس، موزه ها، کتابخانه ها، مراکز اجتماع و خانه ها. اگرچه گروه سنی کاربر اصلی Scratch 8-18 سال است، اما Scratch نیز برای مربیان و والدین ایجاد شده است. این دسترسی گسترده بسیاری از جوامع اطراف را اعم از جسمی و دیجیتال ایجاد کرده است.
کاربران آموزشی
اسکراچ در انگلستان و ایالات متحده از طریق Code Clubs محبوب است. Scratch به عنوان زبان مقدماتی مورد استفاده قرار می گیرد زیرا ایجاد برنامه های جالب نسبتاً آسان است و مهارت های آموخته شده را می توان در سایر زبان های برنامه نویسی مانند پایتون و جاوا نیز به کار برد.
اسکراچ منحصراً برای ایجاد بازی ها نیست. با استفاده از تصاویر ارائه شده، برنامه نویسان می توانند انیمیشن، متن، داستان، موسیقی و موارد دیگر را ایجاد کنند. در حال حاضر برنامه های بسیاری وجود دارد که دانش آموزان می توانند از آنها برای یادگیری مباحث در ریاضی، تاریخ و عکاسی رویداد استفاده کنند. Scratch به معلمان اجازه می دهد تا درس های مفهومی و بصری و تکالیف آزمایشگاه علوم را با انیمیشن هایی ایجاد کنند که به تجسم مفاهیم دشوار کمک می کند. در علوم اجتماعی، مربیان می توانند آزمون ها، بازی ها و آموزش هایی با عناصر تعاملی ایجاد کنند. استفاده از Scratch به جوانان امکان می دهد منطق برنامه نویسی و نحوه ایجاد خلاقانه و همکاری را درک کنند.
Scratch به بیش از 800 مدرسه و 70 کالج از سازمان DAV در هند و سراسر جهان آموزش داده می شود. در آموزش عالی، Scratch در هفته اول دوره مقدماتی علوم کامپیوتر دانشگاه هاروارد CS50 استفاده می شود.
انجمن آنلاین
در Scratch، اعضا این قابلیت را دارند که پروژه های خود را به اشتراک بگذارند و بازخورد خود را دریافت کنند. پروژه ها را می توان مستقیم از محیط توسعه در وب سایت Scratch بارگذاری کرد و هر یک از اعضای انجمن می توانند کد منبع کامل را برای مطالعه و یا دوباره در پروژه های جدید بارگیری کنند. اعضا همچنین می توانند استودیوهای پروژه ایجاد کنند، نظر دهند، برچسب بزنند، مورد علاقه خود را ایجاد کنند و دیگران را دوست داشته باشند، سایر اعضای را دنبال کنند تا پروژه ها و فعالیت های خود را ببینند و ایده های خود را به اشتراک بگذارند پروژه ها از بازی تا انیمیشن گرفته تا ابزارهای عملی متغیر است. علاوه بر این، وب سایت برای تشویق ایجاد و اشتراک در بین کاربران، چالش های "طراحی طراحی اسکراچ" را ایجاد می کند.
تیم Scratch MIT برای اطمینان از اینكه این جامعه محیطی دوستانه و احترام آمیز را برای همه مردم حفظ كند، كار می كند. مربیان جامعه آنلاین خود را به نام ScratchEd دارند که توسط دانشکده آموزش فارغ التحصیل دانشگاه هاروارد توسعه و پشتیبانی می شوند. در این انجمن، مربیان Scratch داستان را به اشتراک می گذارند، منابع را مبادله می کنند و سؤال می کنند.
اسکراچ ویکی
Scratch Wiki یک منبع پشتیبانی برای Scratch و وب سایت، تاریخچه و پدیده های اطراف آن است. اگرچه توسط تیم Scratch (توسعه دهندگان Scratch) پشتیبانی می شود، اما در اصل توسط Scratchers (کاربران Scratch) برای اطلاعات مربوط به پروژه ها و چیزهایی که مورد علاقه کاربران است، نوشته شده است.
رویداد ها
مربیان اسکراچ می توانند به صورت حضوری در جلسات Scratch Teacher Meetup جمع شوند. در این گردهمایی ها، اسکراچ مربیان از یکدیگر یاد می گیرند و ایده ها و استراتژی هایی را پشتیبانی می کنند که از خلاقیت محاسباتی پشتیبانی می کند. سالانه "روز اسکراچ" در ماه مه هر سال اعلام می شود. اعضای جامعه تشویق می شوند در این روز بزرگ یا کوچک، جشن اسکراچ را برگزار کنند. این رویدادها در سرتاسر جهان برگزار می شوند و یک لیست در وب سایت Scratch Day یافت می شود.