| سطر 2: | سطر 2: | 
|  | أساسيات البرمجة - جلسة 1 |  | أساسيات البرمجة - جلسة 1 | 
|  | === موجز الجلسة === |  | === موجز الجلسة === | 
| − | هذه الجلسة هي أولى جلسات تعليم البرمجة. و تهدف هذه الجلسات في مجملها إلى تمكين الطلاب من استخدام الأدوات الأساسية اللازمة تحويل أفكارهم و ما يبتكرونه من خوارزميات إلى برمجيات صلاحة للإستخدام. و تشمل هذه الأدوات لغات البرمجة، و بالذات لغة Python و بيئات كتابة البرامج و المترجمات و المفسرات (Compilers and Interpreters). و تعد هذه الجلسات حجر الأساس اللازم لتدريس الخوارزميات بشكلعملي، علىهذه، يجب أن يتم تضمين ما يكفي من هذه الجلسات قبلالشروع في شرح الخوارزميات و اسسها. | + | هذه الجلسة هي أولى جلسات تعليم البرمجة. و تهدف هذه الجلسات في مجملها إلى تمكين الطلاب من استخدام الأدوات الأساسية اللازمة تحويل أفكارهم و ما يبتكرونه من خوارزميات إلى برمجيات صلاحة للإستخدام. و تشمل هذه الأدوات لغات البرمجة، و بالذات لغة Python و بيئات كتابة البرامج و المترجمات و المفسرات (Compilers and Interpreters). و تعد هذه الجلسات حجر الأساس اللازم لتنفيذ و تجربة الخوارزميات بشكل عملي على الحاسوب، على هذا، يجب أن يتم تضمين ما يكفي من هذه الجلسات قبل البدء في تقديم و شرح الخوارزميات و اسسها. | 
|  |  |  |  | 
| − | و تبدأ هذه الجلسة بمراجعة و التأكيد على نموذج عمل البرمجيات الحاسوبية، ثم تتيعها بتعريف اللغات العالية المستوى و مقابلتها بلغة الألة مع التأكيد علىان نموذج عمل البرمجبات الحاسوبية واحد في الحالتين. بعد هذا، تقدم الجلسة أوليات كتابة برنامج بلغة Pyhton و توجه الطلاب نحو كتابة برنامجهم الأول بشكل عملي و تنفيذ هذا البرنامج باستخدام المفسر. | + | و تبدأ هذه الجلسة بمراجعة و التأكيد على نموذج عمل البرمجيات الحاسوبية، ثم تتبعها بتعريف اللغات العالية المستوى و مقابلتها بلغة الألة مع التأكيد على أن نموذج عمل البرمجبات الحاسوبية واحد في الحالتين. بعد هذا، تقدم الجلسة أوليات كتابة برنامج بلغة Pyhton و توجه الطلاب نحو كتابة برنامجهم الأول بشكل عملي و تنفيذ هذا البرنامج باستخدام المفسر. | 
|  |     |  |     | 
|  | يتلو ذلك توجيه الطلاب و مساعدتهم في كتابة برامج خطية بسيطة تستخدم تنويعات مختلفة للدالة print، بحيث تستخدم الدالة للقيام بعمليات حسابية و التعامل مع النصوص بشكل بسيط. و يستخدم الميسر هذه التنويعات لتوضيح الفرق بين تعامل الحاسوب مع الأرقام و تعامله مع النصوص مع الربط بكيفية تمثيل الأعداد و المحارف في الحاسوب و التي سبق أن تعرض لها الطلاب. كما تستخدم تلك البرامج أيضا للتأكيد على التناظر بين كيفية تنفيذ المفسر للبرامج المكتوبة باللغات عالية المستوى و نموذج العمل السابق شرحه. |  | يتلو ذلك توجيه الطلاب و مساعدتهم في كتابة برامج خطية بسيطة تستخدم تنويعات مختلفة للدالة print، بحيث تستخدم الدالة للقيام بعمليات حسابية و التعامل مع النصوص بشكل بسيط. و يستخدم الميسر هذه التنويعات لتوضيح الفرق بين تعامل الحاسوب مع الأرقام و تعامله مع النصوص مع الربط بكيفية تمثيل الأعداد و المحارف في الحاسوب و التي سبق أن تعرض لها الطلاب. كما تستخدم تلك البرامج أيضا للتأكيد على التناظر بين كيفية تنفيذ المفسر للبرامج المكتوبة باللغات عالية المستوى و نموذج العمل السابق شرحه. | 
| سطر 53: | سطر 53: | 
|  | # شرح أثر نموذج عمل الحاسوب على كيفية تنفيذ البرامج المكتوبة باللغات عالية المستوى. |  | # شرح أثر نموذج عمل الحاسوب على كيفية تنفيذ البرامج المكتوبة باللغات عالية المستوى. | 
|  | # شرح دور المفسر و المترجم في تنفيذ البرمجيات المكتوبة بلغات عالية المستوى. |  | # شرح دور المفسر و المترجم في تنفيذ البرمجيات المكتوبة بلغات عالية المستوى. | 
| − | # تعريف الأنواع الرئيسية للبيانات التي يتعامل معها الحاسب و التعرفعليها و توضيح مابينها من فروق. | + | # تعريف  البيانات العددية و البيانات النصية كنوعين من الأنواع الرئيسية للبيانات التي يتعامل معها الحاسوب،  و التعرف عليهما و توضيح ما بينهما من فروق. | 
|  |  |  |  | 
|  | === وسائل تعليمية مطلوبة === |  | === وسائل تعليمية مطلوبة === | 
| سطر 114: | سطر 114: | 
|  | # يشير الميسر اننا بهذا نكون قادرين على إجراء أي عمليات حسابية و اختيار الترتيب الصحيح للقيام بهذه العمليات. |  | # يشير الميسر اننا بهذا نكون قادرين على إجراء أي عمليات حسابية و اختيار الترتيب الصحيح للقيام بهذه العمليات. | 
|  |  |  |  | 
| − | ==== الأنواع الأساسية للبيانات ==== | + | ====  البيانات العددية و البيانات النصية  ==== | 
|  | # يطلب الميسر من الطلاب إجراء عملية جمع لنصين، يحتوي كل منهما على عدد و ملاحظة النتيجة (أي ان الأرقام مكتوبة بين علامات تنصيص). |  | # يطلب الميسر من الطلاب إجراء عملية جمع لنصين، يحتوي كل منهما على عدد و ملاحظة النتيجة (أي ان الأرقام مكتوبة بين علامات تنصيص). | 
|  | # يسأل الميسر الطلاب عن رأيهم في السبب في أن الحاسوب لم يقم بجمع الأرقام، بل عرضهم كل بجوار الآخر. |  | # يسأل الميسر الطلاب عن رأيهم في السبب في أن الحاسوب لم يقم بجمع الأرقام، بل عرضهم كل بجوار الآخر. | 
| سطر 121: | سطر 121: | 
|  | # يسأل الميسر عن رأي الطلاب في الفرق في المعني بين كتابة الأرقام بعلامات تنصيص أو بدونها. |  | # يسأل الميسر عن رأي الطلاب في الفرق في المعني بين كتابة الأرقام بعلامات تنصيص أو بدونها. | 
|  | # يناقش الطلاب في إجاباتهم و يشرح أن علامات التنصيص تشير أن ما بينها هو نص يتكون من محارف يجب أن تحفظ على شكلها بدون محاولة فهمها، حتى و إن كانت تتكون من أرقام، و بالتالي يتعامل معها المفسر على هذا الأساس. أما إن لم نستخدم علامات التنصيص فإن المفسر يحاول فهم معني هذه المحارف و بالتالي يعرف أنها أعداد و يعاملها على هذا الأساس. |  | # يناقش الطلاب في إجاباتهم و يشرح أن علامات التنصيص تشير أن ما بينها هو نص يتكون من محارف يجب أن تحفظ على شكلها بدون محاولة فهمها، حتى و إن كانت تتكون من أرقام، و بالتالي يتعامل معها المفسر على هذا الأساس. أما إن لم نستخدم علامات التنصيص فإن المفسر يحاول فهم معني هذه المحارف و بالتالي يعرف أنها أعداد و يعاملها على هذا الأساس. | 
| − | # يوضح الميسر أن الحاسوب يتعامل مع نوعين اساسيين من البيانات هما النصوص و البيانات الرقمية، و يشرح الفرق بينها بالربط مع ما تعلموه سلفا من تمثيل البيانات في الحاسوب.
 |  | 
