أنواع برامج الحاسوب (Softwre)
- نظم التشغيل (Operating System).
- البرامج التطبيقية (Application Software).
- لغات البرمجة (Programming Languages).
مجموعة من البيانات أو تعليمات الكمبيوتر:
برامج الكمبيوتر، أو ببساطة البرامج، هي مجموعة من البيانات أو تعليمات الكمبيوتر التي تخبر الكمبيوتر بكيفية العمل.
هذا على النقيض من الأجهزة المادية، التي تم بناء النظام منها ويقوم بالفعل بالعمل.
هذا على النقيض من الأجهزة المادية، التي تم بناء النظام منها ويقوم بالفعل بالعمل.
في علوم الكمبيوتر وهندسة البرمجيات، تعتبر برامج الكمبيوتر كافة المعلومات التي تتم معالجتها بواسطة أنظمة الكمبيوتر والبرامج والبيانات.
تتضمن برامج الكمبيوتر والمكتبات والبيانات غير القابلة للتنفيذ، مثل التوثيق عبر الإنترنت أو الوسائط الرقمية.
تتطلب أجهزة وبرامج الكمبيوتر بعضها البعض ولا يمكن استخدام أي منها بشكل واقعي بمفردها.
تتطلب أجهزة وبرامج الكمبيوتر بعضها البعض ولا يمكن استخدام أي منها بشكل واقعي بمفردها.
تعليمات مطلوبة:
في أدنى مستوى للبرمجة، يتكون الرمز القابل للتنفيذ [تعليمات مطلوبة] من تعليمات لغة الآلة التي يدعمها معالج فردي - عادةً ما تكون وحدة معالجة مركزية (CPU) أو وحدة معالجة رسومات (GPU).
تتكون لغة الآلة من مجموعات من القيم الثنائية تدل على تعليمات المعالج التي تغير حالة الكمبيوتر من حالته السابقة.
على سبيل المثال، قد تغير التعليمات القيمة المخزنة في موقع تخزين معين في الكمبيوتر - وهو تأثير لا يمكن للمستخدم ملاحظته بشكل مباشر.
قد تستدعي التعليمات أيضًا واحدة من العديد من عمليات الإدخال أو الإخراج، على سبيل المثال عرض بعض النص على شاشة الكمبيوتر؛ مما تسبب في تغييرات الحالة التي يجب أن تكون مرئية للمستخدم.
يقوم المعالج بتنفيذ التعليمات بالترتيب الذي تم توفيرها به، ما لم يتم توجيهه إلى "القفز" إلى تعليمات مختلفة، أو يتم مقاطعته بواسطة نظام التشغيل.
على سبيل المثال، قد تغير التعليمات القيمة المخزنة في موقع تخزين معين في الكمبيوتر - وهو تأثير لا يمكن للمستخدم ملاحظته بشكل مباشر.
قد تستدعي التعليمات أيضًا واحدة من العديد من عمليات الإدخال أو الإخراج، على سبيل المثال عرض بعض النص على شاشة الكمبيوتر؛ مما تسبب في تغييرات الحالة التي يجب أن تكون مرئية للمستخدم.
يقوم المعالج بتنفيذ التعليمات بالترتيب الذي تم توفيرها به، ما لم يتم توجيهه إلى "القفز" إلى تعليمات مختلفة، أو يتم مقاطعته بواسطة نظام التشغيل.
معالجات بوحدات تنفيذ متعددة:
اعتبارًا من عام 2015، تحتوي معظم أجهزة الكمبيوتر الشخصية وأجهزة الهواتف الذكية والخوادم على معالجات بوحدات تنفيذ متعددة أو معالجات متعددة تقوم بإجراء العمليات الحسابية معًا، وأصبحت الحوسبة نشاطًا متزامنًا أكثر بكثير من الماضي.تتم كتابة معظم البرامج بلغات برمجة عالية المستوى.
فهي أسهل وأكثر كفاءة للمبرمجين لأنها أقرب إلى اللغات الطبيعية من لغات الآلة.
تُترجم اللغات عالية المستوى إلى لغة الآلة باستخدام مترجم أو مترجم أو مزيج من الاثنين.
يمكن أيضًا كتابة البرنامج بلغة تجميع منخفضة المستوى، والتي لديها مراسلات قوية لتعليمات لغة آلة الكمبيوتر وترجمتها إلى لغة الآلة باستخدام المجمع.
يمكن أيضًا كتابة البرنامج بلغة تجميع منخفضة المستوى، والتي لديها مراسلات قوية لتعليمات لغة آلة الكمبيوتر وترجمتها إلى لغة الآلة باستخدام المجمع.
تصنيف برامج الحاسوب:
على جميع منصات الكمبيوتر تقريبًا، يمكن تجميع البرامج في عدد قليل من الفئات الواسعة.الغرض أو مجال الاستخدام:
بناءً على الهدف ، يمكن تقسيم برامج الكمبيوتر إلى:برامج التطبيقات:
وهو برنامج يستخدم نظام الكمبيوتر لأداء وظائف خاصة أو توفير وظائف ترفيهية تتجاوز التشغيل الأساسي للكمبيوتر نفسه.
هناك العديد من الأنواع المختلفة لبرامج التطبيقات، لأن نطاق المهام التي يمكن إجراؤها باستخدام جهاز كمبيوتر حديث كبير جدًا - انظر قائمة البرامج.
برنامج النظام:
وهو برنامج لإدارة سلوك أجهزة الكمبيوتر، لتوفير الوظائف الأساسية المطلوبة من قبل المستخدمين، أو لتشغيل البرامج الأخرى بشكل صحيح، على الإطلاق.تم تصميم برنامج النظام أيضًا لتوفير نظام أساسي لتشغيل برنامج التطبيق، ويتضمن ما يلي:
تعد البرامج الإشرافية، وأجهزة تحميل التمهيد، والأغلفة وأنظمة النوافذ الأجزاء الأساسية لأنظمة التشغيل.
+ أنظمة التشغيل:
وهي مجموعات أساسية من البرامج التي تدير الموارد وتوفر خدمات مشتركة لبرامج أخرى يتم تشغيلها "في المقدمة".تعد البرامج الإشرافية، وأجهزة تحميل التمهيد، والأغلفة وأنظمة النوافذ الأجزاء الأساسية لأنظمة التشغيل.
من الناحية العملية، يأتي نظام التشغيل مرفقًا ببرنامج إضافي (بما في ذلك البرامج التطبيقية) بحيث يمكن للمستخدم القيام ببعض الأعمال مع جهاز كمبيوتر يحتوي على نظام تشغيل واحد فقط.
+ برامج تشغيل الجهاز:
التي تعمل أو تتحكم في نوع معين من الأجهزة المتصلة بالكمبيوتر.
يحتاج كل جهاز إلى برنامج تشغيل جهاز مطابق واحد على الأقل نظرًا لأن الكمبيوتر يحتوي عادةً على جهاز إدخال واحد على الأقل وجهاز إخراج واحد على الأقل، يحتاج الكمبيوتر عادةً إلى أكثر من برنامج تشغيل واحد للجهاز.
على هذا النحو، البرامج الضارة غير مرغوب فيها.
+ الأدوات المساعدة:
وهي برامج كمبيوتر مصممة لمساعدة المستخدمين في صيانة أجهزة الكمبيوتر الخاصة بهم والعناية بها.- البرمجيات الخبيثة أو البرامج الضارة:
وهو برنامج تم تطويره لإيذاء وتعطيل أجهزة الكمبيوتر.على هذا النحو، البرامج الضارة غير مرغوب فيها.
ترتبط البرامج الضارة ارتباطًا وثيقًا بالجرائم المتعلقة بالكمبيوتر، على الرغم من أن بعض البرامج الضارة ربما تم تصميمها كنكات عملية.
طبيعة أو مجال التنفيذ:
- تطبيقات سطح المكتب:
مثل متصفحات الويب و Microsoft Office، بالإضافة إلى تطبيقات الهواتف الذكية والأجهزة اللوحية (تسمى "التطبيقات").
(هناك دفعة في بعض أجزاء صناعة البرمجيات لدمج تطبيقات سطح المكتب مع تطبيقات الهاتف المحمول، إلى حد ما.
حاول Windows 8 و Ubuntu Touch لاحقًا السماح باستخدام نفس نمط واجهة مستخدم التطبيق على أجهزة الكمبيوتر المكتبية وأجهزة الكمبيوتر المحمولة و الهواتف المحمولة).
حاول Windows 8 و Ubuntu Touch لاحقًا السماح باستخدام نفس نمط واجهة مستخدم التطبيق على أجهزة الكمبيوتر المكتبية وأجهزة الكمبيوتر المحمولة و الهواتف المحمولة).
- نصوص جافا سكريبت:
هي أجزاء من البرامج يتم تضمينها بشكل تقليدي في صفحات الويب التي يتم تشغيلها مباشرة داخل متصفح الويب عند تحميل صفحة الويب دون الحاجة إلى مكون إضافي لمتصفح الويب.
يمكن أيضًا تشغيل البرنامج المكتوب بلغات برمجة أخرى داخل متصفح الويب إذا تمت ترجمة البرنامج إلى JavaScript، أو إذا تم تثبيت مكون إضافي لمتصفح الويب يدعم هذه اللغة؛ المثال الأكثر شيوعًا لهذا الأخير هو نصوص أكشن سكربت، والتي يدعمها مكون Adobe Flash الإضافي.
- برنامج الخادم، بما في ذلك:
- تطبيقات الويب:
التي يتم تشغيلها عادةً على خادم الويب وتخرج صفحات الويب التي يتم إنشاؤها ديناميكيًا لمتصفحات الويب، باستخدام مثال PHP أو Java أو ASP.NET أو حتى JavaScript التي تعمل على الخادم.
في العصر الحديث، تتضمن هذه عادةً بعض جافا سكريبت ليتم تشغيلها في متصفح الويب أيضًا، وفي هذه الحالة يتم تشغيلها جزئيًا على الخادم، جزئيًا في متصفح الويب.
- الإضافات:
هي برامج تعمل على توسيع أو تعديل وظائف برنامج آخر، وتتطلب استخدام البرنامج من أجل العمل.
- تتواجد البرامج المضمنة كبرامج ثابتة داخل الأنظمة المضمنة، أو الأجهزة المخصصة للاستخدام مرة واحدة أو استخدامات قليلة مثل السيارات وأجهزة التلفزيون (على الرغم من أن بعض الأجهزة المضمنة مثل الشرائح اللاسلكية يمكن أن تكون جزءًا من نظام كمبيوتر عادي غير مضمن مثل كمبيوتر شخصي أو هاتف ذكي).
في سياق النظام المضمن، لا يوجد أحيانًا تمييز واضح بين برنامج النظام وبرنامج التطبيق.
ومع ذلك، تعمل بعض الأنظمة المضمنة على أنظمة تشغيل مضمنة، وتحتفظ هذه الأنظمة بالتمييز بين برامج النظام والبرامج التطبيقية (على الرغم من أنه لن يكون هناك سوى تطبيق واحد ثابت يتم تشغيله دائمًا).
- إن Microcode هو نوع خاص وغامض نسبيًا من البرامج المضمنة يخبر المعالج نفسه بكيفية تنفيذ رمز الجهاز، لذا فهو في الواقع مستوى أقل من رمز الجهاز.
في سياق النظام المضمن، لا يوجد أحيانًا تمييز واضح بين برنامج النظام وبرنامج التطبيق.
ومع ذلك، تعمل بعض الأنظمة المضمنة على أنظمة تشغيل مضمنة، وتحتفظ هذه الأنظمة بالتمييز بين برامج النظام والبرامج التطبيقية (على الرغم من أنه لن يكون هناك سوى تطبيق واحد ثابت يتم تشغيله دائمًا).
- إن Microcode هو نوع خاص وغامض نسبيًا من البرامج المضمنة يخبر المعالج نفسه بكيفية تنفيذ رمز الجهاز، لذا فهو في الواقع مستوى أقل من رمز الجهاز.
عادةً ما يكون مملوكًا لمصنّع المعالج، ويتم توفير أي تحديثات برمجية تصحيحية ضرورية لهم من قبل المستخدمين (وهو أرخص بكثير من شحن أجهزة المعالج البديلة).
وبالتالي لا يتوقع المبرمج العادي أن يضطر إلى التعامل معها.
البرنامج مكتوب بلغة برمجة واحدة أو أكثر؛ هناك العديد من لغات البرمجة الموجودة، ولكل منها تنفيذ واحد على الأقل، كل منها يتكون من مجموعة أدوات البرمجة الخاصة بها.
وبالتالي لا يتوقع المبرمج العادي أن يضطر إلى التعامل معها.
أدوات البرمجة:
أدوات البرمجة هي أيضًا برامج في شكل برامج أو تطبيقات يستخدمها مطورو البرامج (المعروفين أيضًا باسم المبرمجين أو المبرمجين أو المتسللين أو مهندسي البرمجيات) لإنشاء أو تصحيح أو صيانة (أي تحسين أو إصلاح)، أو دعم البرامج.البرنامج مكتوب بلغة برمجة واحدة أو أكثر؛ هناك العديد من لغات البرمجة الموجودة، ولكل منها تنفيذ واحد على الأقل، كل منها يتكون من مجموعة أدوات البرمجة الخاصة بها.
قد تكون هذه الأدوات برامج قائمة بذاتها نسبيًا مثل المجمعين، والمصححين، والمترجمين الفوريين، والروابط، ومحرري النصوص، والتي يمكن دمجها معا لإنجاز مهمة؛ أو قد تشكل بيئة تطوير متكاملة (IDE)، والتي تجمع بين معظم أو كل وظائف هذه الأدوات المستقلة.
قد تقوم IDEs بذلك عن طريق استدعاء الأدوات الفردية ذات الصلة أو عن طريق إعادة تنفيذ وظائفها بطريقة جديدة.
يمكن لـ IDE تسهيل القيام بمهام محددة، مثل البحث في الملفات في مشروع معين.
توفر العديد من تطبيقات لغة البرمجة خيار استخدام كل من الأدوات الفردية أو IDE.
توفر العديد من تطبيقات لغة البرمجة خيار استخدام كل من الأدوات الفردية أو IDE.
0 تعليقات:
إرسال تعليق