مذكـرة المحـترف برنامج سكراتش
في الكمبيوتر
وتكنولوجيا المعلومات والاتصالات
الصف الأول الإعدادي الفصل
الدراسي الثاني


إعداد
محمد عبد السلام هاشم
معلم الكمبيوتر وتكنولوجيا المعلومات
والاتصالات
Email : dreamhanyhashem@yahoo.com
Email : dream_hashem2@hotmail.com
Tel : 01012991929
البرمجة
بواسطة سكراتش Scratch
الموضوعات
المقترحة وتسلسل العرض : -
? تعريف استخدام Scratch - واهميته فى تعليم
اساسيات البرمجة
? الاصدارات المختلفة
من scratch
- وكيفية تثبيت البرنامج
? استعراض واجهة برنامج سكراتش وكيفية التعامل معها
? التعرف على منصة
العمل Stage
? الاحداثيات و الموضع و التنقل و الانزلاق
? كيفية الحفظ و الرفع على الانترنت
? كيفية التعامل مع الكائنات sprite وتصميم كائن جديد
? التعرف على ال Blocks واستعراض تقسيمتها
المختلفة
? التاثيرت على الصورة و امثلة عملية
? المتغيرات
? العمليات الحسابية
? امثلة لمشاريع مختلفة : العاب – قصص متحركة – تجارب
عملية – عمليات حسابية
?
مقدمة
نبذة تاريخية عن لغات البرمجة
العربية
من استقراء تاريخ لغات البرمجة
العربية ، يمكن تلخيص المراحل التي مرت بها في الآتي:
· خلال العقدين 1978-1998 ، فإن معظم اللغات العربية التي
صدرت في هذين العقدين تشبه في صياغتها اللغات سي، كوبول ، البيسك ، و باسكال.
·
في
عام 2006 ظهرت لغة جيم كبديل عربي للغة سي . تعتبر جيم خطوة موفقة في دعم اللغة
العربية. تدعم
جيم مفاهيم البرمجة الإجرائية و الرسم .
· في عام 2008 ظهرت لغة سكراتش العربي ، و هي لغة عالمية
تدعم العربية.
· في عام 2009 ظهرت لغة ضاد حيث تدعم مفاهيم البرمجة
الإجرائية و الرسم ، تعتبر أبسط من لغة جيم.
· في عام 2010 ظهرت لغة كلمات . تدعم كلمات خصائص البرمجة
الإجرائية و البرمجة حدثية التوجه و الرسوم الساكنة و المتحركة. [2]
نشأة سكراتش
تم تطوير لغة سكراتش بواسطة مجموعة Lifelong
Kindergarten في مختبر
الوسائط بمعهد ماساتشوستس للتقنية (MIT)،
بالتعاون مع مدرسة الدراسات العليا ونظم المعلومات بجامعة كاليفورنيا في لوس
انجليس، بدعم مالي من مؤسسة العلوم الوطنية، و مايكروسوفت و مؤسسة إنتل و نوكيا ،
و مختبر البحوث ووسائط الإعلام بمعهد ماساتشوستس للتكنولوجيا.

