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

رشا سعد

الأعضاء
  • المساهمات

    23
  • تاريخ الانضمام

  • تاريخ آخر زيارة

كل منشورات العضو رشا سعد

  1. ازداد عدد الأطفال ممن يتلقون التعليم من المنازل في الآونة الأخيرة وهذا استدعى إيجاد طرق مبتكرة ومميزة للتعليم فقد تغيرت الصورة النمطية عن غرفة الصف وفي هذه المقالة سأشارك معكم كيف تعلمت البرمجة واكتشفتها سويًا مع طلابي. ما هي الشيفرة الأجهزة الإلكترونية على اختلاف أنواعها من هواتف ذكية وحواسيب وألعاب الفيديو وحتى الغسالات جميعها تستخدم الشيفرة code لتنفيذ مهامها، ومهما تطور علم الذكاء الاصطناعي وتعلم الآلة فالشيفرة تحتاج دائمًا لعقول بشرية تكتبها وهؤلاء هم المبرمجون. إذًا فالشيفرة يكتبها المبرمجون وتتكون من مجموعة خوارزميات هي بدورها لوائح من التعليمات المركبة والمنظمة بدقة فائقة لتبدو أشبه بالوصفة، وتحلل هذه الشيفرة وتترجم إلى لغة الآلة لينفذها الجهاز، وبالتالي المهارة الأولى الواجب تعلمها هي كتابة التعليمات وفق القواعد والترتيب الصحيح لتتمكن الحواسيب من فك تشفيرها ومعالجتها. ما هو سكراتش Scratch؟ سكراتش Scratch منصة خاصة بتعليم البرمجة للأطفال من عمر 8 سنوات فما فوق وذلك عبر لغة برمجة مرئية تعتمد تحريك اللبنات (الكتل) من خلال السحب والإفلات لتشكل مع بعضها رسومًا متحركة أو ألغاز أو ألعاب فيديو. يسهل سكراتش البرمجة على الصغار لكونه يعتمد على لبنات مرئية مبرمجة وجاهزة تتطلب التركيب فقط هو أشبه بتركيب المكعبات فهو لا يتطلب الكتابة الإملائية الصحيحة للتعليمات بخلاف البرمجة التقليدية. سكراتش أكثر من أداة تعليمية له بعد اجتماعي فهو يشجع المستخدمين على مشاركة مشاريعهم وإعادة دمجها معًا. كما أنه يوفر إمكانية العمل دون اتصال للحالات التي تملك مصادر إنترنت محدودة كبعض المنازل والغرف الصفية. تعلم مصطلحات البرنامج هذه الفقرة مهمة حتى لمن استخدم سكراتش قبلًا وذلك لتعلم مصطلحات البرنامج ومنطقه. يمكنك إنشاء لعبة فيديو باستخدام سكراتش عبر تحريك لبنات المقاطع البرمجية code blocks وتركيبها معًا لتكون سكريبت بعملية أشبه ما تكون بتركيب المكعبات، والسكريبت -نسميه أيضًا بالخوارزمية- هو لائحة من التعليمات المرتبة على شكل وصفة، أما الكائن sprite الظاهر في الصورة فهو شخصية مصغرة أو كيان ما ضمن اللعبة والمنصة هي خلفية اللعبة ويتم التحكم بكليهما عبر السكريبت. كل سكريبت ضمن البرنامج يبدأ بلبنة برمجية مميزة تسمى قبعة الحدث event hat وتتميز رسوميًا عن غيرها من اللبنات بأنها مدورة من الأعلى ومهمتها انتظار حدث معين ليبدأ ومن ثم إعطاء أمر التشغيل لكافة اللبنات التي تليها في السكريبت. لنبدأ البرمجة جرب التحديات التالية لتبدأ رحلتك البرمجية عبر سكراتش 1. التحدي الأول: تحريك الكائن لليمين المطلوب إنشاء خوارزمية تحرك الكائن لليمين عند الضغط على السهم الأيمن في لوحة المفاتيح. في البرمجة الحلول دائمًا متعددة وفي الصورة أدناه نعرض احتمالين لحل هذا التحدي: لنناقش الحل: ما الذي سيحدث لو غيرنا الرقم؟ ما الذي سيحدث إن وصل الكائن أثناء حركته إلى حافة الشاشة؟ ما هي اللبنة الواجب استخدامها حتى لا يختفي الكائن عند وصوله لحافة الشاشة؟ انظر التغيرات أدناه: ستلاحظ بعد التنفيذ أن الكائن يصل لحافة الشاشة ويبدأ بالاهتزاز إلى الأعلى والأسفل وهذا السلوك في السكريبت يدعى بالخطأ bug وتصحيحه يدعى بتنقيح الخطأ debugging، وفي حالتنا يتم التصحيح عبر اختيار الكائن والضغط على زر الاتجاهات واختر الأيقونة يمين/يسار أو الأيقونة الخاصة بمنع الدوران كما في الصورة أدناه: نفذ مجددًا هل تلاحظ أي أخطاء؟ إن توقف الاهتزاز عند حافة الشاشة فانتقل للتحدي التالي. إن كان الكائن في برنامجك يتحرك يسارًا عندما يصل لحافة الشاشة حتى وأنت تضغط السهم الأيمن فأنت إذًا جاهز للتحدي التالي. 2. التحدي الثاني: تحريك الكائن لليسار المطلوب إنشاء خوارزمية تحرك الكائن لليسار عند الضغط على السهم الأيسر في لوحة المفاتيح. بنفس طريقة التحدي الأول ننجز هذا التحدي لاحظ الحل في الصورة أدناه. بعد الانتهاء سمي مشروعك واحفظه عبر الخيار حفظ أو حفظ الآن ولا حاجة لاستخدام خيار حفظ باسم أو حفظ نسخة لأن ذلك يعني مضاعفة المشروع. لا تتوقف عند هذا الحد البرمجة تعني التجريب والمحاولة مجددًا حتى الوصول للنتيجة المطلوبة وهذا بالضبط ما يجعلها مادتي المفضلة في التدريس، ولا تتوقف عند هذه الأمثلة افترض مشكلة ما وحاول الوصول إلى حل لها اطلع على لبنات المقاطع البرمجية الموجودة وابني السكريبت اللازم. الأهم دائمًا أن لا تيأس وتذكر أنه لا يوجد إجابة خاطئة هنا فالموضوع كله يتعلق بالإبداع وإيجاد الحلول والاستمتاع. ترجمة -وبتصرف- للمقال Code your first algorithm in Scratch لصاحبه Jess Weichler. اقرأ أيضًا تعلم البرمجة مدخل إلى الخوارزميات البرمجة باستخدام سكراتش Scratch
  2. محرر النصوص Vim (ويلفظ فيم) هو المحرر الأكثر استخدامًا اليوم فهو متوفر في معظم الأجهزة على حساب المحررات الأخرى مثل نانو Nano وإيماكس Emacs و Vscodium ولا تكاد تخلو منه أي جلسة اتصال SSH. وسنعرض في هذا المقال المخصص للأشخاص المتمكنين من أساسيات العمل على المحرر بعضًا من مزاياه المتقدمة والمفيدة التي تخفى حتى على من استخدامه لسنوات، ويفترض هذا المقال معرفة مسبقة بمحرر vim أما إن كنت حديث عهد بهذا المحرر ولا تعرف عنه الكثير، فننصحك بالرجوع أولًا إلى مقال تعرف على أساسيات Vim. إضافة الإشارات المرجعية يوفر لك المحرر فيم Vim إمكانية إضافة الإشارات المرجعية bookmarks على مقاطع النص لتمييزها وتسهيل التنقل بينها وهذه العملية مفيدة جدًا في حالة النصوص الكبيرة. إليك طريقة الاستخدام؛ لوضع إشارة مرجعية اكتب m (الحرف الأول من mark) ويليه اسم الإشارة المرجعية. لنفترض مثلًا أن لديك مقطعًا في النص يتحدث عن الأسماء names وتريد تمييزه بوضع إشارة مرجعية اسمها n فعليك إذن أن تكتب mn، وإن أردت العودة للمقطع الخاص بالأسماء من أي موضع آخر في النص يكفيك كتابة `n لتنتقل إلى موقع الإشارة المرجعية n تمامًا، أو كتابة 'n لتنتقل إلى بداية السطر الذي يحتوي هذه الإشارة المرجعية. في حال رغبت بحذف الإشارة المرجعية n استخدم الأمر: :delmarks n ولاستعراض كافة الإشارات المرجعية استخدم الأمر التالي: :marks مع ضرورة الإشارة إلى أن استخدام الأحرف الإنكليزية الصغيرة في تسمية الإشارات المرجعية يعني أن هذه الإشارات محلية تستخدم ضمن المستند الحالي فقط، أما تسميتها بالأحرف الكبيرة تعني أن الإشارة عامة ويمكن الاستدلال بها ضمن عدة مستندات نصية أي أن استخدامه ليس محصورًا بالمستند نفسه. تعريف الاختصارات الخاصة بالمستخدم يتيح لك هذا المحرر إمكانية إنشاء اختصارات للكلمات والعبارات الطويلة والتي قد تكون كتابتها مزعجة وبالأخص إن تكررت أكثر من مرة ضمن النص. عرف الاختصارات باستخدام الأمر ab: يليه الاختصار ومن ثم العبارة المراد اختصارها، فمثلًا إن أردت إنشاء اختصار للعبارة Acme Painted Fake Roadways, Incs إلى شيء مثل apfr فيمكنك فعل ذلك وفق مايلي: :ab apfr Acme Painted Fake Roadways, Inc والآن في كل مرة تكتب فيها الاختصار apfr متبوعًا بفراغ يبدله المحرر تلقائيًا إلى العبارة كاملة دون أن تحتاج لكتابتها. أما إن رغبت بإزالة أي اختصار، استخدم الأمر uab: متبوعًا بالاختصار مثال: :uab apfr وتجدر الإشارة إلى أن الاختصارات التي تعرفها ضمن جلسة العمل تعتبر مؤقتة وتزول بمجرد إغلاق الجلسة. الإكمال التلقائي للكلمات أثناء الكتابة في الواقع يجهل العديد من المستخدمين قدرة هذا المحرر على الإكمال التلقائي للكلمات المكتوبة سابقًا ضمن النص. لنفترض أنك تكتب نصًا يتضمن كلمة مثل Antarctica عدة مرات فبعد كتابتها لأول مرة ضمن النص يمكنك لاحقًا كتابة الحروف الأولى منها فقط مثلًا ant والضغط على Ctrl+P وسيظهر لك المحرر كافة الكلمات التي كتبتها سابقًا في النص وتبدأ بحروف ant وعندها استخدم زر tab للتنقل بين الاحتمالات واختر الكلمة التي تريدها وسيقوم المحرر استكمالها تلقائيًا مع العلم أن زيادة عدد الحروف المكتوبة سيضيق لائحة الكلمات المحتملة أكثر. تحديد نطاق تتيح هذه الميزة للمستخدم تحديد نطاق معين من الأسطر وتطبيق جملة من الإجراءات عليه بشكل موحد وفق مايلي. لتحديد نطاق معين تبدأ كتابة الأمر برقم أول سطر في النطاق المطلوب تحديده متبوعًا بفاصلة يليها رقم أخر سطر في النطاق وهذا السطر يكون مضمنًا (فتطبق عليه الإجراءات)، كما يمكنك استخدام رمز النقطة للإشارة إلى السطر الحالي، ورمز $ للإشارة إلى السطر الأخير، أما % تعني كامل المستند. نورد بعض الأمثلة (مع التأكيد على أن كتابة هذه التعليمات تتم والمحرر في نمط الأوامر): حذف الأسطر من 2 إلى 10: :2,10d حذف الأسطر من 25 حتى نهاية المستند: :25,$d حذف كافة الأسطر: :%d نسخ الأسطر من 5 إلى 10 ولصقها بعد السطر 15: :5,10t 15 قص الأسطر من 5 إلى 10 ولصقها بعد السطر 15: :5,10m 15 رفع الانتاجية عبر Vim مع هذا المحرر لدينا دائمًا أشياء جديدة ومفيدة نتعلمها فهو غني للغاية ومليء بالميزات الجديرة بالاستكشاف والتي تخفى عن مستخدمين خبروه لسنوات. ترجمة -وبتصرف- للمقال ‎4 Vim features to use to improve productivity لصاحبه Hunter Coleman. اقرأ أيضًا تعرف على أساسيات Vim - الجزء الأول تعرف على أساسيات Vim - الجزء الثاني إدارة إضافات vim
×
×
  • أضف...