hotchpotch/wikipedia-multilingual-ir-pairs huggingface dataset:
لغة برمجة
لغة البرمجة (بالإنجليزية: Programming language)، هي مجموعة من الأوامر، تكتب وفق قواعد تُحَدَّد بواسطة لغة البرمجة، ومن ثُمَّ تمر هذه الأوامر بعدة مراحل إلى أن تنفذ على جهاز الحاسوب.
تقسم لغات البرمجة بناء على قربها من اللغات الإنسانية إلى:
وتقسم أحياناً بناء على الأغراض المرغوبة من اللغة المستخدمة. هناك لغات صُممت لكي تعمل على أجهزة معينة، مثل أن تقوم شركة ما بإنتاج جهاز حاسوب أو معالج مركزي (وحدة معالجة مركزية)، وتوفر له دليل استعمال يحتوي على الأوامر التي تنفذ عليه، وهناك لغات أخرى أكثر عمومية تعمل بشكل مستقل عن نوع الآلة، أي أنها تعمل ضمن آلة افتراضية، مثل لغة جافا.
لغة برمجة تعريف البرمجة
من الممكن تعريف البرمجة بأنها عملية كتابة تعليمات وأوامر لجهاز الحاسوب أو أي جهاز آخر، لتوجيهه وإعلامه بكيفية التعامل مع البيانات أو كيفية تنفيذ سلسلة من الأعمال المطلوبة.
تتبع عملية البرمجة قواعد خاصة باللغة التي اختارها المبرمج.
كل لغة لها خصائصها التي تميزها عن الأخرى وتجعلها مناسبة بدرجات متفاوتة لكل نوع من أنواع البرامج والمهمة المطلوبة من هذا البرنامج.
كما أن للغات البرمجة أيضاً خصائص مشتركة وحدود مشتركة بحكم أن كل هذه اللغات صممت للتعامل مع الحاسوب.
لغة برمجة تعريف البرمجة
وتتطور لغات البرمجة (البرمجيات) بتطور الحاسوب (عتاد الحاسوب). فعندما ابتكر الحاسوب الإلكتروني في الأربعينيات والخمسينيات من القرن الماضي (بعد أجهزة الحساب الكهربائية في العشرينات) وكان الكمبيوتر يعمل بأعداد كبيرة من الصمامات الإلكترونية - كانت لغة البرمجة معقدة هي الأخرى، وكانت عبارة عن سلسلة من الأعداد وتكتب على شكل أكواد برمجية طويلة هذه الاعداد هي الرقمين الصفر 0 والواحد 1 وهذه اللغة تدعى اللغة الثنائية أو لغة الآلة، وكان ذلك صعبا على المبرمجين. ولكن بابتكار الترانزيستور صغر حجم الحاسوب كثيرا وزادت إمكانياته، واستطاع المختصون والمبرمجون في نفس الوقت أن يبتكروا لغات برمجة أسهل للاستخدام، وأصبحت لغات البرمجة مفهومة إلى حد بعيد للمختصين. ولا يزال التطوير والتسهيل قائماً.
لغة برمجة خصائص لغات البرمجة
لغة البرمجة هي بالأساس طريقة تسهل للمبرمج كتابة برنامجه على شكل تعليمات وأوامر يفهمها الحاسوب، بغرض تنفيذ العمل المطلوب. ومن المعروف ان الحاسوب يحول اللغة المكتوبة بها البرمجة إلى سلسلة من 0 و 1، ويبدأ على أساسها عمله.
ولكتابة الأوامر، توفر لغة البرمجة المختارة مجموعة من الأمور الأساسية للاستناد إليها أثناء عملية تكوين البرنامج ومجموعة من القواعد التي تمكن من التعامل مع معلومات وتنظيمها بغرض أداء العمل المطلوب.
يتم تخزين المعلومات في الأجهزة الرقمية الحالية في هيئة أرقام طبقا لنظام العد الثنائي (أي المعتمد على 0 و 1).
وبصفة عامة فان المعالجات الحديثة لا تقوم بالتعامل مع البت الواحد، بل مع مجموعات من البتات يمكن أن تضم :
وباستعمال 8 بت مثلا، يمكن تشكيل 256 قيمة مختلفة بين 0 و 255. وتمثل وظيفة لغة البرمجة استغلال وحدة أو مجموعة من الوحدات (رموزا) لتخزين معلومات من الحياة الواقعية، مثل: الأسماء، أو القياسات، أو أرقام الحسابات البنكية.
لغة برمجة خصائص لغات البرمجة
يقوم المبرمج باجراء عمليات على وحدات المعلومات مثل تخزينها وقراءتها ومقارنتها، كما يمكن إجراء عمليات حسابية عليها أيضا، وتتبع العمليات القواعد المحددة للغة.
وللغة البرمجة دور آخر وهو التحكم في تنظيم إجراء العمليات، حيث توجه تنفيذ خطواتها بنفس تتابع كتابتها من طرف المبرمج.
تمَكِّن اللغة أيضاً من إجراء عملية اختيار وتفرع، وذلك بإدخال شرط منطقي يقوم الحاسوب على أساسه باختيار اتجاه الاستمرار في أداء العمل: فلنفترض أن البرنامج الذي يريد المبرمج صنعه يقوم بقسمة عددين يختارهما المستخدم، وإظهار النتيجة على الشاشة، ومن المعروف أن القسمة على صفر غير ممكنة، لذا وَجَب على المبرمج أن يشترط في برنامجه هذا الاختيار: فإن كان القاسم مخالفا للصفر، فإن البرنامج يقوم بإجراء العملية ويعرض النتيجة. أما إن كان القاسم صفراً فإن البرنامج لا يقوم بإجراء العملية وإنما ينبه المستخدمَ أن القسمة على صفر.
لغة برمجة خصائص لغات البرمجة
ويمكن تنظيم الأوامر بصفة أخرى، حيث يقع تنفيذ أمر أو مجموعة من الأوامر بصفة متكررة حلقية (Loop)، كما يمكن تقسيم الأوامر أيضاً على شكل وحدات فرعية، تقوم كل وحدة بإنجاز عمل محدد، هدفه تقسيم العمل إلى أجزاء يسهل العمل عليها كل على حدة في هيئة دورات حلقية (Loops).
تتمتع كل لغة بتصميم خاص من حيث التعامل مع المعطيات، وكذا الطرق والتسهيلات التي توفرها للتعامل مع مشكلة معينة.
يمكن تصنيف لغات البرمجة من حيث طريقة بناء البرامج إلى:
ولغات شيئية مثل لغات البرمجة سي وجافا ودلفي. وهي لغات غير تسلسلية، تقوم على أساس العناصر والمتحولات المستخدمة ضمن البرنامج المطلوب تحويلها، من خلال تطبيق مجموعة معينة من الإجراءات عليها.
لغة برمجة التاريخ
تمت برمجة أجهزة الكمبيوتر المبكرة جدًا، مثل Colossus، دون مساعدة برنامج مخزن، وذلك عن طريق تعديل دوائرها أو وضع بنوك الضوابط المادية.
وبعد ذلك بقليل، أصبح من الممكن كتابة البرامج بلغة الآلة، حيث يكتب المبرمج كل تعليمات في شكل رقمي، يمكن للجهاز تنفيذه مباشرة. على سبيل المثال، قد تتكون تعليمات إضافة القيمة في موقعين للذاكرة من 3 أرقام: "رمز التشغيل" الذي يحدد عملية "الإضافة"، وموقعين للذاكرة. وتتم قراءة البرامج على شكل عشري أو ثنائي، من البطاقات المثقوبة أو الشريط الورقي أو الشريط المغناطيسي أو يتم تبديلها على المفاتيح الموجودة على اللوحة الأمامية للحاسوب. سُميت لغات الآلة فيما بعد باسم لغات برمجة الجيل الأول (1GL).
كانت الخطوة التالية هي تطوير ما يسمى لغات برمجة الجيل الثاني (2GL) أو لغات التجميع، حيث كانت لا تزال مرتبطة بشكل وثيق ببنية مجموعة التعليمات لجهاز حاسوب معين. وقد ساعدت في جعل البرامج أكثر قابلية للقراءة من قبل الإنسان، وخففت على المبرمج حسابات العناوين المملة والمعرضة للخطأ.
لغة برمجة التاريخ
تمت كتابة أولى لغات البرمجة عالية المستوى، أو لغات برمجة الجيل الثالث (3GL)، في الخمسينيات من القرن العشرين. كانت لغة البرمجة عالية المستوى المبكرة التي تم تصميمها للحاسوب هي Plankalkül، والتي تم تطويرها للغة الألمانية Z3 بواسطة Konrad Zuse بين عامي 1943 و 1945م. ومع ذلك، لم يتم تنفيذها حتى عامي 1998 و 2000م.
كانت الشفرة القصيرة لجون ماوكلي، التي تم اقتراحها عامَ 1949م، واحدة من أولى اللغات عالية المستوى التي تم تطويرها للحاسوب الإلكتروني على الإطلاق. وعكس كود الآلة، تمثل عبارات الكود القصير تعبيرات رياضية بشكل مفهوم. ومع ذلك، كان لا بد من ترجمة البرنامج إلى كود الآلة كل مرة يتم تشغيله، مما يجعل العملية أبطأ بكثير من تشغيل كود الآلة المعادل.
في جامعة مانشستر، قام أليك جليني بتطوير Autocode أوائلَ الخمسينيات من القرن العشرين. وباعتبارها لغة برمجة، فإنها تستخدم مترجمًا لتحويل اللغة تلقائيًا إلى كود الآلة. تم تطوير أول كود مترجم عامَ 1952م للحاسوب مارك 1 في جامعة مانشستر، ويعتبر أول لغة برمجة عالية المستوى مجمعة.
لغة برمجة أمثلة
أمثلة لبعض لغات البرمجة للحاسوب عالية المستوى:
علم الحاسوب
علم الحاسوب (بالإنجليزية: computer science) هو دراسة للحوسبة وعلم المعلومات والأتمتة. ويمتد علم الحاسوب من التخصصات النظرية (مثل الخوارزميات ونظرية الحوسبة ونظرية المعلومات) إلى التخصصات التطبيقية (بما في ذلك تصميم وتنفيذ الأجهزة والبرمجيات).
علم الحاسوب
تعتبر الخوارزميات وهياكل البيانات أساسية في علم الحاسوب. تتعلق نظرية الحوسبة بالنماذج المُجرّدة للحوسبة والأصناف العامة للمشاكل التي يمكن حلها باستخدامها. وتُعنى مجالات التشفير وأمن الحاسوب بدراسة وسائل الاتصال الآمن ومنع الثغرات الأمنية. تتناول الرسومات الحاسوبية والهندسة الحاسوبية عملية توليد الصور. وتدرس نظرية اللغات البرمجية الطرق المختلفة لوصف العمليات الحاسوبية، وتتعلق نظرية قواعد البيانات بإدارة قواعد البيانات. ويبحث التفاعل بين الإنسان والحاسوب في دراسة الواجهات التي يتفاعل من خلالها البشر والحواسيب، وتركز هندسة البرمجيات على التصميم والمبادئ الكامنة وراء تطوير البرمجيات. وتبحث مجالات مثل أنظمة التشغيل والشبكات والأنظمة المدمجة في الأسس والتصاميم الكامنة وراء الأنظمة المعقدة. كما تصف هندسة الحاسوب بناء مكونات الحاسوب والمعدات التي تعمل بالحاسوب. ويهدف الذكاء الاصطناعي وتعلم الآلة إلى تجميع العمليات الموجّهة مثل حل المشكلات واتخاذ القرارات والتكيف البيئي والتخطيط والتعلم الموجودة لدى البشر والحيوانات. وضمن الذكاء الاصطناعي، تهدف الرؤية الحاسوبية إلى فهم ومعالجة بيانات الصور والفيديو، بينما تهدف معالجة اللغة الطبيعية إلى فهم ومعالجة البيانات النصية واللغوية.
ينصب تركيز علوم الحاسوب على تحديد ما يمكن وما لا يمكن أتمتته. تعتبر جائزة تورينغ بشكل عام أعلى امتياز في علوم الحاسوب.
علم الحاسوب نبذة تاريخية
قبل العشرينات من القرن العشرين، كان مصطلح حاسوب يشير إلى أي أداة بشرية تقوم بعملية الحسابات. ما هي القضايا أو الأشياء التي يمكن لآلة أن تحسبها باتباع قائمة من التعليمات مع ورقة وقلم، دون تحديد للزمن اللازم ودون أي مهارات أو بصيرة (ذكاء)؟ وكان أحد دوافع هذه الدراسات هو تطوير آلات حاسبة حاسوب يمكنها إتمام الأعمال الروتينية المُعرّضة للخطأ البشري عند إجراء حسابات بشرية.
خلال الأربعينات ومع تطوير آلات حاسبة أكثر قوة وقدرة حسابية تتطور مصطلح حاسوب ليُشير إلى الآلات بدلا من الأشخاص الذين يقومون بالحسابات. وأصبح من الواضح أن الحواسيب يمكنها أن تقوم بأكثر من مجرد عمليات حسابية وبالتالي تم الانتقال إلى دراسة الحوسبة بشكل عام. بدأت المعلوماتية وعلوم الحاسب تأخذ استقلالها كفرع أكاديمي مستقل في الستينييات، مع إيجاد أوائل أقسام علوم الحاسب في الجامعات وبدأت الجامعات تمنح إجازات في هذه العلوم.
علم الحاسوب نبذة تاريخية
يعود تاريخ أقرب تعريف لعلوم الحاسوب إلى ما قبل أول آلة حاسوب رقمي، لحساب المهام العددية الثابتة مثل المعداد الذي كان موجود منذ العصور القديمة للمساعدة في العمليات الحسابية مثل الضرب والقسمة وبعد ذلك وجدت الخوارزميات لأداء العمليات الحسابية في العصور القديمة وحتى قبل تطوير المعدات الحاسوبية المعقدة، في اللغة السنسكريتية القديمة مخطوطة تسمى "Shulba Sutras" أو قواعد الوتر "Rules of the Chord" وهو كتاب في الخوارزميات مكتوب في سنة 800 قبل الميلاد لبناء الأجسام الهندسية مثل المذابح باستخدام الأوتاد والأوتار وتعتبر بدايات (أسلاف) مجال هندسة الرياضية الحسابية الحديثة.
بليز باسكال صمم وشيد أول آلة حاسبة ميكانيكية العمل، والتي يطلق عليها آلة باسكال الحاسبة سنة (1642).
ثم كشف غوتفريد لايبنتس آلة حاسبة ميكانيكية الرقمية تسمى حاسوب متدرج (الحاسوب التدريجي) في سنة (1673)، ويمكن أن يقال أنه يعتبر أول عالم حاسوب، واضع النظريات للمعلومات، ومن بين أسباب أخرى لهذا الترشيح، توثيقه لنظم الأرقام الثنائية.
علم الحاسوب نبذة تاريخية
في عام 1820، أطلق تشارلز توماس «Charles Xavier Thomas أو Thomas de Colmar» صناعة آلة حاسبة ميكانيكية، عندما صدر له جهاز مبسط يسمى أريثموميتر وكان أول آلة حاسبة قوية بما فيه الكفاية وموثوق بها بما يكفي للاستخدام اليومي في بيئة مكتبية.
تشارلز بابيج بدأ تصميم أول آلة حاسبة ميكانيكية أوتوماتيكية تسمى محرك الفرق في عام 1822، والذي أعطى في نهاية المطاف له فكرة عمل أول آلة حاسبة ميكانيكية للبرمجة وتسمى المحرك التحليلي. بدأ تطوير هذا الجهاز في عام 1834 وفي أقل من عامين كان قد رسم العديد من السمات البارزة للحاسوب الحديث. كان اعتماد نظام البطاقة المثقبة المشتقة من منسج جاكارد هي خطوة حاسمة، مما يجعلها ذات برمجة بلا حدود.
في عام 1843، أثناء ترجمة مقال فرنسية عن المحرك التحليلي، كتبت آدا لوفلايس في واحدة من العديد من الملاحظات أنها شملت، خوارزمية لحساب أعداد برنولي، والذي يعتبر أول برنامج حاسوب.
في حوالي سنة 1885، اخترع هيرمان هولليريث آلة التبويب للاستخدام في تلخيص المعلومات وكانت تستخدم بطاقة مثقبة لمعالجة المعلومات الإحصائية في نهاية المطاف أصبحت هذه الشركة جزء من آي بي إم اليوم.
علم الحاسوب نبذة تاريخية
في عام 1937، وبعد مئة سنة من حلم باباج المستحيل أقنع هوارد أيكن شركة آي بي إم بتطوير آلته الحاسبة العملاقة للبرمجة، في ذلك الوقت كانت آي بي إم تصنع كل أنواع معدات البطاقات المثقبة وكانت أيضا تقوم بأعمال الآلات الحاسبة. وأُطْلِق اسم هارفارد مارك واحد عليها وكانت بناء على المحرك التحليلي الخاص بتشارلز بابيج، وكانت تستخدم الكروت المثقوبة ووحدة الحوسبة المركزية، وعندما تمت الآلة النهائية أشاد البعض بأن «حلم باباج تحقق».
خلال الأربعينيات من القرن الماضي ومع تطور آلات حاسوب أقوى، وبدى واضحا أن الحاسوب يمكن أن يستخدم في أكثر من الحسابات الرياضية فقط، مجال علوم الحاسب توسع ليشمل الحوسبة بشكل عام، تم وضع إنشاء علوم الحاسب كعلم أكاديمي مستقل في الخمسينيات وأوائل الستينيات من القرن الماضي.
علم الحاسوب المصطلح والنطاق
على الرغم من اقتراحه لأول مرة في عام 1956. ظهر مصطلح ”علم الحاسوب“ في مقال نُشر عام 1959 في المجلة الشهرية لاتصالات جمعية آلات الحوسبة. الذي يدعو فيه لويس فين إلى إنشاء كلية للدراسات العليا في علوم الحاسب الآلي على غرار إنشاء كلية هارفارد للأعمال عام 1921. ويبرر لويس التسمية بالقول إن هذا الموضوع، مثل علم الإدارة، هو موضوع تطبيقي ومتعدد التخصصات بطبيعته، بينما يتسم بالخصائص النموذجية للتخصص الأكاديمي. وقد تكللت جهوده وجهود آخرين مثل المحلل العددي جورج فورسيث بالنجاح: فقد استمرت الجامعات في إنشاء مثل هذه الأقسام، بدءًا من جامعة بوردو في عام 1962. على الرغم من اسمه، فإن قدرًا كبيرًا من علم الحاسوب لا يتضمن دراسة الحواسيب نفسها. ولهذا السبب، تم اقتراح العديد من الأسماء البديلة. تفضل بعض الأقسام في الجامعات الكبرى مصطلح علم الحوسبة، للتأكيد على هذا الاختلاف بالتحديد. اقترح العالم الدنماركي بيتر ناور مصطلح علم البيانات (داتالوجي - datalogy), ليعكس حقيقة أن هذا التخصص العلمي يدور حول البيانات ومعالجة البيانات، في حين أنه لا يشمل بالضرورة أجهزة الكمبيوتر. كانت أول مؤسسة علمية تستخدم المصطلح هي قسم علم البيانات في جامعة كوبنهاغن، الذي تأسس في عام 1969، وكان بيتر ناور أول أستاذ في علم البيانات. ويستخدم المصطلح بشكل رئيسي في الدول الاسكندنافية. وهناك مصطلح بديل، اقترحه ناور أيضًا، هو علم البيانات؛ ويستخدم هذا المصطلح الآن لمجال متعدد التخصصات لتحليل البيانات، بما في ذلك الإحصاءات وقواعد البيانات.
علم الحاسوب المصطلح والنطاق
في الأيام الأولى للحوسبة، تم اقتراح عدد من المصطلحات للممارسين في مجال الحوسبة في مجلة المجلة الشهرية لاتصالات جمعية آلات الحوسبة—عالِم تورينج وعالِم التورولوجيا، وعالِم المخططات الانسيابية، وعالِم الرياضيات التطبيقية، وعالِم المعرفة التطبيقية. وبعد ثلاثة أشهر في نفس المجلة، اقتُرح في المجلة نفسها اسم ”عالم الكومبتولوجي“، وتبعه في العام التالي اسم ”عالم الهيبولوجي“. كما تم اقتراح مصطلح الحوسبة أيضاً. في أوروبا، المصطلحات المستمدة من الترجمات المتعاقد عليها لتعبير ”المعلومات التلقائية“ (أمثلة : "informazione automatica" بالإطالية) أو informatique (فرنسية), Informatik (الألمانية), informatica (الإيطالية, الهولندية) informática (الإسبانية, البرتغالية) informatika (اللغات السلافية والهنغارية) pliroforiki (πληροφορική التي تعني المعلوميات) باليونانية. كما تم اعتماد كلمات مماثلة في المملكة المتحدة (كما هو الحال في كلية المعلوماتية، جامعة إدنبرة). ”لكن في الولايات المتحدة، ترتبط المعلوماتية مع الحوسبة التطبيقية، أو الحوسبة في سياق مجال آخر.“
علم الحاسوب المصطلح والنطاق
هناك مقولة فولكلورية، غالبًا ما تُنسب إلى - ولكن من شبه المؤكد أنها لم تكن أول من صاغها - إدجر ديجكسترا، تقول إن ”علم الحاسوب لا يتعلق بالحاسوب أكثر من علم الفلك بالتلسكوبات“. يعتبر تصميم ونشر أجهزة الكمبيوتر وأنظمة الكمبيوتر بشكل عام من ضمن تخصصات أخرى غير علوم الكمبيوتر. على سبيل المثال، عادة ما تعتبر دراسة أجهزة الحاسوب جزءًا من هندسة الحاسوب، في حين أن دراسة أنظمة الحاسوب التجارية ونشرها غالباً ما تسمى تكنولوجيا المعلومات أو نظم المعلومات. ومع ذلك، كان هناك تبادل للأفكار بين مختلف التخصصات المتعلقة بالحاسوب. وغالبًا ما تتقاطع أبحاث علوم الحاسوب أيضًا مع تخصصات أخرى، مثل العلوم الإدراكية واللغويات والرياضيات والفيزياء والأحياء وعلوم الأرض والإحصاء والفلسفة والمنطق.
علم الحاسوب المصطلح والنطاق
يعتبر البعض أن علم الحاسوب له علاقة أوثق بكثير مع الرياضيات من العديد من التخصصات العلمية، حيث يقول بعض المراقبين أن الحوسبة علم رياضي. تأثرت علوم الحاسوب المبكرة بشدة بأعمال علماء الرياضيات مثل كورت غودل وألان تورينغ وجون فون نيومان وروزا بيتر وألونزو تشرتش، ولا يزال هناك تبادل مفيد للأفكار بين المجالين في مجالات مثل المنطق الرياضي ونظرية الفئات ونظرية المجال والجبر.
إن العلاقة بين علم الحاسوب وهندسة البرمجيات مسألة مثيرة للجدل، ويزيد من تعقيدها الخلافات حول معنى مصطلح ”هندسة البرمجيات“، وكيفية تعريف علم الحاسوب. ادعى ديفيد بارناس، مستلهمًا العلاقة بين تخصصات الهندسة والعلوم الأخرى، أن التركيز الرئيسي لعلوم الحاسوب هو دراسة خصائص الحوسبة بشكل عام، بينما التركيز الرئيسي لهندسة البرمجيات هو تصميم عمليات حسابية محددة لتحقيق أهداف عملية، مما يجعل التخصصين منفصلين ولكنهما متكاملين.
علم الحاسوب المصطلح والنطاق
تميل الجوانب الأكاديمية والسياسية والتمويلية لعلوم الحاسوب إلى الاعتماد على ما إذا كان القسم مشكلاً بتوجه رياضي أو بتوجه هندسي. فأقسام علوم الحاسوب ذات التركيز على الرياضيات وذات التوجه العددي تأخذ بعين الاعتبار المواءمة مع العلوم الحاسوبية. ويميل كلا النوعين من الأقسام إلى بذل جهود للتقريب بين المجالين تعليميًا إن لم يكن في جميع الأبحاث.
علم الحاسوب فلسفة علم الحاسوب
على الرغم من وجود كلمة علم في اسمه، هناك جدل حول ما إذا كان علم الحاسوب هو أحد فروع العلوم, أو الرياضيات, أو الهندسة أم لا. جادل ألن نيويل وهيربرت سيمون في عام 1975,
علم الحاسوب هو تخصص تجريبي. كنا سنسميه علمًا تجريبيًا، ولكن مثل علم الفلك والاقتصاد والجيولوجيا، فإن بعض أشكاله الفريدة من الملاحظة والتجربة لا تتناسب مع الصورة النمطية الضيقة للمنهج التجريبي. ومع ذلك، فهي تجارب. فكل آلة جديدة يتم بناؤها هي تجربة. إن بناء الآلة في الواقع يطرح سؤالاً على الطبيعة؛ ونحن نستمع إلى الإجابة من خلال مراقبة الآلة أثناء تشغيلها وتحليلها بكل وسائل التحليل والقياس المتاحة.
علم الحاسوب فلسفة علم الحاسوب
وقد قيل منذ ذلك الحين أنه يمكن تصنيف علم الحاسوب كعلم تجريبي لأنه يستخدم الاختبار التجريبي لتقييم صحة البرامج، ولكن تبقى مشكلة في تحديد قوانين ونظريات علم الحاسوب (إن وجدت) وتحديد طبيعة التجارب في علم الحاسوب. يجادل مؤيدو تصنيف علم الحاسوب كتخصص هندسي بأن موثوقية الأنظمة الحاسوبية يتم التحقيق فيها بنفس الطريقة التي يتم بها التحقيق في الجسور في الهندسة المدنية والطائرات في هندسة الطيران. ويقولون أيضًا أنه في حين أن العلوم التجريبية تلاحظ ما هو موجود حاليًا، فإن علم الحاسوب يلاحظ ما يمكن أن يوجد، وبينما يكتشف العلماء القوانين من الملاحظة، لم يتم العثور على قوانين مناسبة في علم الحاسوب وهو يهتم بدلًا من ذلك بخلق الظواهر.
يجادل مؤيدو تصنيف علم الحاسوب كتخصص رياضي بأن برامج الحاسوب هي تجسيدات مادية للكيانات والبرامج الرياضية التي يمكن استنباطها من خلال رياضيات الطرق الشكلية. ينظر عالما الحاسوب أيدسكر دايكسترا وتوني هور إلى تعليمات برامج الحاسوب على أنها جمل رياضية، ويفسران الدلالات الرسمية للغات البرمجة على أنها أنظمة بديهية رياضية.
علم الحاسوب فلسفة علم الحاسوب
جادل عدد من علماء الحاسوب بالتمييز بين ثلاثة نماذج منفصلة في علم الحاسوب. جادل بيتر ويجنر بأن هذه النماذج هي العلم والتكنولوجيا والرياضيات. وجادل فريق عمل بيتر دينينغ بأنها النظرية والتجريد (النمذجة) والتصميم. ووصفهم أمنون هـ. إيدن بأنهم ”النموذج العقلاني“ (الذي يتعامل مع علم الحاسوب كفرع من فروع الرياضيات، وهو السائد في علم الحاسوب النظري، ويستخدم بشكل أساسي الاستنباط)، و”النموذج التكنوقراطي“ (الذي قد يوجد في المناهج الهندسية، وأبرزها في هندسة البرمجيات)، و”النموذج العلمي“ (الذي يقارب المصنوعات المتعلقة بالحاسوب من المنظور التجريبي للعلوم الطبيعية، ويمكن تحديده في بعض فروع الذكاء الاصطناعي). يركّز علم الحاسوب على الأساليب المتبعة في تصميم أنظمة الحوسبة التي يصنعها الإنسان وتحديد مواصفاتها وبرمجتها والتحقق منها وتنفيذها واختبارها.
علم الحاسوب فروع
كعلم، يمتد علوم الحاسوب إلى مجموعة من الموضوعات من الدراسات النظرية للخوارزميات وحدود الحساب إلى المسائل العملية لتنفيذ أنظمة الحوسبة في الأجهزة والبرامج. تحدد CSAB، التي كانت تُسمى سابقًا مجلس اعتماد علوم الحوسبة -والذي يتكون من ممثلين عن جمعية آلات الحوسبة (ACM)، وجمعية IEEE للكمبيوتر (IEEE CS)- أربعة مجالات تعتبرها حاسمة في مجال علوم الحاسوب: نظرية الحوسبة والخوارزميات وهياكل البيانات ومنهجية البرمجة واللغات وعناصر الحاسوب وبنى البيانات. بالإضافة إلى هذه المجالات الأربعة، يحدد CSAB أيضًا مجالات مثل هندسة البرمجيات والذكاء الاصطناعي وشبكات الحاسوب والاتصالات وأنظمة قواعد البيانات والحساب المتوازي والحساب الموزع والتفاعل بين الإنسان والحاسوب ورسوميات الحاسوب وأنظمة التشغيل والحساب الرقمي والرمزي مثل كونها مجالات مهمة في علوم الحاسوب.
علم الحاسوب فروع
علوم الحاسوب النظرية هي رياضيات وتجريدية في الروح، ولكنها تستمد دوافعها من الحساب العملي واليومي. الهدف منه هو فهم طبيعة الحساب، ونتيجة لهذا الفهم، توفير منهجيات أكثر كفاءة. يمكن اعتبار جميع الدراسات المتعلقة بالمفاهيم والطرق الرياضية والمنطقية والرسمية بمثابة علوم الحاسوب النظرية، شريطة أن يكون الدافع مستمدًا بوضوح من مجال الحوسبة.
وفقًا لبيتر دينينج، فإن السؤال الأساسي الذي يكمن وراء علوم الحاسوب هو «ما الذي يمكن أن يكون آلياً (بكفاءة)؟» تركز نظرية الحوسبة على الإجابة على الأسئلة الأساسية حول ما يمكن حسابه وما مقدار الموارد اللازمة لأداء تلك الحسابات. في محاولة للإجابة على السؤال الأول، تدرس نظرية الحوسبة المشكلات الحسابية التي يمكن حلها في النماذج النظرية المختلفة للحساب. يتم تناول السؤال الثاني من خلال نظرية التعقيد الحسابي، والتي تدرس تكاليف الوقت والمكان المرتبطة بمناهج مختلفة لحل العديد من المشكلات الحسابية.
فمسألة "P = NP" الشهيرة(مسألة كثير حدود وكثير حدود غير قطعي)، واحدة من مسائل جائزة الألفية، هي مسألة مفتوحة في نظرية الحساب.
علم الحاسوب فروع
ترتبط نظرية المعلومات بكمية المعلومات. تم تطوير هذا بواسطة كلود شانون لإيجاد حدود أساسية لعمليات معالجة الإشارات مثل ضغط البيانات وتخزين البيانات ونقلها بشكل موثوق. نظرية الترميز هي دراسة خصائص الأكواد (أنظمة لتحويل المعلومات من نموذج إلى آخر) وملاءمتها لتطبيق معين. تُستخدم الرموز لضغط البيانات، والتشفير، واكتشاف الأخطاء وتصحيحها، وكذلك في الآونة الأخيرة أيضًا لترميز الشبكة. تتم دراسة الرموز لغرض تصميم طرق فعالة وموثوقة لنقل البيانات.
هياكل البيانات والخوارزميات هي دراسة الطرق الحسابية الشائعة الاستخدام وكفاءتها الحسابية.
نظرية لغات البرمجة هي فرع من فروع علوم الحاسوب التي تتعامل مع تصميم لغات البرمجة وميزاتها الفردية وتنفيذها وتحليلها وتوصيفها وتصنيفها. يقع ضمن مجال علوم الحاسوب، اعتمادًا على الرياضيات وهندسة البرمجيات واللغويات والتأثير عليها. إنه مجال بحث نشط، مع العديد من المجلات الأكاديمية المخصصة.
علم الحاسوب فروع
الطرق الشكلية هي نوع معين من التقنيات القائمة على الرياضيات لتحديد مواصفات البرمجيات و الأجهزة وتطويرها والتحقق منها. الدافع وراء استخدام الطرق الشكلية لتصميم البرمجيات والأجهزة هو التوقع بأن إجراء التحليل الرياضي المناسب، كما هو الحال في التخصصات الهندسية الأخرى، يمكن أن يساهم في موثوقية ومتانة التصميم. وهي تشكل أساساً نظرياً مهماً لهندسة البرمجيات، خاصة عندما يتعلق الأمر بالسلامة أو الأمن.
علم الحاسوب فروع
تعتبر الطرق الشكلية عاملاً مساعداً مفيداً لاختبار البرمجيات لأنها تساعد على تجنب الأخطاء ويمكنها أيضاً توفير إطار عمل للاختبار. للاستخدام الصناعي، هناك حاجة إلى دعم الأدوات. ومع ذلك، فإن التكلفة العالية لاستخدام الطرق الشكلية تعني أنها لا تستخدم عادةً إلا في تطوير الأنظمة عالية التكامل والحرجة في الحياة، حيث تكون السلامة أو الأمن في غاية الأهمية. وأفضل وصف للطرق الشكلية هو تطبيق مجموعة واسعة إلى حد ما من أساسيات علوم الحاسوب النظرية، ولا سيما الحسابات المنطقية واللغات الشكلية ونظرية الأتمتة ودلالات البرامج، وكذلك أنظمة الأنواع وأنواع البيانات الجبرية على المشاكل في مواصفات البرمجيات والأجهزة والتحقق منها.
رسوميات الحاسوب هي دراسة المحتويات المرئية الرقمية وتتضمن تركيب ومعالجة بيانات الصورة. ترتبط الدراسة بالعديد من المجالات الأخرى في علوم الحاسوب، بما في ذلك رؤية حاسوبية، ومعالجة الصور، والهندسة الحاسوبية، ويتم تطبيقها بشدة في مجالات المؤثرات الخاصة وألعاب الفيديو.
علم الحاسوب فروع
يمكن أن تتخذ المعلومات شكل صور أو صوت أو فيديو أو وسائط متعددة أخرى. ويمكن بث أجزاء من المعلومات عبر الإشارات. ومعالجتها هي المفهوم المركزي للمعلوماتية، وهي وجهة النظر الأوروبية حول الحوسبة، والتي تدرس خوارزميات معالجة المعلومات بشكل مستقل عن نوع حامل المعلومات - سواء كان كهربائيًا أو ميكانيكيًا أو بيولوجيًا. ويلعب هذا المجال دورًا مهمًا في نظرية المعلومات والاتصالات وهندسة المعلومات وله تطبيقات في حوسبة الصور الطبية وتوليف الكلام وغيرها. ما هو الحد الأدنى لتعقيد خوارزميات تحويل فورييه السريع؟ هي واحدة من المشاكل التي لم تُحل في علم الحاسوب النظري.
علم الحاسوب فروع
الحوسبة العلمية (أو العلوم الحاسوبية) هي مجال الدراسة المعني ببناء النماذج الرياضية وتقنيات التحليل الكمي واستخدام أجهزة الحاسوب لتحليل وحل المشكلات العلمية. في الاستخدام العملي، عادة ما يكون تطبيق محاكاة الحاسوب وأشكال الحساب الأخرى للمشاكل في مختلف التخصصات العلمية. بما في ذلك ديناميكيات الموائع الحسابية، والأنظمة والدوائر الفيزيائية والكهربائية والإلكترونية، بالإضافة إلى المجتمعات والأوضاع الاجتماعية (لا سيما الألعاب الحربية) إلى جانب بيئاتها، وغيرها الكثير. تتيح الحواسيب الحديثة تحسين التصاميم مثل الطائرات الكاملة. ومن البرامج البارزة في تصميم الدوائر الكهربائية والإلكترونية برنامج SPICE، بالإضافة إلى برمجيات التنفيذ المادي للتصاميم الجديدة (أو المعدلة). وتشمل هذه الأخيرة برامج التصميم الأساسية للدوائر المتكاملة.
علم الحاسوب فروع
الحوسبة الاجتماعية هي مجال يهتم بالتقاطع بين السلوك الاجتماعي والأنظمة الحاسوبية. وتطور بحوث التفاعل بين الإنسان والحاسوب النظريات والمبادئ والمبادئ التوجيهية لمصممي واجهة المستخدم، بحيث يمكنهم إنشاء تجارب مرضية للمستخدم مع أجهزة سطح المكتب والحاسوب المحمول والأجهزة المحمولة.
هندسة البرمجيات هي دراسة تصميم البرمجيات وتنفيذها وتعديلها من أجل ضمان أن تكون ذات جودة عالية وبأسعار معقولة وقابلة للصيانة وسريعة البناء. وهي مقاربة منهجية لتصميم البرمجيات، تتضمن تطبيق الممارسات الهندسية على البرمجيات. تتعامل هندسة البرمجيات مع تنظيم وتحليل البرمجيات - فهي لا تتعامل فقط مع إنشاء أو تصنيع برمجيات جديدة، بل مع ترتيبها الداخلي وصيانتها. على سبيل المثال اختبار البرمجيات وهندسة النظم والديون التقنية وعمليات تطوير البرمجيات.