علم الحاسوب

من ويكيبيديا، الموسوعة الحرة
(بالتحويل من بوابة:علم الحاسوب)
اذهب إلى: تصفح، ‏ ابحث
إبريق شاي يوتاه، نموذج لرسوميات حاسوبية خوارزمية فرز سريع
لامدا الفأرة تمثل التفاعل بين الإنسان والحاسوب
تتعامل علوم الحاسوب مع النظريات الأساسية للمعلومات والحساب، والتقنيات العملية لتنفيذها وتطبيقها.

علم الحاسوب هو العلم الذي يدرس الحوسبة ومعالجة البيانات والنظريات والتطبيقات التي تشكل الأساس لأتمتة نقل المعلومات وتشغيلها وتحويلها، وذلك بدراسة برمجيات الحاسوب وعتاد الحاسوب بشكل علمي مجرد. في بعض الدول العربية يطلق على مصطلح علم الحاسب الآلي المعلوماتية اختصارًا وليس بقصد خلطه مع العلوم الأخرى وخاصة التخصصات المتعلقة بتكنولوجيا المعلومات المهتمة بالتطبيق غير المبني على أسس علمية، كما يُطلق عليه في الجزائر اسم "الإعلام الآلي".

يبحث علم الحاسوب استخدام الحوسبة بجميع اشكالها لحل المشكلات من منظور علمي رياضي. وغالبًا ما يشمل ذلك تصميم وبرمجة البرمجيات لكي تستعمل كأداة لحل هذه المشاكل.

علم الحاسوب ليس معنيًا بتعلم طريقة استخدام البرمجيات بشكل عام وبحد ذاتها. من الصحيح القول أن هناك بعض الوظائف التي تعتمد بشكل أساسي على بعض البرمجيات كبرمجيات التصميم لمصممين الجرافيك أو محررات النصوص والجداول لمدخلي البيانات، لكن علم الحاسوب ليس معنيًا بدراسة طريقة التعامل مع هذه البرمجبات وغيرها بشكل عام وليس معنيًا كذلك بتصميم صفحات الويب أو تجهيزها.

عند الحديث عن البرمجيات فإن علم الحاسوب يُعنى “بطريقة” بناء البرمجيات باستخدام أسس علمية ورياضة وبدراسة الخوارزميات الأنسب استخدامًا في تلك البرمجيات.

أصبح علم الحاسوب علمًا قائمًا بذاته، يُعنى ببحث أمور الحساب والاحتساب من منظور علمي دقيق.

أما تكنولوجيا المعلومات فهو مجال آخر يُعنى بمسائل أخرى مثل طُرُق استخدام البرمجيات والتعامل معها وطرق استعمال المعلومات أو حتى طريقة استخدام ما هو جاهز في أغلب الأحيان لإنجاز عمل ما، وغالبًا ما يُستخدم مصطلح تكنولوجيا المعلومات IT بشكل واسع بين العامة وفي سوق العمل.

[1] [2] [3]

لعلوم الحاسب حقول متنوعة كلها تصنف تحت العنوان العريض "علوم الحاسوب". يؤكد البعض على الحوسبة وبعض تطبيقاتها مثل رسوميات الحاسوب في حين أن فروعًا أخرى تدرس خواص مشكلة تحسيبية Computational problem (مثل نظرية التعقيد الحسابي).وتبقى فروع أخرى تركز على التحديات التي تطرحها تطبيقات الحوسبة. فمثلا نظرية لغة البرمجة programming language theory تدرس الطرق والوسائل لوصف عملية التحسيب، في حين تقوم برمجة الحاسوب بتطبيق لغات برمجة معينة لاستخراج جواب أو حل لمشكلة تحسيبية معينة.

تاريخ[عدل]

