علم الحاسوب
علم الحاسوب أو علم المعلومات هو العلم الذي يدرس الحوسبة ومعالجة البيانات والنظريات والتطبيقات التي تشكل الأساس لأتمتة نقل المعلومات وتشغيلها وتحويلها، وذلك بدراسة برمجيات الحاسوب وعتاد الحاسوب. في بعض الدول العربية يطلق على مصطلح علم الحاسب الآلي المعلوماتية اختصاراً.
تهتم علوم الحاسوب بداية بدراسة الأسس النظرية للحوسبة والمعلومات وتطبيقاتها في الأنظمة الحاسوبية.
ينضوي تحت اسم المعلوماتية وعلوم الحاسب حقول متنوعة كلها تصنف تحت العنوان العريض "علوم الحاسوب". البعض يؤكد على الحوسبة وبعض تطبيقاتها مثل رسوميات الحاسوب في حين أن فروعا أخرى تدرس خواص مشكلة تحسيبية computational problem (مثل نظرية التعقيد الحسابي)، في حين تبقى فروعا أخرى تركز على التحديات التي تطرحها تطبيقات الحوسبة. فمثلا نظرية لغة البرمجة(programming language theory) تدرس الطرق والوسائل لوصف عملية التحسيب، في حين تقوم برمجة الحاسوب بتطبيق لغات برمجة معينة لاستخراج جواب أو حل لمشكلة تحسيبية معينة.
تاريخ
يعود تاريخ علوم الحاسوب إلى اختراع أول حاسوب رقمي حديث. فقبل العشرينات من القرن العشرين، كان مصطلح حاسوب computer يشير إلى أي أداة بشرية تقوم بعملية الحسابات. ما هي القضايا أو الأشياء التي يمكن لآلة أن تحسبها باتباع قائمة من التعليمات مع ورقة وقلم، دون تحديد للزمن اللازم ودون أي مهارات أو بصيرة (ذكاء)؟ وكان أحد دوافع هذه الدراسات هو تطوير آلات حاسبة computing machines يمكنها إتمام الأعمال الروتينية والعرضة للخطأ البشري عند إجراء حسابات بشرية.
خلال الأربعينات، مع تطوير آلات حاسبة أكثر قوة وقدرة حسابية، تتطور مصطلح حاسوب ليشير إلى الآلات بدلا من الأشخاص الذين يقومون بالحسابات. وأصبح من الواضح أن الحواسيب يمكنها أن تقوم بأكثر من مجرد عمليات حسابية وبالتالي انتقلوا لدراسة تحسيب أو التحسيب بشكل عام. بدأت المعلوماتية وعلوم الحاسب تأخذ استقلالها كفرع أكاديمي مستقل في الستينات، مع إيجاد أوائل أقسام علوم الحاسب في الجامعات وبدأت الجامعات تعطي إجازات في هذه العلوم.
أهم الفروع
يمكن تقسيم المعلوماتية إلى ثلاثة أقسام:
معلوماتية نظرية: يدرس اللغات الصورية، نظريات الحوسبة أو الخوارزميات وحساب التكاليف.
معلوماتية عملية: يدرس مهارات ترجمة اللغات الصورية ونظريات والخوارزميات إلى تطبيقات يسهل تداولها، والتطوير المستمر لها مع ما يماشي العلوم ومجالات الحياة الأخرى.
المعلوماتية التطبيقية: وتهتم بالتطبيقات المختلفة للحاسوب في مجالات الحياة : كالتصميم والتصنيع باستخدام الحاسب، والأنظمة الإدارية والصناعية.
هندسة الحاسوب: هذا الفرع يهتم بكيفية صناعة معدات الحاسوب (عتاد الحاسوب). صناعة الحواسيب تعتمد على العديد من المجالات مثل المعلوماتية النظرية، الفيزياء، الكمياء، الإلكترونيات.
يمكن تقسيم المعلوماتية أيضا بالشكل التالي :علم الخوارزميات والمعلوماتية النظرية: وهي تدرس الجانب النظري في المعلوماتية.
علم التقنيات الحاسوبية: هي التحليل، التصميم وبناء المكونات الصلبة للحواسيب.
هندسة الحاسوب
هندسة الحاسوب أو هندسة المعلوماتية التقنية هو أحد فروع الهندسة الكهربائية وهو الاختصاص الذي يجمع بين الهندسة الإلكترونية وعلوم الحاسب [1].
مهندسو الحاسوب هم عبارة عن مهندسو إلكترونيات أساساً، ولديهم معلومات إضافية وتدريب وخبرة في مجال تصميم البرمجيات والعتاد الصلب للحاسوب، خصوصا في مجال تكامل البرمجيات مع العتاد. يشارك مهندسو الحاسوب في جميع مجالات الحوسبة من تصميم المعالجات الصغرية، والحواسيب الشخصية والحواسب الفائقة supercomputer وحتى تصميم الدارات والشيبات بالإضافة لتكامل الأنظمة الحاسوبية مع أنواع أخرى من الأنظمة (مثل المركبات ذات المحركات والأنظمة الرقمية). [2].
يساهم مهندسو الحاسب icl أيضاً في كتابة الشفرات البرمجية البرمجيات المضمنة embedded software للمتحكمات الصغرية microcontroller ذات الزمن الحقيقي، تصميم شيبات VLSI، العمل على الحساسات التماثلية analog sensors، تصميم أنظمة التشغيل وحتى لوحات الدارات circuit board والروبوتات.
هندسة البرمجيات
هندسة البرمجيات : وهي فرع من فروع علم الحاسب يهدف إلى تطوير الأسس والقواعد التي تؤدي إلى تحسين طرق تصميم و تطوير البرمجيات على جميع المستويات وذلك بطريقة تلبي احتياجات المستخدمين هندسة البرمجيات لا تهتم بكتابة البرنامج نفسه أي بكتابة شفرته بل تحسين عملية التطوير ويصنع البرنامج إبتدائا من المواصفات التي يصنعها المحترف وانتهائاً عند مشكلة صيانة البرنامج أو توسيعه وهي تقوم على دراسة احتياجات المستخدم و تصميم البرنامج المناسب لها قبل كتابة شفرته و الأخذ بعين الاعتبار العديد من الجوانب كالقدرة على تطوير البرنامج بسهولة لاحقا أو السرعة أو إمكانية إضافة ملحقات له بشكل ديناميكي . تاريخ هندسة البرمجيات :استخدمت هندسة البرمجيات كمفهوم نظري من حين لآخر في أواخر الخمسينيات وبداية الستينيات من القرن الماضي أما الاستخدام الأول لهذا المصطلح في مؤتمر عقد من قبل اللجنة العلمية في منظمة "حلف شمال الأطلسي" عام-1968- حول البرمجيات وقد أخذ هذا المصطلح بالانتشار منذ ذالك الحين ولاقى اهتماما ً متزايداً في نواح ٍ مختلفة وقد عقد المؤتمر لمعالجة ما يعرف"بأزمة البرمجيات "والتي ظهرت بسبب عدم استخدام منهجية في التفكير (software development process) عند بناء البرمجيات مما أدى إلى ظهور أخطاء كثيرة خلال عملية بناء وصيانة البرمجيات و بالتالي أصبحت البرمجيات تحتاج إلى وقت كبير لتطويرها ولصيانتها وأيضا ً لكلفة مالية عالية أكثر مما هو مخمن لها وبعد تحمل التأخير في الوقت وتجاوز الميزانية كانت البرمجيات ذات كفاءة ضعيفة في إنجاز الوظائف المطلوبة ,وقلة في الفعالية ,وذلك بعد تلبية كافة المتطلبات بالشكل الكامل الصحيح . مفهوم هندسة البرمجيات : البرمجة (software ) : شيء غير ملموس إلى حد ما بالمقارنة مع المنتجات الأخرى –وهي سلسة من آلاف أو ملايين الأوامر التي تطلب من الحاسب إجراء عمليات معينة مثل عرض المعلومات أو إجراء الحسابات أو تخزين البيانات وهذه البرمجيات هي بمثابة الروح من الجسد في النظام الحاسوبي وهي في توسع دائم وازدياد و المتطلبات والمهام التي تقوم بتنفيذها أما هندسة البرمجيات :وهي فرع من فروع الهندسة يقوم على مجموعة أسس وقواعد تهدف إلى تصميم البرنامج بوفرة ونوعية عالية تلبى احتياجات الهندسة . وتتميز بأنها لا تحتاج إلى رأس مال كبير على عكس بقية فروع الهندسة الأخرى . كما لايكفي لإيجاد البرمجية المتكاملة والجيدة عمل شخص واحد وإنما يتطلب ذلك فريق من المهندسين الجيدين وقد كان من الضروري إيجاد علم يعنى بهندسة البرمجيات لوضع الأسس والمعايير التي تصون هذه المهنة من المتطفلين بحيث يصبح بالإمكان تميز البرنامج الجيد من غير الجيد .
هندسة عتاد الحاسوب
هندسة عتاد الحاسوب (بالإنجليزية: Computer Hardware Engineering) تبحث مبادئ صناعة الحواسيب من الناحية الإلكترونية والفيزيائية ويناء شبكات الحاسوب ووسائط تخزين البيانات إلكترونيا ومعالجتها ونقلها عبر الشبكات المختلفة.