# سكراتش (لغة برمجة)

طُورت سكراتش في مختبرات شركة MIT العالمية والمتخصصة في مجالات البرمجة والحاسوب. وذلك لأهداف تربوية تعليمية تمكن الطلاب من التعلم والتعبير عن قدراتهم من خلال تقنيات حديثة. حتى الآن طور الطلاب، مستخدمو السكراتش حول العالم، أكثر من 11 مليون برنامج، يقومون بنشرها في موقع السكراتش الرسمي: scratch.mit.edu هنالك صعوبات تواجه الطلاب في المراحل الثانوية في فهم البرمجة وخاصة برمجة الكائنات (Object Oriented Programming). لذلك، فإنّ التعلم المبكر والمبسّط لهذا النوع من البرمجة، من شأنه أن يهيء الجيل الجديد للمرحلة القادمة. إذ يتعلم الطالب من خلال هذه الكراسة مفاهيم برمجية أساسية كالتكرار والشروط، وكذلك المفاهيم الأكثر تعقيدا كالكائنات واللبنات، بالإضافة إلى مفاهيم وأفكار رياضية هامة كنظام الإحداثيات والمتغيرات والأعداد العشوائية. كل ذلك من خلال منظومة تعلم في إطار شيق وذي معنى. تحتوي هذه الكراسة على فعاليات ومهام توجه المتعلم نحو هذه المفاهيم بطرق شيقة.
في برنامج السكراتش يمكن تطوير قصصٍ تفاعلية، ورسومٍ متحركة، وألعابٍ موسيقية وفنية، وغيرها من الإبداعات المحوسبة. تمكن سكراتش المستخدم من إدخال صور، أصوات ولا يمكن إضافة فيديو الا من خلال مجموعة من الصورعلى شكل gif، كما وتمكن من إجراء تغييرات عليها والتحكم فيها. تعتمد السكراتش على الكائنات المدخلة للبرنامج، حيث أن الكائنات يمكنها أن تكون نصوصاً، صوراً أو رسومات. من الممكن برمجة هذه الكائنات من خلال إدخال مقاطع برمجية - ما يسمى بـ «لبنات» - على هذه الكائنات وتحديد معطيات لهذه الأوامر البرمجية، والتي تؤدي بدورها إلى إمكانية تغيير الهيئة، الحركة أو الصوت الخارج من هذه الكائنات. تبرمج التحكمات في هذه الكائنات من خلال أوامر تتعلق بالضغط على لوحة مفاتيح (مثل الضغط على الأسهم)، الفأرة (مثل النقر مزدوج على زر الفأرة) أو بعد مرور فترة زمنية محددة (مثل 5 ثوان). هذا المزيج الشيق ينتج برنامج حاسوب متناسقاً يحفز المستخدم نحو التميز والإبداع في تطوير الأفكار إلى حيز التنفيذ.

## مواضيع

بيئة البرنامج تذكرنا إلى حد ما بالمخطط الانسيابي. كما يتم تمثيل بنوده بطريقة بصرية.

### الأشكال من القطع

هناك عدة أشكال من اللبنات، وكل شكل له معنى. هذه الأشكال (خطوط ترمز الأنفاق حيث يتم تحديد خيار من الخيارات المناسبة أو الكتابة الحرة):
* الأبيض الضلع العلوي لديها الموجي - أي حكم في هذه الطريقة هو بداية السيناريو والعمل على إنجاحه. على سبيل المثال: «عندما ضغطت مفتاح __»
* الأبيض - أي حكم المستخدمة. على سبيل المثال: «تحريك الخطوات __» (هذا البرنامج هو الخطوة بكسل [B] الكمبيوتر شاشة).
* هناك شكل من أشكال إشارة ج - أي نوع من حلقة، وهذا هو، مرة أخرى على الإجراءات المتخذة في إطار الشكل. على سبيل المثال: «إلى الأبد».
* البيضاوي - قيمة رقمية أو حرفية. على سبيل المثال: «موقف على المحور Y».
* الماس (<==>) - الشروط التي وضعت في المكان المخصص في شكل مختلف. يمكن الحصول على صحيح (صحيح) أو False (خطأ) مثال: «ميكروفون بصوت عال؟».

### مجموعات من القطع

وتنقسم إلى 8 مجموعات:
* التحكم: تحتوي هذه المجموعة على جميع اللبنات التي تستخدم للتحكم في سير المقاطع البرمجية وآلية بدء تنفيذها. على سبيل المثال: "انتظر ثواني هذه المجموعة من اللبنات ذات لون برتقالي.
* حركة: تحتوي هذه المجموعة على جميع اللبنات التي تستخدم للتحكم في حركة الكائنات وتحديد حركتها واتجاه حركتها وسرعتها في الحركة. على سبيل المثال: «استدر 15 درجة». هذه المجموعة من اللبنات ذات لون أزرق.
* التحسس: تحتوي هذه المجموعة اللبنات التي تستخدم لتنفيذ الأوامر عندما يحدث حدث آخر داخل المشروع. على سبيل المثال: «مفتاح المسافة مضغوط» فنفذ كذا أو إذا أصبح لون الكائن أحمر فنفذ كذا، هذه المجموعة ذات لون الأزرق الفاتح.
* المظاهر: تحتوي هذه المجموعة على جميع اللبنات التي تستخدم في التحكم في مظهر الكائنات من حيث الحجم واللون وغيرها والتحكم في ماذا يقول الكائن. على سبيل المثال: «قل لمدة ثانية كذا». هذه المجموعة ذات لون نيلي.
* الأرقام: تحتوي هذه المجموعة على جميع اللبنات التي تستخدم للتحكم في تنفيذ مقاطع برمجية بناءا على القيم العددية التي تحدد من خلالها. على سبيل المثال: "__ + __" (كقيمة رقمية). هذه المجموعة ذات لون الأخضر.
* الأصوات: تحتوي هذه المجموعة على جميع اللبنات التي تستخدم للتحكم في الأصوات التي تخرج أثناء تنفيذ المشروع. على سبيل المثال: «إيقاف كافة الأصوات». هذه المجموعة ذات لون لون زهري.
* المتغيرات: تحتوي هذه المجموعة على جميع اللبنات التي تستخدم لإنشاء وحذف المتغيرات داخل المقاطع البرمجية. على سبيل المثال: «إنشاء متغير». هذه المجموعة ذات لون أحمر.
* القلم: تحتوي هذه المجموعة على جميع اللبنات التي تستخدم للرسم أثناء تنفيذ المقاطع البرمجية. على سبيل المثال: «تعيين لون القلم كذا» أو «أنزل القلم». هذه المجموعة ذات لون الأخضر الغامق.