يعود تاريخ علوم الحاسوب إلى اختراع أول حاسوب رقمي حديث. فقبل العشرينات من القرن العشرين، كان مصطلح حاسوب computer يشير إلى أي أداة بشرية تقوم بعملية الحسابات. ما هي القضايا أو الأشياء التي يمكن لآلة أن تحسبها باتباع قائمة من التعليمات مع ورقة وقلم، دون تحديد للزمن اللازم ودون أي مهارات أو بصيرة (ذكاء)؟ وكان أحد دوافع هذه الدراسات هو تطوير آلات حاسبة computing machines يمكنها إتمام الأعمال الروتينية المُعرّضة للخطأ البشري عند إجراء حسابات بشرية.

خلال الأربعينات ومع تطوير آلات حاسبة أكثر قوة وقدرة حسابية تتطور مصطلح حاسوب ليُشير إلى الآلات بدلا من الأشخاص الذين يقومون بالحسابات. وأصبح من الواضح أن الحواسيب يمكنها أن تقوم بأكثر من مجرد عمليات حسابية وبالتالي تم الانتقال إلى دراسة تحسيب أو التحسيب بشكل عام. بدأت المعلوماتية وعلوم الحاسب تأخذ استقلالها كفرع أكاديمي مستقل في الستينييات، مع إيجاد أوائل أقسام علوم الحاسب في الجامعات وبدأت الجامعات تمنح إجازات في هذه العلوم.

أهم الفروع[عدل]

يمكن تقسيم علم الحاسوب إلى ثلاثة أقسام:

  1. علم الحاسوب النظري: يدرس اللغات الصورية، نظريات الحوسبة أو الخوارزميات وحساب التكاليف.
  2. علم الحاسوب العملي: يدرس مهارات ترجمة اللغات الصورية، النظريات والخوارزميات إلى تطبيقات يسهل تداولها، والتطوير المستمر لها مع ما يتماشى مع العلوم وباقي مجالات الحياة.
  3. علم الحاسوب التطبيقي: ويهتم بالتطبيقات المختلفة للحاسوب في مجالات الحياة : كالتصميم والتصنيع باستخدام الحاسب إلى جانب الأنظمة الإدارية والصناعية.
  4. هندسة الحاسوب: هذا الفرع يهتم بكيفية صناعة مُعدّات الحاسوب (عتاد الحاسوب). صناعة الحواسيب تعتمد على العديد من المجالات مثل المعلوماتية النظرية، الفيزياء، الكمياء والإلكترونيات.

يُمكن تقسيم علم الحاسوب أيضا على النحو التالي :

  • علم الخوارزميات والبيانات النظرية: دراسة الجانب النظري في علوم البيانات.
  • علم التقنيات الحاسوبية: التحليل، التصميم وبناء المكونات الصلبة للحواسيب.

هندسة الحاسوب[عدل]

حديثا في معظم الجامعات تقسم هندسة الحاسوب إلى قسمين أساسيين بعدما كانت تتبع الهندسة الكهربائية والإلكترونية

هندسة البرمجيات[عدل]

هندسة البرمجيات أو software engineering,, هي دراسة تصميم وتنفيذ وتعديل البرمجيات بما يضمن توفر هذه البرمجيات بجودة عالية وتكلفة معقولة متاحة للجميع وقابلة للتطوير فيما بعد وسريعة للبناء. وهندسة البرمجيات تقوم على أسس ونظريات من الهندسة وعلوم الحاسب كمبدأ ال Functional Structure من الهندسة والذي يعتمد على مبدأ تصميم أجزاء صغيرة تتجانس في العمل مع بعضها لتشكل عمل الكل. ومن علوم الحاسب يأخذ مباديء كثيرة لعل من أبرزها ال Object Oriented Design والذي يتعامل مع كل الأجزاء في البرمجيات ككائنات تتفاعل مع بعضها لتشكل عمل النظام بالكامل. وهي تختلف عن علوم الحاسب حيث أنها تعد فرع مهم من فروع علوم الحاسب.

اللينة والحوسبة الصلبة

هندسة عتاد الحاسوب[عدل]

هندسة عتاد الحاسوب (بالإنجليزية: Computer Hardware Engineering) تبحث مبادئ صناعة الحواسيب من الناحية الإلكترونية والفيزيائية وبناء شبكات الحاسوب ووسائط تخزين البيانات إلكترونيا ومعالجتها ونقلها عبر الشبكات المختلفة.