تم تطوير
سكراتش بناء على رؤية تعليمية تدعى "مهارات التعلم في القرن الحادي و
العشرين". تعرّف هذه الرؤية تسع مهارات مصنفة إلى ثلاث دوائر رئيسة :
1.
مهارات الاتصال و المعلومات
ü
مهارات المعلومات و أدب
الوسائط
ü
مهارات الاتصال
2.
مهارات التفكير و حل المشكلات
ü
التفكير النقدي و تفكير النظم
ü
تعريف المشكلة و صياغتها و
حلها
ü
الابداع و حب
الاستطلاع
3.
مهارات التوجه الفردي و
الجماعي
ü
مهارات التعاون الجماعي
ü
التوجه الذاتي
ü
القدرة على المحاسبة و التغيير
ü
|
المسؤلية
الاجتماعية.
تقدم سكراتش أرضية منخفضة حيث سهولة البدء ، و سقفا
عاليا حيث إمكانية إنشاء مشاريع معقدة .
تدعم سكراتش مفاهيم البرمجة الإجرائية و مفاهيم البرمجة حدثية التوجه. أهم
خصائص سكراتش البساطة . تم تطوير سكراتش استنادا إلى Squeak و Logo و Etoys.
مشروع سكراتش مفتوح المصدر و مغلق التطوير. تدعم لغة
سكراتش بيئات تشغيل ويندوز و ماكنتوش. و تعتبر بيئة سكراتش منافسا أكثر بساطة
للبرنامج الشهير فلاش من ماكروميديا.
سكراتش العربي
سعيا من شتى الأمم لإكساب أبنائهم مهارات القرن 21، فقد
تمت ترجمة سكراتش إلى أكثر من خمسة و
أربعين لغة حية. و تم نقل مشروع سكراتش إلى العربية بواسطة فريق من كلية تقنية
المعلومات في جامعة الإمارات العربية المتحدة ، و بالتعاون مع مجموعة من المتخصصين
في الأولمبياد المعلوماتي السوري
سكراتش بيئة سكراتش
v
المنصة
المنصة هي الساحة التي تتحرك عليها
الكائنات. و هي مصممة وفقا لإحداثيات ديكارت. يمكن الإشارة إلى هذه الإحداثيات
ديناميكيا من الرماز.
vلائحة
الكائنات
يمكن من خلال لائحة
الكائنات إضافة أو حذف الكائنات المراد استخدامها في المشروع.
vالمقاطع
البرمجية
يحتوي لوح المقاطع البرمجية على مكدس أو
أكثر. يحتوي كل مكدس على عدة لبنات.
vالمظاهر
كل كائن لديه العديد من المظاهر التي
سيرتديها خلال تنفيذ البرنامج. يمكن من لوح المظاهر إضافة أو إزالة أو تحرير أي
مظهر.
vالأصوات
كل كائن لديه العديد من الأصوات التي
سيقلدها أثناء تنفيذ البرنامج. يمكن من لوح الأصوات إضافة أو إزالة أو تسجيل
الأصوات.
vلوح
اللبنات
يحتوي لوح اللبنات على لبنات شبه جاهزة
من الرماز . يمكن استخدام هذه اللبنات بسحبها إلى منطقة المقاطع البرمجية. ينقسم لوح اللبنات إلى ثمانية أنواع من الرماز
، هي : التحكم ، التحسس ، الأرقام ، المتغيرات ، الحركة ، المظاهر ، الصوت ، و القلم.
vالتحكم
يحتوي لوح التحكم على لبنات للتحكم في
مسار تنفيذ الرماز. أهم هذه اللبنات:
·
عند نقر الزر
يتم تنفيذ المقطع البرمجي
أدناه. يمكن استخدامه لعدة مقاطع برمجية (مكدسات ) من أجل التنفيذ المتوازي.


·
عند ضغط المفتاح
المعني(المسافة أو غيره) يتم تنفيذ المقطع البرمجي أدناه. يستخدم كمعالج لأحداث
لوحة المفاتيح. يمكن استخدامه من أجل التنفيذ المتوازي.

·
عند نقر الكائن المعني ،
يتم تنفيذ المقطع البرمجي أدناه. يستخدم كمعالج لأحداث الفأرة. يمكن استخدامه من
أجل التنفيذ المتوازي.

·
يستخدم لتنفيذ تكرار غير
منته.

·
يستخدم لتنفيذ تكرار عددا
معلوما من المرات. يمكن وضع أي تعبير عددي في الفراغ الأبيض.

·
يستخدم لبث إشارة معينة و
بشكل غير متزامن.

·
يستخدم لبث إشارة معينة
بشكل متزامن.

·
يستخدم لتنفيذ معالج حدث
لاستقبال إشارة معينة. يمكن استخدامه لتنفيذ متواز.

·
يستخدم لتنفيذ مشروط. يمكن
ملاحظة الفراغ السداسي بعد "إذا". يدل هذا الشكل على أن التعبير المنتظر
هو من النوع المنطقي فقط.

