پرورش یک ذهن خلاق
کدنویسی چگونه می‌تواند به کودکان در حل مسائل خلاقانه کمک کند؟
قبل از آن‌که ساخت اپلیکیشن‌های نرم‌افزاری را یاد بگیرید، باید بدانید کدنویسی شامل یافتن راه‌حل‌های منطقی برای مسائل روزمره است که می‌توانند به‌صورت الگوریتم یا معادلات ریاضی بیان شوند. برنامه‌نویسان، ابتدا یک مسئله در دنیای واقعی را به یک سری مراحل (الگوریتم) و ساختار داده تقسیم می‌کنند. سپس این موارد به زبانی ساده بیان می‌شوند تا کامپیوترها قادر به درک آن‌ها باشند. سی، سی‌پلاس‌پلاس، جاوا، پایتون و غیره همگی زبان‌های برنامه‌نویسی هستند که هر کدام ساختار نحوی (Syntax) و قواعد خاص خود را دارند. انتخاب زبان کدنویسی به این موضوع بستگی دارد که کدنویس قرار است با چه دقت و شدتی با سیستم‌عامل و سخت‌افزار کامپیوتر کار کند. در نتیجه، تسلط بر زبان‌های سطح بالاتر مانند پایتون نسبت به زبان‌های سطح پایین‌تر مانند C آسان‌تر است. با این‌حال، در بحث آموزش کدنویسی به کودکان قرار نیست از همان ابتدا با مفاهیم پیچیده زبان‌هایی مثل سی‌پلاس‌پلاس روبرو شوند، بلکه هدف این است که منطق ساخت برنامه‌ها، نحوه کارکرد آن‌ها و کامپیوترها را درک کنند.

1606683296_1_0.gif

کدنویسی، یک زبان دیگر است

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

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

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

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

چگونه کدنویسی به خلاقیت کمک می‌کند؟

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

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

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

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

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

کد‌نویسی غیر از این‌که فرد را با مهارت‌های پیشرفته‌تر ریاضی آشنا می‌کند، مزیت اصلی مهم دیگری نیز دارند؛ به‌طوری که به آن‌ها کمک می‌کند تا مفاهیم انتزاعی ریاضی را تجسم کنند و آن‌ها را به شکل ملموس‌تری درک ‌کند. به‌عنوان مثال، اگر کودکان یک نمونه واقعی و کاربردی از تقسیم داشته باشند که مرتبط با برنامه‌ای است که مشغول ساخت آن هستند، معمولاً کمتر از شمارش با دست استفاده می‌کنند، زیرا می‌توانند تجسم کنند که ½ یا ¼ چیزی، چه مقدار از آن است.

به‌طور معمول، مهارت‌های کدنویسی مقدماتی که با ریاضیات مرتبط است، شامل یادگیری درست، نادرست و شرطی است. به‌عنوان‌ مثال، در کدنویسی، اگر چیزی «درست» (روشن) یا «نادرست» (خاموش) باشد؛ ترجمه ریاضی آن چیزی برابر با 1 یا 0 است. به‌طور مثال در پلتفرم‌های آموزشی مخصوص کودکان مثل اسکراچ، اگر دهان گربه باز باشد (روشن/درست/1)، میو‌میو می‌کند، اگر دهان گربه بسته باشد (نادرست/خاموش/0) ساکت خواهد بود.

مطلب پیشنهادی:

چگونه کدگذاری توانایی‌های نوشتاری آکادمیک را بهبود می‌بخشد؟

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

ابتدا، بچه‌ها باید یاد بگیرند که چگونه ایده‌های خود را برای یک برنامه، ساختاربندی و طرح‌ریزی کنند؛ دقیقاً همان کاری که هنگام نوشتن یک انشاء انجام می‌دهند. در پلتفرم‌های آموزشی مخصوص کودکان، توسعه‌دهندگان از مفاهیمی که سازنده‌های گرافیکی (Graphic Organizers) و نقشه‌های حبابی نام دارند، در همان مراحل ابتدایی فرآیند برنامه‌نویسی استفاده می‌کنند. سازمان‌دهی بیشتر با سازما‌ن‌دهی جزئیات در یک توالی انجام می‌شود. درست مانند نوشتن آکادمیک، برنامه‌ریزی برای نوشتن یک برنامه می‌تواند در طرح کلی پروژه انجام شود. در ساخت این طرح کلی، آن‌ها مشکلات و نقاط کانونی اصلی را که می‌خواهند از طریق برنامه به آن‌ها بپردازند، شناسایی می‌کنند. فرآیند نوشتن و برنامه‌نویسی دارای شباهت‌هایی است که فراتر از ساختاربندی و سازمان‌دهی است و آن تمرکز بر تحقیق است. تحقیق با این هدف انجام می‌شود که راه‌حل‌های بالقوه‌ای برای مشکلات شناسایی شوند. گام بعدی، شروع کدنویسی بر مبنای راه‌حل شناسایی شده است. 

چگونه کدنویسی توانایی‌های حل مسئله را بهبود می‌بخشد؟

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

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

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

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

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

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

بهترین سن برای شروع کدنویسی چه سنی است؟

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

  •  به بازی‌های کامپیوتری و ویدیویی علاقه نشان می‌دهند و درمورد نحوه ساخت آن‌ها کنجکاو می‌شوند و تمایل نشان می‌دهند.
  •  آن‌ها متوجه می‌شوند که دوست دارند مشکل به‌وجود آمده را حل کنند و احتمالاً یک بازی، برنامه، وب‌سایت یا فناوری دیگر می‌تواند به آن‌ها در حل آن مسئله کمک کند.
  •  هنگامی که بازی می‌کنند، مشغول ساخت یا طراحی هستند؛ برای مثال، با لگو، عروسک، بلوک‌های خانه‌سازی و نمونه‌های مشابه.
  •  سؤالات اکتشافی می‌پرسند: می‌خواهم بدانم اگر من فلان کار را انجام بدهم چه اتفاقی می‌افتد، اگر این بلوک را از پایین برجم بردارم، یا همه این ماشین‌ها را با هم از این سطح شیب‌دار هل بدهم، یا اگر طبقه دیگری به خانه عروسکم اضافه کنم چه اتفاقی می‌افتد. 
  •  یا این‌که ممکن است خیلی ساده به شما بگویند که می‌خواهند کدنویسی یاد بگیرند.

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

ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را می‌توانید از کتابخانه‌های عمومی سراسر کشور و نیز از دکه‌های روزنامه‌فروشی تهیه نمائید.

ثبت اشتراک نسخه کاغذی ماهنامه شبکه     
ثبت اشتراک نسخه آنلاین

 

کتاب الکترونیک +Network راهنمای شبکه‌ها

  • برای دانلود تنها کتاب کامل ترجمه فارسی +Network  اینجا  کلیک کنید.

کتاب الکترونیک دوره مقدماتی آموزش پایتون

  • اگر قصد یادگیری برنامه‌نویسی را دارید ولی هیچ پیش‌زمینه‌ای ندارید اینجا کلیک کنید.
برچسب: 

ایسوس

نظر شما چیست؟