التخسس ١ حاب الوجلة الأولى
دعمفني برمجة العانب مقلمة وجل الشكلة
الفصل الأول : مقدمة
معرفة ماهية برنامج الحاسب ولغات البرمجة وآنواعها
عندما تكمل هذه الوحدة يكون لديك القدرة على:
١ - فهم ماهية برنامج الحاسب
© - الإخبار باهمية مهنة البرمجة
؛ - معرفة ماهو علم صناعة البرمجيات
مستوى الاداء المطلوب
آن يصل المتدرب | لى إتقان هذه الجدارة بنسبة 10٠١
الوفت المتوقع لاتدريب: ساعة واحدة
الوسائل المساعدة:
٠ قلم
* دفتر
«تطلبات الجدارة:
التخسس ا الوجلة الأولى
دعمفني برمجة العانب مقلمة وجل الشكلة
الفصل الأول : مقدمة
المختلفة ؛ واستخداماتها المثى تى المجالات؛ فإنه آصبح لزاماً علينا معرفة هذه الحاسبات وكيفية
التعامل معها والاستقادة منها لأنها توفر الجهد والوقت وتنجز كثير من الأعمال بدقه كبيرة بالإضافة إلى
هو : بناء البرامج التي تقوم بحل كثير من المشكلات توفيراً للجهد والوقت ووصولاً إلى الدقة المطلوبة ؛
وي هذه الوحدة سوف نلقي الضوء على ماهية برنامج الحاسب وكذلك آنواع لغات البرمجة المختلفة. ثم
بعد ذلك نبين أهمية مهنة البرمجة و صناعة البرمجيات.
البرنامج هو عبارة عن مجموعة من التعليمات تعطى للحاسب للقيام بعمل ما مثل حساب مجموع
قيم مختلفة ؛ حساب المتوسط الحسابي؛ حساب مضروب عدد معين ........الخ
والبرنامج هو الذي يحدد للحاسب كيفية التعامل مع البيانات للحصول على النتائج المطلوبة. والبرنامج
يكَتب بواسطة المبرمج ([©210818111111 :00117[11]6) الذي يفهم المشكلة ويقترح الحل وينقذه لحل
والبرمجيات (80008:6) هي التي تسهل للمستخدم استخدام المكونات المادية (18:087806) بكفاءةٌ
وراحة ويمكن تقسيم البرمجيات | لى ثلاثة أنواع رئيسية وهي: -
مثل النرافن( 00000755) و 205 حلصلا حنسفآء 11145 وغيرها. وهي عبارة عن برامج تقوم
بدور الوسيط بين المستخدم والمكونات المادية وهي تمكن المستخدم من استخدام المكونات المادية
للحاسب بكفاءة وبراحة؛ كما آنها تساعد المستخدم بغ إنشاء نظام الملفات وغيرها. ومن برامج التشغيل
التخسس اماج الوجلة الأولى
دعمفني برمجة العانب مقلمة وجل الشكلة
وهي برامج تساعد يذ إنشاء كثير من التطبيقات مثل إنشاء قاعدة بيانات والرسم باستخدام
برنامج الأوتركاد 606680ن:4- الاكسيل 11661 - الأكيس 4006655 - الأوراكل»ء 0:8 -
- لفات البرمجة 1,3119188685 101171111178
مع المكونات المادية للحاسب والأخرى التي تتطلب تحويلها من صورتها التي تكتب بها إ لى صوزة أخرى
يستطيع الحاسب التعامل معها
ويوجد العديد من لغات البرمجة المستخدمة اليوم وهذه اللغات يمكن تقسيمها إلى ثلاث آنواع
١ - لقة الآلة ومع مصاع م116
- لغات المستوى العالي ودع ةتع م1 15:81 111
وهي اللغة الوحيدة التي يفهمها الحلسب ويستطيع التعامل معها. وهذه اللغة تعتبر لغة خاصة لكل
حاسب وقد تختلف من حاسب إلى آخر وهي تعتمد على المكونات المادية للحاسب نفسه ؛ ولغة الآلة
تتكون من مجموعة آرقام من بين 1:0 التي تعطي تعليمات للحاسب للقيام بمعظم العمليات الآساسية
واحدة بعد الأخرى ؛ وهي تختلف من حاسب إلى حاسب آخر ولذلك فإننا نجد آن نفس البرنامج الذي يعمل
على حاسب معين قد لا يعمل على حاسب آخر يختلف عنه يذ المكونات المادية. و لغة الآلة من اللغات
الصعبة يخ التعلم للإنسان حتى بالنسبة للمبرمجين لأنها عبارة عن مجموعة من الأرقام (60؛ )١ فقط.
وللتغلب على هذه الصعوبة تم اقتراح لغة أخرى تعتمد على استخدام اختصارات معبرة من اللغة الإنجليزية
التخسس ا الوجلة الأولى
دعمفني برمجة العانب مقلمة وجل الشكلة
الحاسب مثل إضافة 400 و حفظ 84016 وطرح 8115 و غيرها
يحولها إلى لغة الآلة وهو ما يسمى المجمع 8550:10:16 الذي يقوم بتحويل لغة التجميع إلى لغة الآلة كي
يفهمها الحاسب ويستطيع تنفيذها ؛ وبالرغم من تقليل المجهود الملقى على عاتق المبرمج للقيام بعملية
البرمجة إلا آنه ما زالت توجد مشقة عند حل أبسط المسائل لأن ذلك يتطلب معرفة وكتابة العديد من
التعليمات؛ وهذا ما دفع المبرمجين للتفكير ب لغات أخرى تقلل المجهود الكبير اللازم لكتابة الكثير
لات البرمجة ذات السدتوى العالي 1801203665 16161 115811
تقوم بتحويل التعليمات(الأوامر) إلى لغة الآلة ؛ وهذه اللغات تستخدم العلاقات والعوامل الرياضية المتعارف
ل +3 جم جح مساق
وهذه اللغات تعتبر سهلة ومرغوبة من وجهة نظر المبرمجين بالمقارنة بلغات التجميع ولغة الآلة وذلك
لسهولة كتابتها وفهمها وحل المشاكل باستخدامها ؛ ومن آمثلة هذه اللفات لغة 0 ++0 )؛ البأسكال
ومن المعلوم أن عملية تحويل البرنامج من لغة ذات مستوى عال إلى لغة الآلة تستهلك وقتاً ولذلك تم
تطوير نسخ من لغات المستوى العالي بحيث تستخدم برنامج مفسر 11161176067 والذي يقوم بترجمة
التخسس الوجلة الأولى
دعمفني مقلمة وجل الشكلة
وبالرغم من آن البرامج المترجمة الناتجة من عملية الترجمة باستخدام المترجم :010116 تكون
آأسرع يخ التنفيذ عن البرامج التي تستخدم المفسر (:©10060:00:61) إلا أنه يفضل وجود نسخة من اللغة تعمل
باستخدام المفسر وذلك لسهولة التغيير والحذف والإضافة والتصحيح. وبعد الانتهاء من كل التعديلات
والوصول إلى نسخة نهائية فإنه يتم استخدام المترجم لترجمة البرنامج وإنتاج نسخة تنفيذية حتى تكون
آسرع ب التنفيذ بعد ذلك عند تشغيلها على الحاسب.
أهمية مهنة البرمج
من المعلوم أن الذي يقوم بكتابة البرامج لحل المشكلات ١ المعقدة هم المبرمجون ولا
يمكن الاستغناء علهم بحال من الأحوال لأن دورهم مهم وحيوي وتكثر الحاجة لهم ل شتى المجالات
١ - كتابة برامج وبناء الأنظمة المختلفة لحل المشاكل وتبسيط التعامل مع الحاسب.
- المسئولية الكاملة عن إصلاح ما يحدث من أعطال أو حل المشاكل التي تحدث ب الأنظمة
© - بناء واجهة المستخدم المختلفة لذ كثير من اللغات والتحلبيقات.
صناعة البرمجيات
تعتبر صناعة البرمجيات يذ عصرنا الحالي من الصناعات المهمة جدا والتي تتطور باستمرار
نتيجة التطور البائل يذ صناعة الحاسبات الآلية ؛ ولذلك فإن هذه الصناعة تتطلب مبرمجين مهرة
ولديهم القدرة على تحليل وحل المشاكل بالإضافة إلى إلمام بككل المستجدات والعلوم والتطوير
المتعلق بالحلسب وصناعة الحاسبات و ذلك حتى يستطيعوا مواكبة تطوير البرامج والنظم الم
للاستفادة العظمى من التقدم يذ الحاسبات.
التخسس ١ حاب الوجلة الأولى
دمعفني
1- أكمل العبارات الآتية بكلمات مناسبة
- من أمثة برامج ١
ج - يوجد العديد من لغات الحاسب العالية المستوى مثل ' :
د - برنامج الحاسب هو عبارة عن تُُعلّى للحاسب للقيام بعمل ما مثل. َ
أ برامج التشغيل تقوم بدور الوسيط بين المكونات المادية المكونة للحاسب والمسسُتخدم ( )
بد لغة الآلة تعتبر أسهل لغات البرمجة ( 6
ند البرامج المكتوبة بلغة المستوى العالي يتم تنفيذها مباشرةٌ ل
ت- الحاسب لا يفهم إلا لغة الآلة 0
ج- المترجمات تقوم بتحويل لغة البرمجة إ لى لغة الآلة 0
التكسس ١ حاب الوحلة الأولى
دممفني ب مقلمة وجل الشكلة
الفصل الثاني
حل المشكلة ع 50111171 نتنو 01
المساعدة يذ تحليل المشكلة وتخطيط الحل لبذه الملشكلة باستخدام خرائط التدفق والخوارزميات
عندما تكمل هذه الوحدة يككون لديك القدرة على
1- معرفة أجزاء المشكلة الرئيسية والفرعية
2- تحديد الاحتياجات الممللوبة لحل المشكلة
3- المشاركة بوضع ورسم خريطة التدفق للبرنامج
4- المشاركة يذ كتابة خوارزمية الحل للمشكلة
مستوى الأداء المطلوب:
أن يصل المتدرب | لى إتقان هذه الجدارة بنسبة 7100
الوقت المتوقع لاتدريب: 8 ساعات
الوسائل اللساعدة:
٠ قلم
متطلبات الجدارة:
اجتياز جميع الحقائب السابقة
التخسس ا الوجلة الأولى
دعمفني برمجة العانب مقلمة وجل الشكلة
الفصل الثاني
حل المشكلة
القدرة على حل المشاكل بواسطلة البرمجة هي مهارة وطريقة مرتبة ولا تعتمد على العشوائية ؛
وهنه القدرة يمكن اكتسابها وتعلمها باتباع بعض القواعد التي تساعد على ذلك؛ وبعض هذه القواعد
ذكرها رين ديكارت الرياضي و الفيلسوف المعروف وهي: -
١ - لا يمكن قبول أي شيء حقيقة مسلمة إلا إذا ثبت ذلك بالتجرية والمشاهدة
* - كل مشكلة أو معضلة يتم تبسيملها وتقسيمها إلى أجزاء عدة كلما أمكن ذلك
- فكر بطريقة منظمة ومنطلقية وذلك بالبد بالأجزاء البسيحلة والسهلة الفهم ثم التدرج إلى
الأجزاء الأصعب وهكنا حتى يتم الانتهاء من المشكلة
- المراجعة لجميع الأجزاء حتى يكَتمل الحل.
وبالرغم من أن هذه القواعد تم وضعها قبل ٠١ ٠عام من صناعة آول حاسب إلكتروني إلا أنها ما
زالت مظبقة وصالحة للاستخدام ؛ والتفكير الجيد والمنظم لتعريف وتحديد المشكلة ضروري ومهم جداً
وآساسي للحصول على نتائج صحيحة وبخاصة عدد التعامل مع الحاسب؛ ولذلك فإن أول خطوة لحل
المشكلة هر ث
ل دائماً تظهر أكثر تعقيداً عن الحقيقة التي هي عليها وذلك لعدم فهم المشكلة. ومن معالجة
المشكلة وهي: -
قاعدة ١
حلل المشكلة بعناية فائقة محاولاً فهم كل جزئياتها وتحديد كل المتطلبات للحصول على الحل المقبول
وفهم كل ما يؤدي للحصول على الحل المقبول للمشكلة
فإذا وجد حل؛ بين كيف يمكن العمل لتحقيق هذا الحل. ولذا يجب تحديد مستوى النتائج المعطلوية ل
المراحل الأولى كما يجب أن تكون الأهداف واضحة ومعلومة وكَذلك الوسائل اللازمة لتحقيق هذه
التخصس الوجلة الأولى
دممفني مقلمة وجل الشكلة
الأهداف ؛ وملخص هذه القاعدة هو آن فهم المشكلة يمثل نصف الحل وكذلك الفهم الجيد والصحيح
والكامل للمشكلة يمطلي دائماً نتائج و اضحة وصحيح.
تقسيم للشكلة
بزيادة فهم المشكلة يزداد تبعاً له وضوح تفصيلات وأبعاد المشكلة ؛ وبالتالي تصبح المشكلة
أكثر تفصيلاً وثباناً ووضوحا؛ مما يجعل من الصعب التعامل مع كل هذه التفاصيل يذ نفس الوقتء
وهذا يوضح القاعدة الثانية لديكارت والثي تنص على : -
"حاول أن تقسم المشكلة إلى أجزاء بسيطة وغير معتمدة على بعضها البعض ثم ركز على كل جزء عل
حدة . ويخ هذا الإطار يمكن استخدام العديد من الطرق المختلفة لتقسيم الملشكلة ؛ وبذلك يمك
حاول تقسيم المشكلة إلى مجموعة مشاكل (جزاء) بسيدلة متتابعة؛ وحتى تحصل على الحل الكامل
للمشكلة الأصلية بحل المشاكل الفرعية البسيطلة الواحدة تلو الأخرى. والغفرض من تقسيم المشكلة هو
العمل مع جزم واحد فقط وعزل تاثير الأجزاء الأخرى حتى يسهل التعامل معه؛ ولكن يجب عدم إهمال
ما تقوم به الأجزاء الأخرى من المشكلة لأنه لا يمكن أن تكون معزولة نهائياً عن باقي الأجزاء؛ ومن
المؤكد أن بعض آجزاء المشكلة يجب آن ينظر له ويتم التعامل معه أولاً لأن الأجزاء الأخرى تتاثر به أو
تعتمد على النتائج التي تنتج منه. وعند حل كثير من المشاكل فإن ذلك يتضمن تكرار التمامل مع بمض
الحالات والأوضاع مثل المستهلكين ؛ نتائج التجارب.....الخ؛ وبي مثل هذه المشاكل (الحالات) يجب
التأكيد على كيفية التعامل مع الحالات الفردية. وإذا كان حل أحد هذه المشاكل (المسائل) كافياً
وصحيحاً يمكن للمبرمج أن يعيد استخدام هذا الحل لكل المشاكل المشابهة . جميع الحالات.
إذا كانت المشكلة تتضمن بعض العمليات التي يعاد تكرارها حاول عزل العمليات التي لا تتطلب الإعادة
من تلك التي تتطلب الإعادة.
إذا كنت لا تستطيع أن تقرر من أين تبدأ فإن هذا يحدث لوجود بعض الحالات الخاصة التي تسبب
إزعاجاً عند فصلها. وبي هذه الحالة يكون من المفيد أن يتم إهمال هذه الحالات الخاصة وكذلك
وماج