حقول علم الحاسوب[عدل]

الخوارزميات وبنية البيانات[عدل]

O(n^2) Sorting quicksort anim.gif Singly linked list.png
تحليل الخوارزميات خوارزميات بنية البيانات

الحوسبة العددية والرمزية[عدل]

1u04-argonaute.png User-FastFission-brain.gif Naphthalene-3D-balls.png Neuron-no labels.png X-43A (Hyper - X) Mach 7 computational fluid dynamic (CFD).jpg Wind-particle.png y = \sin(x) + c
معلوماتية حيوية علوم استعرافية كيمياء حسابية علم الأعصاب الحاسوبي فيزياء حاسوبية تحليل عددي الرياضيات الرمزية

معلوماتية نظرية[عدل]

الأسس الرياضية[عدل]

علم التعمية Cryptography

خوارزميات لحماية البينات الخصوصية بما فيها التعمية

نظرية المخططات Graph theory

أسس بنى تخزين المعلومات وخوارزميات البحث.

منطق رياضي Mathematical logic
نظرية الأنماط Type Theory

تحليل شكلي لأنماط المعطيات, واستخدام هذه الأنماط لفهم خصائص البرمجيات, خاصة أمن البرامج وثباتها.

نظرية الأعداد
نظرية التصنيف
هندسة رياضية حاسوبية

نظرية التحسيب[عدل]

نظرية الأتمتة Automata theory
نظرية الحسابات Computability theory
نظرية التعقيد الحسابي Computational complexity theory دراسة الحدود الأساسية للحوسبة (بالذات الزمن وسعات التخزين)
نظرية الحوسبة الكمومية

علم حاسوب عملي[عدل]

خوارزميات وبنى بيانات[عدل]

تحليل الخوارزميات Analysis of algorithms
خوارزميات Algorithms دراسة عمليات شكلية لإنجاز التحسيب، ومدى فعالية هذه العمليات.
بنى البيانات Data Structure تنظيم ومعالجة البيانات

لغات البرمجة والمترجمات البرمجية[عدل]

مترجم (برمجة) Compiler طرق برمجة البرامج الحاسوبية من لغات برمجة عالية المستوى إلى -لغات برمجة منخفضة المستوى تكون هته المرحلة بعد كتابة البرنامج بإحدى لغات البرمجة ك 
java php C... حيث يتم تحويل نص البرنامج من نص عالي المستوى له معنى مقروء بالنسبة للإنسان إلى نص منخفض المستوى يتكون من مجموعة من تتابعات الصفر والواحد لا يفهمه سوى الحاسوب. كانت هذه العملية يدوية في أول أيام نشوء الحواسيب لكن تطورت بعد إنشاء المترجم le compilateur

.

مفسر (برمجة) Interpreter
لغة برمجة 
لغات صورية للتعبير عن الخوارزميات.

قواعد البيانات[عدل]

استخراج البيانات Data mining
دراسة خوارزميات البحث ومعالجة البيانات في المستندات وقواعد البيانات; ترتبط أيضا ب استرجاع المعلومات information retrieval
قواعد بيانات علائقية Relational databases
Study of algorithms for searching and processing information in documents and databases; closely related to استرجاع المعلومات information retrieval.

أنظمة موزعة، ومتوازية، ومتواقتة[عدل]

تزامن (حوسبة) Concurrency 
نظرية وتطبيق التحسيب المتزامن والتفاعلي.
تشبيك حاسوبي Computer networking خوارزميات وبروتوكولات لنقل مضمون للبيانات لمسافات بعيدة مع تصحيح الأخطاء error correction
حوسبة متوازية Parallel computing حوسبة تستخدم عدة حواسب وعدة معالجات معا على التوازي
حوسبة موزعة Distributed computing

تكوين الحاسوب[عدل]

معمارية أو تكوين الحاسوب Computer architecture the design, organization, optimization and verification of a computer system, mostly about CPUs and Memory subsystem
تنظيم الحاسوب Computer organization
أنظمة التشغيل 

