5 دلیل مهم برای استفاده از اسکرچ
توانایی ما برای برآورده کردن نیازهای قرن بیست و یکم با حرکت سریع جهان به سمت یک جامعه دیجیتال و مجازی اهمیت فزاینده ای پیدا می کند. برای افرادی که آینده کاری خود را در دنیای دیجیتال تعریف کرده اند یا خواهند کرد، آموزش اصول دنیای دیجیتال مانند کدنویسی می تواند به عنوان مهارتی مهم در این حوزه درنظر گرفته شود. زبان های کدنویسی مختلفی برای یادگیری وجود دارند اما اینجا ما در مورد اسکرچ، این زبان گرافیکی و ساده اما قوی و کاربردی توضیح خواهیم داد. در این مقاله در مورد چیستی برنامه نویسی اسکرچ و اهمیت یادگیری آن صحبت خواهیم کرد.
برنامه نویسی اسکرچ چیست؟
برنامه نویسی Scratch در ابتدا با هدف آموزش کدنویسی برای افراد در سنین پایین تر ساخته شد. اما ویژگی های آن به قدری جالب، کاربردی و قوی بود که در حال حاضر استفاده از آن، به رده سنی خاصی تعلق ندارد و تمام افرادی که به یادگیری برنامه نویسی علاقه مند هستند از آن استفاده می کنند. مهم ترین ویژگی این زبان، گرافیکی یا بصری بودن آن است که شما را قادر می سازد انواع مختلفی از پروژه ها به راحتی آب خوردن انجام دهید. اینکه می گویم به راحتی آب خوردن، واقعا یعنی به راحتی آب خوردن! بدون نیاز به یادگیری نحو یا سینتکس زبان های برنامه نویسی و فقط با کشیدن و رها کردن تعدادی بلوک! همین …!
زبان برنامه نویسی اسکرچ با داشتن حدود 90 میلیون عضو فعال بزرگترین انجمن برنامه نویسی در جهان است. این زبان توسط میشل رسنیک (Mitchel Resnick) در آزمایشگاه رسانه دانشگاه ام آی تی ساخته شده. از آقای رسنیک یک جمله بحث برانگیز نقل می شود که گفته است: «اگر کسی در عصر حاضر برنامه نویسی بلد نباشد بی سواد محسوب می شود».
البته ما ضمن احترام به ایشان، این جمله ایشان را قبول نداریم! شاید یک وقتی، در مورد این ادعای افراطی در اینکه «کامپیوتر و کدنویسی همه چیز است»، مطلب مفصلی نوشتیم ولی به طور خلاصه بد نیست همینجا بگوییم که اگر یونسکو را سازمانی واجد صلاحیت در تعیینِ تعریف سواد بدانیم، 12 نوع سواد توسط این سازمان به عنوان انواع سواد تعریف شده است (بعضی جاها کمتر و بیشتر هم گفته اند). در جدیدترین تعریف سواد، فردی باسواد دانسته شده که با بهره گیری از دانستنی های خود از مجموعه انواع سواد، بتواند تغییری در زندگی خود ایجاد کند. سواد رایانه ای تنها یکی از از چندین سواد تعریف شده است و کدنویسی بخش کوچک و البته مهمی از علوم رایانه است که استفاده از کامپیوتر لزومی به دانستن آن ندارد. حالا شما فکر می کنید هر کس کدنویسی نداند بی سواد است؟ ما که این طور فکر نمی کنیم… .
پس اصلا چرا این مطلب را نوشتیم؟ به پاراگراف اول برگردیم و این جمله را مرور کنیم: «برای افرادی که آینده کاری خود یا فرزندشان را در دنیای دیجیتال تعریف کرده اند یا خواهند کرد، آموزش اصول دنیای دیجیتال مانند کدنویسی می تواند به عنوان مهارتی مهم در این حوزه درنظر گرفته شود». پس اگر خودتان یا فرزندتان را در این دسته تعریف می کنید حتما به خواندن ادامه مطلب ادامه دهید تا ببینید که چرا یادگیری اسکرچ مهم است.
افزایش خلاقیت با اسکرچ
انسان با قوه خلاقیت می تواند چیزهای جدید خلق کند. یکی از مواردی که می تواند خلاقیت را افزایش دهد عادت به ساختن و ایجاد کردن است و هر چیزی که بتواند به انسان در این زمینه (یعنی ساختن چیزهای جدید) کمک کند، خلاقیت انسان را افزایش می دهد. اسکرچ یکی از این موارد است چون به شما این امکان را می دهد که بتوانید ایده جدیدی که در سر دارید را پیاده کنید. خوبی اسکرچ این است که در فرآیند خلق چیزهای جدید، شما درگیر اصول و قواعد نحویِ زبان های برنامه نویسی نخواهید شد و تمام انرژی و تمرکز شما می تواند صرف آن موضوع شود.
البته خوب است این نکته را ذکر کنیم که آن برنامه نویسی ای موجب خلاقیت می شود که محدودیت در آن وجود نداشته باشد. به طور مثال اگر فردی به عنوان کدنویس در یک شرکت کامپیوتری کار کند و دارای وظایف تعیین شده، مشخص و دست و پاگیر باشد، اگر صبح تا شب هم کدنویسی کند، چیزی به خلاقیتش اضافه نخواهد کرد مگر زمانی که راه های معمول را کنار بزند و راهی جدید و مختص به خود خلق کند… خلاقیت اینجا معنی پیدا می کند. این مسئله برای اسکرچ هم صدق می کند. یعنی اگر می خواهید با اسکرچ خلاقیت خود یا فرزندتان را افزایش دهید خودتان را محدود به چیزی نکنید. ایده پردازی کنید و سعی کنید آن را پیاده سازی کنید. به چیزهای جدید فکر کنید البته یک زمانی خواهد رسید که ایده های جدیدتان دیگر با اسکرچ قابل پیاده سازی نخواهد بود. آن زمان، زمان کوچ شما به دنیای زبان های برنامه نویسی واقعی خواهد بود.
بهبود توانایی های منطقی و تحلیلی با اسکرچ
هدف اصلی برنامه نویسی Scratch آموزش کدنویسی از طریق روشی سرگرم کننده، تعاملی و کاربردی است. خوبی یادگیری کدنویسی در چنین پلتفرم تعاملی این است که مهارت های منطقی و تحلیلی فرد را افزایش می دهد. در پلتفرم، کاربر باید بلوک ها را بکشد و رها کند. چیدمان منطقی کدها، یک کاراکتر را قادر می سازد تا هر نوع حرکتی داشته باشد. این مستلزم تجزیه و تحلیل اهداف و تفکر منطقی برای ساخت پروژه های معنادار است.
آیا این فقط مختص اسکرچ است؟ قطعا خیر. اصولا برنامه نویسی به شدت با منطق سر و کار دارد. شما هر زبان برنامه نویسی که برای یادگیری انتخاب کنید و مسیر یادگیری را طی کنید، به مرور زمان توانایی های منطقی و تحلیلی تان رشد خواهد کرد. البته در اینکه این توانایی های منطقی و تحلیلی در سایر زمینه های زندگی به کار انسان می آیند یا فقط در زمینه تخصصی علوم رایانه به درد می خورند، جای بحث و بررسی وجود دارد.
تقویت توانایی حل مسئله با اسکرچ
برنامه نویسی اسکرچ باعث رشد تفکر رایانشی در افراد می شود. به طور کلی برنامه نویسی و تفکر رایانشی لازم و ملزوم یکدیگرند. یعنی برنامه نویسی بدون تفکر رایانشی ممکن نیست و تفکر رایانشی هم بدون برنامه نویسی بهره ای نخواهد داشت. برای ساخت هر نوع پروژه ای، چه بازی، انیمیشن یا داستان، کاربر باید بداند که چگونه بخش های مختلف کدنویسی آنها می تواند با هم کار کند. تمرین در این بستر مهارت های حل مسئله را در شما یا فرزندتان تقویت می کند. البته تنها اسکرچ و کدنویسی نیست که توانایی حل مسئله در شما را بهبود دهد. خیلی کارهای دیگر مانند حل کردن پازل ها و معماها، حل سودوکو، عادات غذایی خوب و خواب شبانه مناسب، انجام بعضی حرکات ورزشی، بازی خانوادگی با بعضی بازی های رومیزی و … هم می توانند در تقویت توانایی حل مسئله موثر باشند.
یادگیری آسان اصول کدنویسی با اسکرچ
یادگیری آسان اصول کدنویسی اصلی ترین هدف ایجاد اسکرچ بوده است. در اسکرچ همه چیز به صورت گرافیکی انجام می شود و این بهترین شیوه برای یادگیری اصول کدنویسی است. اگر شما بخواهید اصول کدنویسی را با زبان های مبتنی بر متن (به عنوان مثال پایتون، جاوا و …) یاد بگیرید، علاوه بر یادگیری اصول کدنویسی باید نحو یا سینتکس اختصاصی آن زبان را نیز بیاموزید. به عنوان مثال، دستور حلقه یا تکرار را در زبان های جاوا و پایتون درنظر بگیرید. (برای دوستانی که آشنایی ندارند: دستور حلقه زمانی در کدنویسی به کار می رود که یک یا چند دستور را بخواهیم به یک یا چند بار تکرار کنیم). فرض کنید می خواهیم از 100 تا صفر را با کسر پنج واحد در هر مرحله، در خروجی نشان دهیم. تکه کد مربوط به این کار در زبان های جاوا، پایتون و اسکرچ در تصویر زیر آورده شده است.
واضح است که در زبان های جاوا و پایتون، کاربر علاوه بر اینکه باید به این فکر کند که چگونه مسئله را حل کند، باید در مورد نحوه استفاده از قواعد و نحو زبان برنامه نویسی مورد نظر نیز آموزش ببیند. به طور مثال به دستور حلقه در زبان جاوا دقت کنید. کلمه کلیدی Integer به چه معناست؟ چرا آن سه جزء در پرانتز مقابل کلمه for با «نقطه ویرگول» از یکدیگر جدا شده اند؟ چرا برای کم کردن عدد 5 از i به این روش عمل شده است؟ (i -= 5). عبارت system.out.println در دستور چاپ خروجی به چه معناست؟ چرا در پایان آن نقطه ویرگول آمده ولی در پایان دستور بالایی که همان دستور حلقه است، نقطه ویرگول نیامده است؟ سوالاتی از این قبیل همان جزییات مربوط به نحو یا سینتکس زبان برنامه نویسی است که پیش از این در مورد آن صحبت کردیم و می بینید که این جزییات برای کسی که در ابتدای یادگیری زبان برنامه نویسی است و می خواهد اصول اولیه آن را بیاموزد چقدر می تواند اذیت کننده باشد.
جالب است که بدانید، اگر کوچکترین اشکالی در این جزییات اتفاق بیفتد به طور مثال همین نقطه ویرگول در انتهای خط دوم سر جایش نباشد، برنامه با خطای نحوی مواجه شده و اجرا نخواهد شد! البته با وجود محیط های توسعه مجتمع (IDE) که برای زبان های برنامه نویسی متنی وجود دارد این مشکلات، قبل از اجرای برنامه تا حد زیادی رفع می شوند؛ اما در هر صورت زبان آموز برای کدنویسی با این زبان ها ناچار است در مورد این جزییات آموزش ببیند.
اگر به تصویر بالا مجددا نگاه کنیم و بخش مربوط به اسکرچ را ببینیم چند نکته را متوجه می شویم. نکته اول که واضح است اینکه چیزی تایپ نمی شود و نهایت کاری که انجام می شود جایگذاری مقادیر برای پارامترهای بلوک های آماده است. نکته دوم اینکه بلوک ها در شکل ها و رنگ های مختلفی هستند و هر شکل و رنگ نمایانگر دسته خاصی از بلوک هاست و این تفکیک منطقی کار را برای آموزش آسان تر می کند. نکته سوم اینکه خبری از قواعد نحوی زبان های برنامه نویسی نیست و تنها کاری که برای اجرای برنامه باید انجام شود، چسباندن بلوک ها به یکدیگر است. بنابراین در اسکرچ ما خطای نحوی نداریم البته خطای منطقی کماکان برقرار است (منظور از خطای منطقی وجود اشکال در منطق برنامه است. یعنی کد برنامه از لحاظ ظاهری درست است ولی منطق برنامه اشکال دارد. در این موارد می گوییم برنامه از لحاظ منطقی اشتباه است).
اسکرچ، عالی برای آزمایش های عملی
برنامه نویسی با اسکرچ علاوه بر رابط کاربری جذاب بصری، دارای تعدادی افزونه سخت افزاری عالی است که برای افرادی که دوست دارند آزمایش کنند و وقت و انرژی خود را در کارهای عملی صرف کنند، عالی هستند. چندین شرکت مجموعههای سختافزاری میسازند که با اسکرچ یکپارچه میشوند تا پروژههای جالبی ایجاد کنند. به عنوان مثال، micro:bit یکی از آن هاست.
اکنون، می دانید اسکرچ چیست و چقدر برای خود یا فرزندانتان مفید است. اگر در کار با اسکرچ به یک حرفه ای تبدیل شوید، اصول اولیه زبان های برنامه نویسی را به خوبی یاد گرفته اید. اما Scratch با تمام ویژگی های خوبش تنها آغاز راه پر پیچ و خم برنامه نویسی است. همچنین باید دقت کنید که اسکرچ یک زبان آموزشی است و بنابراین محدودیت هایی دارد و نمی توان هر کاری را با آن انجام داد.
پاسخها