تعلم البرمجة بدون كتابة اكواد عن طريق موقع Scratch

الجمعة, يوليو 31, 2015


تعلم البرمجة بدون كتابة اكواد عن طريق موقع Scratch

اولا: عليك معرفة ان عملية البرمجة لموقع او برنامج او لعبة لا تعنى فقط كتابة اكواد ولكن تحتاج لابداع وتخطيط لما تريد انه تفعله ثم بعد ذلك تطبيقه بكتابة الاكواد التى تعلمتها بلغتك البرمجية. اذن موقع"Scratch" وهو لغة برمجة اونلاين سيوفر لك امر كتابة الاكواد اذ كل ما عليك فعله هو اخذ ال"blocks" الخاصة بالاوامر التى تريدها ووضعها فى منطقة ال "Script Area" للكائنات المحددة "Sprites".
البرمجة, تعلم البرمجة, البرمجة بدون كتابة اكواد, موقع Scratch

الصورة السابقة تعتبر ملخص للموقع حيث بعد الدخول على رابط الموقع اسفل الموضوع والتسجيل به وتفعيل حسابك والبدء لعمل مشاريعك الجديدة "Create" سواء كانت لعبة او قصة او الغاز... الخ.
البرمجة, تعلم البرمجة, البرمجة بدون كتابة اكواد, موقع Scratch

ستدخل على هذه الصفحة وفى اول مشروع لك ستظهر قائمة "Help" لتاخذك فى جولة خطوة بخطوة وتعرفك على بعض الارشادات الهامة لانشاء مشروعك بشكل افضل (Step by Step - How To - Blocks).
البرمجة, تعلم البرمجة, البرمجة بدون كتابة اكواد, موقع Scratch

الان كل ما هو عليك هو اضافة الشخصيات والخلفيات فى الجزء الخاص بال"Sprites" والضغط على كل شخصية مثلا "Sprite1" وسحب ال "Blocks" التى تريدها من القائمة التى فى المنتصف مثلا "move (10) steps" ووضعها فى ال "Scripts Area".
البرمجة, تعلم البرمجة, البرمجة بدون كتابة اكواد, موقع Scratch

كما لاحظت فى الصورة السابقة قمت بسحب بعض ال "Blocks" إلى خانة ال "Script" ويجب وجود البلوك الخاص بالعلم الاخضر حيث هو بداية التشغيل للمشروع وعند الضغط عليه تم تنفيذ الكود وتحرك ال "Sprite1" 10 خطوات لليمين وان جعلت القيمة سالبة سيتحرك لليسار وتم ظهور كلمة "!Hello, World" وشئ اخير قبل البدء فى تطبيق عملى على لعبة بسيطة قمت بانشائها.

ان اردت ان تضيف شخصية اخرى عليك الضغط على "New Sprite" وتختار ما تريد وان اردت ان تجعلها وجها لوجه مع "sprite1" فعليك بالضغط على هذه الشخصية ثم الضغط على "Costumes" ثم الضغط على "Flip left-right" كما فى هذه الصورة:
البرمجة, تعلم البرمجة, البرمجة بدون كتابة اكواد, موقع Scratch

وهذا الامر مفيد جدا اذا كنت ستقوم بانشاء قصص والان ستعرف ان البرمجة تحتاج إلى الابداع والتخطيط ومعرفة كيفية التطبيق عن طريق الاكواد فعلى سبيل المثال انا اريد صنع لعبة بسيطة عبارة عن سمكة قرش تاكل اسماك صغيرة واريد ان يوجد توقيت مثلا 60 ثانية امام اللاعب وعداد يسجل ال"Score" الذى يمثل عدد الاسماك التى اكلها اللاعب ثم بعد انتهاء الوقت يظهر "Game Over".

1- تحديد شخصيات وخلفية اللعبة "Stage backdrops" وستجد فى الصورة اننى وضعت 3 خلفيات يتم التبديل كل 20 ثانية.
البرمجة, تعلم البرمجة, البرمجة بدون كتابة اكواد, موقع Scratch

2- تحديد الحركة لهذه الشخصيات اللاعب سيستخدم سمكة القرش لذلك يجب تحديد الازرار لسمكة القرش وليكن مثلا الاسهم فى الكيبورد.
البرمجة, تعلم البرمجة, البرمجة بدون كتابة اكواد, موقع Scratch

3- الاسماك الاخرى ستتحرك حركة عشوائية وعلى اللاعب اصتيادها وكذلك نريد اضافة ال "Score" وال "Timer" للعبة.
البرمجة, تعلم البرمجة, البرمجة بدون كتابة اكواد, موقع Scratch

فى الصورة السابقة قمت باظهار ال"Timer" واضافة ال"Score" وجعلته بصفر عند بداية اللعبة وقمت بتقليل حجم السمكة إلى 50% وجعلتها تقوم بحركة عشوائية كل 1 ثانية على طول ال"Stage Area" وعلى اللاعب تحريك سمكة القرش بأسهم الكيبورد ويسعى وراء السمكة لالتقاطها حتى تنتهى ال60 ثانية وعندما تلتقط سمكة القرش احد الاسماك ستخفى السمكة وبعد ثانية ونصف تظهر مره اخرى.

4- اريد اضافة شئ اخر وهو ان يصدر القرش صوتا "Sounds" عند التقاط اى سمكة بالاضافة إلى غلق فمه لمدة نصف ثانية وهذا يعنى تغير الشكل لذا عليك اضافة الشكل الجديد فى "Costumes" كما فى هذه الصورة.
البرمجة, تعلم البرمجة, البرمجة بدون كتابة اكواد, موقع Scratch

ثم بعد ذلك يتم استخدام "next costume "Block فى ال"Scripts" الخاص بسمكة القرش كما فى هذه الصورة.
البرمجة, تعلم البرمجة, البرمجة بدون كتابة اكواد, موقع Scratch

كما رأيت فى الصورة السابقة فقد تم استخدام قاعدة "if" حيث اذا تلامست سمكة القرش مع اى سمكة سوف تصدر صوتا (صوت الالتهام) وسوف يتغير ال"Score" بمقدار 1 وسوف يتغير للشكل الثانى (مغلق فمه) لمدة نصف ثانية ثم بعد ذلك يتغير للشكل التالى (فاتح فمه) وهكذا حتى ينتهى الوقت ويظهر لك "Game Over" وكل هذا تم بدون كتابة اكواد.

يمكنك ابتكار وعمل ماتريد عن طريق هذا الموقع ولكن عليك التفكير اولا ماذا تريد ان تفعل؟ وكيف ستنفذه؟ ولن تحتاج لمعرفة مسبقة بالاكواد وكذلك يمكنك مشاهدة مشاريع الاخرين عن طريق الضغط على "see inside" ورؤية كيف فعل الاخرين مشاريعهم وعمل "remix" أيضا لمشاريعهم.
3- رابط موضوع (CS001x: Introduction to Computer Science and Scratch)
4- رابط موضوع (CS002x: Programming in Scratch)


.I am Geophysicist, but I love Computer Science

Other Interesting Articles

Previous
Next Post »