v
الأرقام
يحتوي
لوح الأرقام على لبنات لتنفيذ عمليات حسابية و منطقية. أهم هذه اللبنات:
·
يستخدم لتنفيذ عملية جمع
بين تعبيرين عدديين (عددين أو متغيرين أو تعبيرين معششين) . يوجد لبنات لتنفيذ
العمليات الحسابية الطرح ، القسمة و الضرب. الشكل البيضاوي يد على أن القيمة
المعادة عددية.

·
يستخدم للحصول على عدد
صحيح عشوائي. يمكن وضع أي تعبير عددي في الفراغ الأبيض.

·
تستخدم هذه اللبنات لتنفيذ عمليات مقارنة بين
تعبيرين عدديين. الشكل السداسي يدل على أن القيمة المعادة منطقية (صح أو خطأ).

·
تستخدم هذه اللبنات لتنفيذ عمليات منطقية بين
تعبيرين منطقيين.

v
المتغيرات
يمكن من لوح المتغيرات إنشاء متغير أو
حذفه. و يمكن إنشاء لائحة أو حذفها.
بعد إنشاء متغير ، يمكن التفاعل معه من خلال
اللبنات التالية:
·
يستخدم للوصول لقيمة
المتغير "س".


·
يستخدم لتغيير قيمة
المتغير بالمقدار المعطى .

أما
عند إنشاء لائحة ، فيمكن التفاعل معها من خلال اللبنات التالية:
·
يستخدم لإضافة عنصر إلى
اللائحة .

·
يستخدم لحذف العنصر ذي
الترتيب المعطى في الفراغ الأبيض.

·
يستخدم لإضافة عنصر بعد
العنصر ذي الترتيب المعطى.

·
يستخدم لتعديل قيمة
العنصر المعطى بالتعبير المعطى.

·
يستخدم للوصول إلى العنصر
ذي الترتيب المعطى.

·
يستخدم للوصول إلى طول
اللائحة.

