د .  محمد السديري  المكونات البرمجية للنظام
   البرامج التطبيقية هي برامج تسمح لمستخدم الحاسب بتحقيق الغرض من استخدامه للحاسب  . وهي برامج يمكن وضعها بواسطة المستفيد لغرض معالجة أو تناول البيانات المدخلة وإحراجها بمواصفات محددة مسبقا تتناسب لاحتياجاته الخاصة .  وتنقسم إلى نوعين :   برامج المستخدم   هي البرامج التي يستحدثها المستخدم لكي تقوم بعمل خاص و معين، مثل برامج خاصة بالمخزون ، شؤون الموظفين  برامج المستخدم برامج يتم تطويرها لخدمة احتياجات مستخدم معين . برامج تطبيقية جاهزة   برامج تستخدم لحل مسألة تطبيقية معينة و تعد بواسطة بيوت الخبرة و الشركات المتخصصة  معالجة النصوص – الجداول الإلكترونية – قواعد البيانات – البرامج الرسومية – البرامج التعليمية – إدارة المشاريع – الاتصالات  -  الألعاب
برامج اللغات أو برامج ترجمة اللغات  يتم الاتصال بالحاسب والتفاهم معه بلغات أخرى مثل الكوبل  COBOL   و البيسك   BASIC   والتي تتألف من رموز وكلمات نفهمها نحن البشر .  حيث أن الحاسب لا يستطيع فهم اللغة البشرية لذلك لابد أن تتحول إلى لغة يفهمها الحاسب  و هي لغة واحدة فقط هي لغة الآلة .  فعلى سبيل المثال نكتب برنامج بلغة الكوبل وبعد ذلك نشغل برنامج ترجمة اللغات والذي يترجم البرنامج المكتوب إلى لغة الآلة ليشغلها و يجعلها تعمل في الحاسب  . ترجمة اللغات  هو برنامج يترجم ما كتبه المبرمجون بلغة من اللغات إلى لغة تفهمها الآلة ويستطيع الحاسب فهمها و التعامل معا .  لغة البرمجة تكتب البرمجة بعبارة سهلة في تسلسل منطقي يؤدي إلى حل مسألة معينة .  إذا لغة البرمجة هي مجموعة من الخطوات تُعلم الحاسب بأي عملية ينفذ أو  هي لغة تتيح للمستخدم التعامل وإعطاء الأوامر للحاسب وكتابته البرامج له .
أجيال اللغات   تنقسم اللغات إلى ما يعرف بالأجيال وهذه الأجيال واللغات عادة ما تكون   لغة  بسيطة و برامج منخفضة المستوى كلما اقتربت من شكل لغة الآلة أو الحاسب وهي  [ .  و  1 ] ” الأرقام الثنائية“ والتي يستخدمها الحاسب  .  وتكون الأجيال أو اللغات عالية المستوى كلما اقتربت من اللغة التي يستخدمها الإنسان  " اللغة الطبيعية ". جيل لغة الآلة  . جيل لغة التجميع  . جيل اللغات عالية المستوى الإجرائية  . جيل اللغات عالية المستوى الغير إجرائية  . اللغات الطبيعية  .
أجيال اللغات   الجيل الأول لغة الآلة هي مجموعة من الرموز التي يتم بموجبها كتابة أوامر في صفحة الآلة القابلة للتنفيذ دون الحاجة إلى ترجمة .  وهي لغة يصعب التعامل معها وكتابتها . 1001001  1101110  1110011  110011010  110110111 الجيل الثاني لغة التجمع   استخدمت لغة التجميع لتسهيل البرمجة فهي لغة الحروف المجمعة .  وهي لغة تختصر بعض العبارات والرموز المستخدمة ففيها يتم استبدال الرموز الرقمية في لغة الآلة بمجموعة من الكلمات الرمزية  "  المختصرة  "  باستخدام اللغة الإنجليزية .  إذا من السهل نحفظ . L  for Load ,  A  for Add,  B  for   Brave  C  for comp
الجيل الثالث :  اللغات الإجرائية عالية المستوى  هي لغة سهلة مثل اللغة التي يتعامل معها الإنسان بشكله اليومي وهي مثل قراءة الكتاب وكتابة المعادلات الرياضية – وهي مصممه للكتابة على أعداد وأنواع مختلفة من الحاسبات بدون تغير أو بتغير بسيط .  سميت باللغة الإجرائية   لأنها تستخدم القواعد و الخطوات في كتابتها .  أشهر هذه اللغات : الكوبول  COBOL  الفورتران  ForTran  البيسك  BASIC  الباسكال  PASCAL السى و السى بلس  C , C+, C+++ أجيال اللغات :   اللغات الإجرائية عالية المستوى
أسباب تصميمها أو مزاياها تحرر المبرمج من التعقيدات والخطوات والإجراءات الطويلة في كتابة البرنامج بلغة الآلة ولغة التجميع  . تقدم لغة يمكن استخدامها في أكثر من حاسب مع تعديلات طفيفة  . تمنح المبرمج  فرصة وقت أكبر للتركيز على احتياجات المستخدم  وبالتالي يصمم برنامج يتوافق مع هذه الاحتياجات  . سميت باللغة الإجرائية لأن تعليمات البرمجة تتألف من مجموعة من الخطوات أو الإجراءات التي تعلم أو تخبر الحاسب  ليس فقط ماذا يفعل بالأشياء بل كيف يفعل بها  .
مزايا و عيوب اللغة الإجرائية مزاياها   سهولة تذكر الأوامر وقواعد اللغة  . لها القدرة على وضع البيانات والأوامر في ذاكرة الحاسب نيابة عن المبرمج  .  أي تخصيص الأماكن بالذاكرة الرئيسية للحاسب  . غير معتمدة على نوع الجهاز المستخدم  . سهولة تتبع البرامج لتعديلها أو رصد الأخطاء وتصحيحها  . عيوبها تحتاج إلى مترجم لتحويلها إلى لغة الآلة  .
تطبيقات بعض اللغات  الفورتران  ForTran  عام  1954  لغة الفورتران   ( لغة ذات إمكانيات لبرمجة التطبيقات التقنية والعلمية . الكوبول  COBOL   عام  1959 هي لغة الاستخدامات الإدارية والتطبيقات التجارية والمهنية . البيسك  BASIC   عام  1960 - 1965  هي لفة سهلة ومناسبة للأغراض الإدارية والعلمية وارتباطها بالحاسبات الشخصية  باسكال  PASCAL   عام  1971 تستخدم كلغة تعليمية لتعلم أساليب و أصول البرمجة  فهي لغة تعليمية، لغة علمية، لغة نظام سى  C  عام  1972  هي لغة برمجة متعددة الأغراض فهي تجمع بين اللغات عالية المستوى من حيث السهولة و إمكانية التشغيل و بين مميزات اللغات منخفضة المستوى من حيث الإستفادة من الخصائص الداخلية للحاسب
لماذا نحتاج إلى مترجم  دائما تحتاج إلى مترجم للغة لأن الحاسب يستطيع أن يشغل لغة الآلة فقط ونحن نريد مترجم للغات أخرى . مترجم اللغة نحتاجه لترجمة أو تحويل اللغة عالية المستوى  " لغة المصدر "  إلى لغة الآلة  " لغة الهدف  "  حتى يعمل البرنامج على جهاز الحاسب  .  كمستخدم تحتاج إلى استخدام معالج اللغة عندما تقوم ببرمجة برنامج باللغة عالية المستوى .  المبرمجون يستخدمون نوعان من معالجات اللغة  مؤلف  Compiler  المجمع أو المفسر أو  المحول مترجم  Interpreter  المصنف أو المؤلف
برنامج المصدر Source Program برنامج الهدف Source Program المترجم  Translators برنامج المصدر Source Program برنامج الهدف Source Program المفسر Interpreter برنامج المصدر Source Program برنامج الهدف Source Program المجمع Compiler
المترجم – المؤلف  -  المُجمع  Compiler هو برنامج يترجم لغة التجمع إلى لغة الآلة .  هو برنامج معد خصيصا للقيام بعملية الترجمة والتصنيف والتأليف لبرنامج آخر في لغة المصدر وتحويله إلى الصيغة القابلة للتنفيذ بلغة الآلة . هو برنامج يقوم بعمليات المعالجة التحويلية التي تترجم كامل البرنامج المكتوب باللغة عالية المستوى إلى لغة الآلة  بخطوة واحدة . المفسر  Interpreter   هو البرنامج الذي يقوم بفك الشفرة الخاصة بالبيانات والحصول على المعنى لهذه الصيغة لاستخدامها في الغرض الذي أعدت من أجله وهو يقوم بالترجمة إلى لغة الآلة  جملة تلو الأخرى أثناء التنفيذ .   لماذا نحتاج إلى مترجم
الجيل الرابع :  جيل اللغات عالية المستوى الغير إجرائية الجيل الرابع سهل الاستخدام أكثر من الجيل الثالث وهو لغة غير خطواتيه أي لا تتطلب خطوات لإجرائها . المبرمج يخبر الحاسب النتيجة المطلوبة تحقيقها بدلا من كيف يمكنه تحقيقها .  ولسهولتها منحت المبرمج القدرة على تطوير البرامج  . أنواعها  : -   لغات الجداول الإلكترونية  . قواعد البيانـــــات  . منتج التطبيقــات  . منتج التقــــــارير . اللغة الاستعلامية
لغة استعلامية  Query Languages  اللغة الاستعلامية أسلوب محدد لصياغة عبارات استعلامية والتي تتم بإدخالها إلى النظام من خلال محطات استعلامية في هيئة أوامر يطلب استرجاع بيانات من ملف معين موجود في قواعد البيانات . بواسطة اللغة الاستعلامية يستطيع المستخدم طرح تساؤلات و يصل إلى إجابات فورية .  مثال :  كم عدد الأصناف لدينا في المخزون والتي يكون عددها أقل من نقطة اعادة  الطلب .
الجيل الخامس  :  اللغات الطبيعية  جيل اللغات الطبيعية هي مشابه للغات الاستعلامية ولكنها لا يحتاج المبرمج إلى معرفة كلمات معينة أو قواعد أو عبارات  . هذا الجيل يقترب من الحاسبات الخبيرة وهي مجموعة من المعارف جمعت لعدد من الخبراء في مجال معين ومحدد لحل مشكلة محددة  . لغة الهدف القيم أو المتألق  Object-oriented language عندما يشرع أغلب المبرمجون البدء في مهمة البرمجة فأنهم يفكرون في جزئيين مهمين  رموز البيانات التي يجب أن تعالج  . خطوات معالجة هذه البيانات  . هاتان الخطوتان مهمة في الماضي ولكن الآن في اللغة الطبيعية أغلب المبرمجون يدمجونهما في عنصر واحد يسمى الهدف  Object  .
خطوات البرمجة   تتكون البرمجة من خمس خطوات  :- تحديد المشكلة  . تخطيط برنامج منطقي وتصميم الحلول  . ترميز البرنامج أو كتابة البرنامج  . اختبار البرنامج  . التوثيق النهائي للبرنامج  .
اختيار اللغات يجب مراعاة مناسبة اللغة للتطبيق الذي تستعمل من أجله . إذا كان بالإمكان استعمال اللغة بكفاءة على نظام قائم محدد تقاس الكفاءة بواسطة ”  وقت الترجمة،   وقت التنفيذ، ومتطلبات التخزين الرئيسية “  تحديد الحاجة إلى العاملين و رواتبهم و تدريبهم تعتبر تكاليف إضافية . الخصائص التي تقرر اختيار لغة معينة : سهولة القراءة والكتابة . السمات الموجهه للتطبيقات  . مساعدات تطوير البرنامج . الكفاءة  .

مكونات البرمجية

  • 1.
    د . محمد السديري المكونات البرمجية للنظام
  • 2.
      البرامجالتطبيقية هي برامج تسمح لمستخدم الحاسب بتحقيق الغرض من استخدامه للحاسب . وهي برامج يمكن وضعها بواسطة المستفيد لغرض معالجة أو تناول البيانات المدخلة وإحراجها بمواصفات محددة مسبقا تتناسب لاحتياجاته الخاصة . وتنقسم إلى نوعين : برامج المستخدم هي البرامج التي يستحدثها المستخدم لكي تقوم بعمل خاص و معين، مثل برامج خاصة بالمخزون ، شؤون الموظفين برامج المستخدم برامج يتم تطويرها لخدمة احتياجات مستخدم معين . برامج تطبيقية جاهزة برامج تستخدم لحل مسألة تطبيقية معينة و تعد بواسطة بيوت الخبرة و الشركات المتخصصة معالجة النصوص – الجداول الإلكترونية – قواعد البيانات – البرامج الرسومية – البرامج التعليمية – إدارة المشاريع – الاتصالات - الألعاب
  • 3.
    برامج اللغات أوبرامج ترجمة اللغات يتم الاتصال بالحاسب والتفاهم معه بلغات أخرى مثل الكوبل COBOL و البيسك BASIC والتي تتألف من رموز وكلمات نفهمها نحن البشر . حيث أن الحاسب لا يستطيع فهم اللغة البشرية لذلك لابد أن تتحول إلى لغة يفهمها الحاسب و هي لغة واحدة فقط هي لغة الآلة . فعلى سبيل المثال نكتب برنامج بلغة الكوبل وبعد ذلك نشغل برنامج ترجمة اللغات والذي يترجم البرنامج المكتوب إلى لغة الآلة ليشغلها و يجعلها تعمل في الحاسب . ترجمة اللغات هو برنامج يترجم ما كتبه المبرمجون بلغة من اللغات إلى لغة تفهمها الآلة ويستطيع الحاسب فهمها و التعامل معا . لغة البرمجة تكتب البرمجة بعبارة سهلة في تسلسل منطقي يؤدي إلى حل مسألة معينة . إذا لغة البرمجة هي مجموعة من الخطوات تُعلم الحاسب بأي عملية ينفذ أو هي لغة تتيح للمستخدم التعامل وإعطاء الأوامر للحاسب وكتابته البرامج له .
  • 4.
    أجيال اللغات تنقسم اللغات إلى ما يعرف بالأجيال وهذه الأجيال واللغات عادة ما تكون لغة بسيطة و برامج منخفضة المستوى كلما اقتربت من شكل لغة الآلة أو الحاسب وهي [ . و 1 ] ” الأرقام الثنائية“ والتي يستخدمها الحاسب . وتكون الأجيال أو اللغات عالية المستوى كلما اقتربت من اللغة التي يستخدمها الإنسان " اللغة الطبيعية ". جيل لغة الآلة . جيل لغة التجميع . جيل اللغات عالية المستوى الإجرائية . جيل اللغات عالية المستوى الغير إجرائية . اللغات الطبيعية .
  • 5.
    أجيال اللغات الجيل الأول لغة الآلة هي مجموعة من الرموز التي يتم بموجبها كتابة أوامر في صفحة الآلة القابلة للتنفيذ دون الحاجة إلى ترجمة . وهي لغة يصعب التعامل معها وكتابتها . 1001001 1101110 1110011 110011010 110110111 الجيل الثاني لغة التجمع استخدمت لغة التجميع لتسهيل البرمجة فهي لغة الحروف المجمعة . وهي لغة تختصر بعض العبارات والرموز المستخدمة ففيها يتم استبدال الرموز الرقمية في لغة الآلة بمجموعة من الكلمات الرمزية " المختصرة " باستخدام اللغة الإنجليزية . إذا من السهل نحفظ . L for Load , A for Add, B for Brave C for comp
  • 6.
    الجيل الثالث : اللغات الإجرائية عالية المستوى هي لغة سهلة مثل اللغة التي يتعامل معها الإنسان بشكله اليومي وهي مثل قراءة الكتاب وكتابة المعادلات الرياضية – وهي مصممه للكتابة على أعداد وأنواع مختلفة من الحاسبات بدون تغير أو بتغير بسيط . سميت باللغة الإجرائية لأنها تستخدم القواعد و الخطوات في كتابتها . أشهر هذه اللغات : الكوبول COBOL الفورتران ForTran البيسك BASIC الباسكال PASCAL السى و السى بلس C , C+, C+++ أجيال اللغات : اللغات الإجرائية عالية المستوى
  • 7.
    أسباب تصميمها أومزاياها تحرر المبرمج من التعقيدات والخطوات والإجراءات الطويلة في كتابة البرنامج بلغة الآلة ولغة التجميع . تقدم لغة يمكن استخدامها في أكثر من حاسب مع تعديلات طفيفة . تمنح المبرمج فرصة وقت أكبر للتركيز على احتياجات المستخدم وبالتالي يصمم برنامج يتوافق مع هذه الاحتياجات . سميت باللغة الإجرائية لأن تعليمات البرمجة تتألف من مجموعة من الخطوات أو الإجراءات التي تعلم أو تخبر الحاسب ليس فقط ماذا يفعل بالأشياء بل كيف يفعل بها .
  • 8.
    مزايا و عيوباللغة الإجرائية مزاياها سهولة تذكر الأوامر وقواعد اللغة . لها القدرة على وضع البيانات والأوامر في ذاكرة الحاسب نيابة عن المبرمج . أي تخصيص الأماكن بالذاكرة الرئيسية للحاسب . غير معتمدة على نوع الجهاز المستخدم . سهولة تتبع البرامج لتعديلها أو رصد الأخطاء وتصحيحها . عيوبها تحتاج إلى مترجم لتحويلها إلى لغة الآلة .
  • 9.
    تطبيقات بعض اللغات الفورتران ForTran عام 1954 لغة الفورتران ( لغة ذات إمكانيات لبرمجة التطبيقات التقنية والعلمية . الكوبول COBOL عام 1959 هي لغة الاستخدامات الإدارية والتطبيقات التجارية والمهنية . البيسك BASIC عام 1960 - 1965 هي لفة سهلة ومناسبة للأغراض الإدارية والعلمية وارتباطها بالحاسبات الشخصية باسكال PASCAL عام 1971 تستخدم كلغة تعليمية لتعلم أساليب و أصول البرمجة فهي لغة تعليمية، لغة علمية، لغة نظام سى C عام 1972 هي لغة برمجة متعددة الأغراض فهي تجمع بين اللغات عالية المستوى من حيث السهولة و إمكانية التشغيل و بين مميزات اللغات منخفضة المستوى من حيث الإستفادة من الخصائص الداخلية للحاسب
  • 10.
    لماذا نحتاج إلىمترجم دائما تحتاج إلى مترجم للغة لأن الحاسب يستطيع أن يشغل لغة الآلة فقط ونحن نريد مترجم للغات أخرى . مترجم اللغة نحتاجه لترجمة أو تحويل اللغة عالية المستوى " لغة المصدر " إلى لغة الآلة " لغة الهدف " حتى يعمل البرنامج على جهاز الحاسب . كمستخدم تحتاج إلى استخدام معالج اللغة عندما تقوم ببرمجة برنامج باللغة عالية المستوى . المبرمجون يستخدمون نوعان من معالجات اللغة مؤلف Compiler المجمع أو المفسر أو المحول مترجم Interpreter المصنف أو المؤلف
  • 11.
    برنامج المصدر SourceProgram برنامج الهدف Source Program المترجم Translators برنامج المصدر Source Program برنامج الهدف Source Program المفسر Interpreter برنامج المصدر Source Program برنامج الهدف Source Program المجمع Compiler
  • 12.
    المترجم – المؤلف - المُجمع Compiler هو برنامج يترجم لغة التجمع إلى لغة الآلة . هو برنامج معد خصيصا للقيام بعملية الترجمة والتصنيف والتأليف لبرنامج آخر في لغة المصدر وتحويله إلى الصيغة القابلة للتنفيذ بلغة الآلة . هو برنامج يقوم بعمليات المعالجة التحويلية التي تترجم كامل البرنامج المكتوب باللغة عالية المستوى إلى لغة الآلة بخطوة واحدة . المفسر Interpreter هو البرنامج الذي يقوم بفك الشفرة الخاصة بالبيانات والحصول على المعنى لهذه الصيغة لاستخدامها في الغرض الذي أعدت من أجله وهو يقوم بالترجمة إلى لغة الآلة جملة تلو الأخرى أثناء التنفيذ . لماذا نحتاج إلى مترجم
  • 13.
    الجيل الرابع : جيل اللغات عالية المستوى الغير إجرائية الجيل الرابع سهل الاستخدام أكثر من الجيل الثالث وهو لغة غير خطواتيه أي لا تتطلب خطوات لإجرائها . المبرمج يخبر الحاسب النتيجة المطلوبة تحقيقها بدلا من كيف يمكنه تحقيقها . ولسهولتها منحت المبرمج القدرة على تطوير البرامج . أنواعها : - لغات الجداول الإلكترونية . قواعد البيانـــــات . منتج التطبيقــات . منتج التقــــــارير . اللغة الاستعلامية
  • 14.
    لغة استعلامية Query Languages اللغة الاستعلامية أسلوب محدد لصياغة عبارات استعلامية والتي تتم بإدخالها إلى النظام من خلال محطات استعلامية في هيئة أوامر يطلب استرجاع بيانات من ملف معين موجود في قواعد البيانات . بواسطة اللغة الاستعلامية يستطيع المستخدم طرح تساؤلات و يصل إلى إجابات فورية . مثال : كم عدد الأصناف لدينا في المخزون والتي يكون عددها أقل من نقطة اعادة الطلب .
  • 15.
    الجيل الخامس : اللغات الطبيعية جيل اللغات الطبيعية هي مشابه للغات الاستعلامية ولكنها لا يحتاج المبرمج إلى معرفة كلمات معينة أو قواعد أو عبارات . هذا الجيل يقترب من الحاسبات الخبيرة وهي مجموعة من المعارف جمعت لعدد من الخبراء في مجال معين ومحدد لحل مشكلة محددة . لغة الهدف القيم أو المتألق Object-oriented language عندما يشرع أغلب المبرمجون البدء في مهمة البرمجة فأنهم يفكرون في جزئيين مهمين رموز البيانات التي يجب أن تعالج . خطوات معالجة هذه البيانات . هاتان الخطوتان مهمة في الماضي ولكن الآن في اللغة الطبيعية أغلب المبرمجون يدمجونهما في عنصر واحد يسمى الهدف Object .
  • 16.
    خطوات البرمجة تتكون البرمجة من خمس خطوات :- تحديد المشكلة . تخطيط برنامج منطقي وتصميم الحلول . ترميز البرنامج أو كتابة البرنامج . اختبار البرنامج . التوثيق النهائي للبرنامج .
  • 17.
    اختيار اللغات يجبمراعاة مناسبة اللغة للتطبيق الذي تستعمل من أجله . إذا كان بالإمكان استعمال اللغة بكفاءة على نظام قائم محدد تقاس الكفاءة بواسطة ” وقت الترجمة، وقت التنفيذ، ومتطلبات التخزين الرئيسية “ تحديد الحاجة إلى العاملين و رواتبهم و تدريبهم تعتبر تكاليف إضافية . الخصائص التي تقرر اختيار لغة معينة : سهولة القراءة والكتابة . السمات الموجهه للتطبيقات . مساعدات تطوير البرنامج . الكفاءة .