أنظمة لإدارة برامج الحاسب وبنى بياناته

هندسة برمجيات[عدل]

برمجة الحاسوب Computer programming كتابة برامج باستخدام لغات برمجة
طرق صورية Formal methods طرق رياضية للوصف والاستنتاج حول تصميم البرمجيات software designs.
هندسة برمجيات Software engineering مباديء وممارسة تصميم، تطوير، وفحص البرامج.
تصميم الخوارزميات
تطوير البرمجيات Software development
هندسة عكسية Reverse Engineering

علم حاسوب عملي[عدل]

الذكاء الاصطناعي[عدل]

ذكاء اصطناعي Artificial intelligence
استنتاج مؤتمت Automated reasoning
روبوتية أو صتاعة الرجل الآلي Robotics
algorithms for controlling the behavior of robots
رؤية حاسوبية Computer vision
algorithms for extracting three dimensional objects from a two dimensional picture
تعلم آلي Machine Learning
حياة اصطناعية Artificial Life
معالجة اللغات الطبيعية/لسانيات حاسوبية

الاتصالات[عدل]

صوت الحاسوب Computer audio
التشبيك الحاسوبي
علم التعمية

رسوميات حاسوبية[عدل]

رسوميات حاسوبية Computer graphics
خوارزميات لتوليد صور رسومية لتوليد ما هو موجود في الواقع أو تمثيل المعلومات المراد تصويرها بشل مرئي.
معالجة الصور Image processing
إحساس عن بعد Remote Sensing

التفاعل الإنساني الحاسوبي[عدل]

تفاعل إنساني-حاسوب

حوسبة علمية[عدل]

معلوماتية حيوية
حوسبة علمية
علوم استعرافية
كيمياءوفيزياء حاسوبية
فيزياء حاسوبية
علوم عصبية حاسوبية
خزارزميات عددية
رياضيات رمزية Symbolic mathematics

مجالات متعلقة[عدل]

علم الحاسوب يرتبط ارتباطا وثيقا بعدد من المجالات، وهذه المجالات تتداخل معا بشكل كبير، ولكن توجد فروق بينها، من هذه المجالات:

  • هندسة الحاسوب هي التحليل، التصميم وبناء المكونات الصلبة للحواسيب (عتاد الحاسوب).
  • الرسوميات الحاسوبية هو مجال حوسبة المرئيات، حيث يتم استخدام الحاسوب لبناء صور ورسومات بشكل اصطناعي، أو لدمج أو تعديل الصور المأخوذة من العالم الواقعي.
  • برمجة الحاسوب أو تطوير البرمجيات يدرس كتابة البرامج للحاسوب.
  • علم المعلومات هو دراسة البيانات والمعلومات، وكيف يتم تفسيرها وتحليلها وتخزينها واسترجاعها. وهو علم بدأ كالأساس العلمي للاتصالات وقواعد البيانات.
  • تأمين المعلومات هو دراسة وبناء أنظمة معلومات آمنة، تشمل أنظمة التشفير وحماية المعلومات.
  • أنظمة المعلومات يدرس استخدام الحاسوب والحوسبة لدعم عمل المؤسسات
  • هندسة البرمجيات التي تعني في تحليل، تصميم، بناء واختيار البرامج. هندسة البرمجيات تشمل أساليب التطوير، وغيرها من المجالات الأخرى.

حقول مرتبطة[عدل]

انظر أيضاً[عدل]

وصلات خارجية[عدل]

مراجع[عدل]

  1. ^ Computer science is the study of information Department of Computer and Information Science, Guttenberg Information Technologies
  2. ^ Computer science is the study of computation. Computer Science Department, College of Saint Benedict, Saint John's University
  3. ^ علوم الحاسوب هي دراسة كافة نواحي الأنظمة الحاسوبية من الأسس النظرية والعلمية إلى دراسة التطبيقات كافة حتى ضمن المشاريع البرمجية الضخمة Massey University