اذهب إلى المحتوى

برمج خوارزميتك الأولى عبر سكراتش Scratch


رشا سعد

ازداد عدد الأطفال ممن يتلقون التعليم من المنازل في الآونة الأخيرة وهذا استدعى إيجاد طرق مبتكرة ومميزة للتعليم فقد تغيرت الصورة النمطية عن غرفة الصف وفي هذه المقالة سأشارك معكم كيف تعلمت البرمجة واكتشفتها سويًا مع طلابي.

ما هي الشيفرة

الأجهزة الإلكترونية على اختلاف أنواعها من هواتف ذكية وحواسيب وألعاب الفيديو وحتى الغسالات جميعها تستخدم الشيفرة code لتنفيذ مهامها، ومهما تطور علم الذكاء الاصطناعي وتعلم الآلة فالشيفرة تحتاج دائمًا لعقول بشرية تكتبها وهؤلاء هم المبرمجون.

إذًا فالشيفرة يكتبها المبرمجون وتتكون من مجموعة خوارزميات هي بدورها لوائح من التعليمات المركبة والمنظمة بدقة فائقة لتبدو أشبه بالوصفة، وتحلل هذه الشيفرة وتترجم إلى لغة الآلة لينفذها الجهاز، وبالتالي المهارة الأولى الواجب تعلمها هي كتابة التعليمات وفق القواعد والترتيب الصحيح لتتمكن الحواسيب من فك تشفيرها ومعالجتها.

ما هو سكراتش Scratch؟

سكراتش Scratch منصة خاصة بتعليم البرمجة للأطفال من عمر 8 سنوات فما فوق وذلك عبر لغة برمجة مرئية تعتمد تحريك اللبنات (الكتل) من خلال السحب والإفلات لتشكل مع بعضها رسومًا متحركة أو ألغاز أو ألعاب فيديو.

يسهل سكراتش البرمجة على الصغار لكونه يعتمد على لبنات مرئية مبرمجة وجاهزة تتطلب التركيب فقط هو أشبه بتركيب المكعبات فهو لا يتطلب الكتابة الإملائية الصحيحة للتعليمات بخلاف البرمجة التقليدية.

سكراتش أكثر من أداة تعليمية له بعد اجتماعي فهو يشجع المستخدمين على مشاركة مشاريعهم وإعادة دمجها معًا. كما أنه يوفر إمكانية العمل دون اتصال للحالات التي تملك مصادر إنترنت محدودة كبعض المنازل والغرف الصفية.

تعلم مصطلحات البرنامج

هذه الفقرة مهمة حتى لمن استخدم سكراتش قبلًا وذلك لتعلم مصطلحات البرنامج ومنطقه.

02-AR-codekids2_1_interface.png

يمكنك إنشاء لعبة فيديو باستخدام سكراتش عبر تحريك لبنات المقاطع البرمجية code blocks وتركيبها معًا لتكون سكريبت بعملية أشبه ما تكون بتركيب المكعبات، والسكريبت -نسميه أيضًا بالخوارزمية- هو لائحة من التعليمات المرتبة على شكل وصفة، أما الكائن sprite الظاهر في الصورة فهو شخصية مصغرة أو كيان ما ضمن اللعبة والمنصة هي خلفية اللعبة ويتم التحكم بكليهما عبر السكريبت.

كل سكريبت ضمن البرنامج يبدأ بلبنة برمجية مميزة تسمى قبعة الحدث event hat وتتميز رسوميًا عن غيرها من اللبنات بأنها مدورة من الأعلى ومهمتها انتظار حدث معين ليبدأ ومن ثم إعطاء أمر التشغيل لكافة اللبنات التي تليها في السكريبت.

لنبدأ البرمجة

جرب التحديات التالية لتبدأ رحلتك البرمجية عبر سكراتش

1. التحدي الأول: تحريك الكائن لليمين

المطلوب إنشاء خوارزمية تحرك الكائن لليمين عند الضغط على السهم الأيمن في لوحة المفاتيح.

في البرمجة الحلول دائمًا متعددة وفي الصورة أدناه نعرض احتمالين لحل هذا التحدي:

img03-AR-codekids2_2_code.png

لنناقش الحل:

  1. ما الذي سيحدث لو غيرنا الرقم؟
  2. ما الذي سيحدث إن وصل الكائن أثناء حركته إلى حافة الشاشة؟
  3. ما هي اللبنة الواجب استخدامها حتى لا يختفي الكائن عند وصوله لحافة الشاشة؟

انظر التغيرات أدناه:

img04-AR-codekids2_3_code.png

ستلاحظ بعد التنفيذ أن الكائن يصل لحافة الشاشة ويبدأ بالاهتزاز إلى الأعلى والأسفل وهذا السلوك في السكريبت يدعى بالخطأ bug وتصحيحه يدعى بتنقيح الخطأ debugging، وفي حالتنا يتم التصحيح عبر اختيار الكائن والضغط على زر الاتجاهات واختر الأيقونة يمين/يسار أو الأيقونة الخاصة بمنع الدوران كما في الصورة أدناه:

img05-AR-codekids2_4_code.jpg

نفذ مجددًا هل تلاحظ أي أخطاء؟

  1. إن توقف الاهتزاز عند حافة الشاشة فانتقل للتحدي التالي.
  2. إن كان الكائن في برنامجك يتحرك يسارًا عندما يصل لحافة الشاشة حتى وأنت تضغط السهم الأيمن فأنت إذًا جاهز للتحدي التالي.

img06-AR-codekids2_5_code.png

2. التحدي الثاني: تحريك الكائن لليسار

المطلوب إنشاء خوارزمية تحرك الكائن لليسار عند الضغط على السهم الأيسر في لوحة المفاتيح. بنفس طريقة التحدي الأول ننجز هذا التحدي لاحظ الحل في الصورة أدناه.

img07-AR-scratch3-left-right_answer.png

بعد الانتهاء سمي مشروعك واحفظه عبر الخيار حفظ أو حفظ الآن ولا حاجة لاستخدام خيار حفظ باسم أو حفظ نسخة لأن ذلك يعني مضاعفة المشروع.

لا تتوقف عند هذا الحد

البرمجة تعني التجريب والمحاولة مجددًا حتى الوصول للنتيجة المطلوبة وهذا بالضبط ما يجعلها مادتي المفضلة في التدريس، ولا تتوقف عند هذه الأمثلة افترض مشكلة ما وحاول الوصول إلى حل لها اطلع على لبنات المقاطع البرمجية الموجودة وابني السكريبت اللازم.

الأهم دائمًا أن لا تيأس وتذكر أنه لا يوجد إجابة خاطئة هنا فالموضوع كله يتعلق بالإبداع وإيجاد الحلول والاستمتاع.

ترجمة -وبتصرف- للمقال Code your first algorithm in Scratch لصاحبه Jess Weichler.

اقرأ أيضًا


تفاعل الأعضاء

أفضل التعليقات

لا توجد أية تعليقات بعد



انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أضف تعليق

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • أضف...