هناك لعبة شهيرة من ألعاب الحظ
تنص على القواعد التالية:
·
اللاعب لديه زهرتان أو نردان
لإلقائهما،
·
كل نرد له ستة أوجه، مرقمة من
1 إلى 6،
·
بعد أن يلعب اللاعب المرة
الأولى و يستقر النردان ، يحسب مجموع العددين على سطحيهما العلوي :
o
إذا كان المجموع 7 أو 11 فإن
اللاعب يفوز و تنتهي اللعبة
o
إذا كان المجموع 2 أو 3 أو 12
فإن اللاعب يخسر و تنتهي اللعبة
o
ما عدا ذلك يستمر اللاعب في
اللعب ويصبح هذا المجموع مجموع ما يمتلكه اللاعب.
·
يستمر اللاعب في اللعب ما لم :
o
يحصل على مجموع مساو للمجموع الأول،
حينئذ يفوز اللاعب و تنتهي اللعبة.
o
يحصل على مجموع 7 ، حينئذ يخسر
اللاعب و تنتهي اللعبة.
الكائنات
المستخدمة في اللعبة:
1. زر للبدء
2. زر للاستمرار
3. رسالة تعرض نقاط اللاعب إذا كان مستمرا
4. رسالة تعرض حالة اللاعب فائزا كان أم مستمرا أم خاسرا
5. النرد الأول، يتغير فقط في حالة الاستمرار
6. النرد الثاني، يتغير فقط في حالة الاستمرار
7. النرد الأول، يتغير فقط في المرة الأولى
8. النرد الثاني، يتغير فقط في المرة الأولى.
المظاهر
كل من الكائنات 1،2،3،4 يحتوي على مظهر واحد ، هو
المظهر المعروض. أما الكائنات الأخرى ، فكل منها يحتوي على 6 مظاهر مرقمة من 1 إلى
6 .يشير كل مظهر من هذه المظاهر الستة إلى وجه من أوجه النرد. سيتم التعامل مع هذه
المظاهر ديناميكيا من خلال الأوامر في المقاطع البرمجية.
الأصوات
يحتوي الكائنان 1 و 2 على ثلاثة مقاطع صوتية :
o
“تهانينا"، ليشغل عندما
يفوز اللاعب،
o
"تابع" ، ليشغل عندما يستمر
اللاعب،
o
"عفوا" ، ليشغل عندما يخسر اللاعب.
المقاطع
البرمجية
|
المعيار
|
|||
الميزة
|
القرائية
|
الكتابية
|
الاعتمادية
|
البساطة
أنواع
البيانات
تصميم
الإعراب
الدعم
من أجل التجريد
التعبيرية
اختبار
النوع
معالجة
الاستثناءات
التماثل
المقيد
|
●
●
●
|
●
●
●
●
●
|
●
●
●
●
●
●
●
●
|
جدول 1 : الخصائص المؤثرة في تقييم لغة البرمجة
قبل أن نطبق هذا المعيار على سكراتش ،
ينبغي أن نلاحظ أن سكراتش ليست لغة نصية كضاد أو جيم و إنما هي محرر مرئي صرف. ما
يعني أن بعض المحاكمات التالية قد لا يمكن تطبيقها على سكراتش.
أولا:
القرائية
يقصد بالقرائية سهولة قراءة الرماز للغة
المستهدفة. من العوامل التي تؤثر في القرائية مع سكراتش:
ü
البساطة الكلية : تعتبر سكراتش
بسيطة بشكل متطرف يجعلها تتفوق على اللغات عالية المستوى، حيث لا يحتاج المتعلم
إلا إلى عدد قليل من التراكيب الأساسية لتعلمها. و بما أن سكراتش موجهة للأحداث و
المبتدئين فقد كان الهدف الأساسي لمصممي سكراتش البساطة ، حيث إن سكراتش تخصص لكل نوع من التراكيب البرمجية لونا معينا يسهل عملية
القراءة ؛ فتراكيب التحكم ذات لون برتقالي ، و تراكيب الأرقام ذات لون أخضر ، و
هكذا.
ü
أنواع البيانات: توفر سكراتش
العديد من أنواع البيانات ، تشمل الأعداد و المنطق و سلاسل الحروف و الصور و
الأصوات كما يمكن إنشاء لوائح من نوع عددي أو محرفي. و نظرا إلى أن سكراتش موجهة
للمبتدئين ، فهي لا تفرق بين العدد الصحيح و العائم أو الحقيقي كما لا تفرق بين
الحرف و سلسلة من الحروف . و عند الإعلان عن متغير ، فإن هذا المتغير يمكنه أن
يحتوي على أي نوع أساسي ( العدد الصحيح أو الحقيقي ، الحرف ، سلسلة من الحروف). و
عند الإعلان عن لائحة ، فإنها يمكن أن تحتوي في بعض عناصرها على نوع عددي و في
البعض الآخر على نوع محرفي.
ü
تصميم الإعراب: من الأمثلة
التي توضح أثر التصميم النحوي على القرائية ما يلي:
o
صيغة المعرف. لا تضع سكراتش أي
قيود على أسماء المتغيرات ، يمكن أن يكون اسم المعرف من أي طول من حروف يونيكود ،
و يمكن أن يحتوي على كلمات خاصة.
o
الكلمات الخاصة. في سكراتش ،
تتجلى الكلمات الخاصة في النصوص على اللبنات . هذه الكلمات الخاصة لا يمكن
تحريرها. النصوص الموجودة على اللبنات تظهر لمن يقرأها و كأنه يقرأ نصا مكتوبا
بلغة طبيعية ، على سبيل المثال ، نقرأ "اختر عددا عشوائيا بين 1 و 10".
o
الصيغة و المدلول. إن تصميم
الجمل بحيث يكون مظهرها يدل على الغرض
منها يساعد على القرائية ، أي أن المعنى لا يفهم من السياق و إنما من الصيغة و
بدون لبس. حرص مصممو سكراتش على تفادي اللبس ، حيث إن كل تركيب برمجي يدل على معنى
واحد و واحد فقط.
ثانيا
: الكتابية
يقصد بالكتابية سهولة كتابة الرماز للغة
المستهدفة. من العوامل التي تؤثر في الكتابية مع سكراتش ، بالإضافة إلى العوامل
المؤثرة في القرائية :
ü
الدعم من اجل التجريد: بإيجاز
، التجريد هو القدرة على تعريف و من ثم استخدام تراكيب أو عمليات معقدة بالشكل
الذي يسمح بإهمال التفاصيل. هناك نوعان من التجريد، على مستوى العملية و البيانات.
تجريد العملية يتجلى في سكراتش مع إمكانية إنشاء عملية
أو إجراء مرة واحدة و من ثم استدعاء تلك العملية عدة مرات من أماكن مختلفة من
البرنامج من خلال بث رسالة معرفة مسبقا ليلتقطها الاجراء المذكور و ينفذ ما لديه
من أوامر.
تجريد البيانات لا يوجد حاليا في سكراتش ؛
حيث لا يمكن تعريف أنواع جديدة.
ü
التعبيرية:هي قدرة اللغة على
توفير ما يحتاجه المستخدم ليعبر عن أوامره. سكراتش تمكن المستخدم من التعبير عما
يريد بطريقة أكثر من مريحة. مثلا ، بدلا من استخدام لبنة التحكم "اختبر
باستمرار إذا صح" ، توفر سكراتش لبنة التحكم "كرر باستمرار".
ثالثا
: الاعتمادية
يقال عن برنامج ما إنه يمكن الاعتماد عليه
، إذا كان يعمل كما يفترض منه تحت جميع الظروف. من العوامل التي تؤثر في
الاعتمادية في سكراتش بالإضافة إلى العوامل المؤثرة في الكتابية:
ü
فحص النوع. على الرغم من أن
هذا العامل لا يتوفر إلا في اللغات المتقدمة – السي لا توفر هذه الميزة- إلا أن
سكراتش تعفي مستخدميها من هذا العبء. عند الإعلان عن متغير ، فإن سكراتش تسند نوعا
ديناميكيا إلى هذا المتغير ، حيث يمكن لهذا المتغير أن يحتوي على أي نوع من
الأنواع الأساسية. و عندما تريد إضافة مقطع صوتي ، فإن سكراتش لا تسمح بالبحث إلا
عن أنواع محددة من الملفات ) mp3, wav, aif,au) . أما عندما تريد إضافة صورة
إلى كائن فإن سكراتش لا تسمح بالبحث إلا عن أنواع محددة من الملفات (GIF , PNG ,
BMP , JPG) . بإيجاز، في سكراتش لا يمكن أن يحدث ما يخل بتوافق النوع.
ü
معالجة الاستثناءات. هذه
الميزة يتوقع إضافتها إلى سكراتش.
ü
التماثل. يقصد بالتماثل أن
يشير اسمان مختلفان إلى نفس المتغير. هذه الميزة غير موجودة في سكراتش لأنها قد
تخل بالبساطة المطلوبة.
رابعا:
الكلفة
هناك عدة أوجه للكلفة:
ü
كلفة التعليم أو التدريب
لاستعمال اللغة ، و التي تتزايد عكسيا مع القرائية. بمقارنة سكراتش مع غيرها من
اللغات ، هذه الكلفة لا تكاد تذكر.
ü
كلفة كتابة البرامج ، و التي
تتزايد عكسيا مع الكتابية. هذا يعتمد على الغرض من اللغة ، لم يكن الهدف من سكراتش
إنتاج أعمال سينمائية بقدر ما كان تقديم مهارات التعلم في القرن 21 إلى الأحداث و
المراهقين. بالنظر إلى الهدف التعليمي البحت من سكراتش ، فإن هذه الكلفة لا تكاد
تذكر.
الخاتمة
يبدو أن سكراتش ينتظرها مستقبل واعد. إن
ترجمة بيئة سكراتش إلى أزيد من خمسة و أربعين لغة حية يدل على إيمان كل أمة بأهمية
الحصول على مهارات التعلم في القرن الحادي و العشرين.
من الخصائص المزمع إضافتها إلى سكراتش :
v
الاجرائيات و التوابع )
حاليا،يمكن تمرير الوسائط بوضعها في متغيرات عالمية)
v
تمرير المحددات و قيم الاعادة
v
العودية ( استدعاء الذات)
v
تعريف صفوف من الكائنات (حاليا
، يمكن تعريف صفوف من الاعداد أو المحارف فقط)
v
الوراثة
v
معالجة الاستثناءات
v
الإدخال من لوحة المفاتيح
v
الإدخال من ملفات.
ليست هناك تعليقات:
إرسال تعليق