|  | # يطلب الميسر من الطلاب  تجربة جمع نصوص مختلفة و ضرب عدد في نص، و يوضح من خلال التجارب معنى هذه العمليات. |  | # يطلب الميسر من الطلاب  تجربة جمع نصوص مختلفة و ضرب عدد في نص، و يوضح من خلال التجارب معنى هذه العمليات. | 
| − | # يشير الميسر إلى أننا بهذا نكون تعلمنا نوعي البيانات الأساسيين و كيفية التفرقة بينهما و كيف يتعامل الحاسوب مع كل منهما. | + | # يوضح الميسر أن  البيانات الرقمية و البيانات النصية هما نوعين من الأنواع الأساسية للبيانات، و يشير إلى أن الحاسوب يميز كل منهما عن الآخر و يتعامل مع كل منهما بشكل مختلف، و يشرح الفرق بينهما بالربط مع ما تعلموه سلفا من تمثيل البيانات في الحاسوب. | 
|  | + | # يشير الميسر إلى أننا بهذا نكون تعلمنا نوعين من الأنواع الأساسية للبيانات و كيفية التفرقة بينهما و كيف يتعامل الحاسوب مع كل منهما. | 
|  |  |  |  | 
|  | ==== خاتمة ==== |  | ==== خاتمة ==== |