مقدمة عن البرمجة المُوجهة للكائنات
33 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

ما هي النقطة الرئيسية التي تؤكد عليها الفقرة؟

  • وصف كيفية عمل البريد الإلكتروني في جافا
  • وصف فوائد البرمجة باستخدام لغة جافا
  • شرح مفهوم التجريد في البرمجة (correct)
  • وصف أهمية استخدام البروتوكولات في البرمجة
  • ما هو دور التجريد (abstraction) في البرمجة؟

  • زيادة تعقيد الكود
  • زيادة الوقت اللازم لكتابة الكود
  • جعل الكود أكثر صعوبة في الفهم
  • جعل الكود أكثر قابلية للإعادة (correct)
  • ماذا تعني العبارة "تجريد" في سياق الفقرة؟

  • التحكم المباشر في أدق تفاصيل البرامج
  • فهم كود البرنامج بالكامل
  • زيادة سرعة تنفيذ البرامج
  • إخفاء تفاصيل معقدة عن المبرمج (correct)
  • ما هو المثال المُستخدَم في الفقرة لشرح فكرة التجريد؟

    <p>استخدام البريد الإلكتروني في جافا (A)</p> Signup and view all the answers

    ماذا تُشير الفقرة إلى أن المبرمج ليس مسؤولاً عنه في المثال المُستخدم؟

    <p>التحكم في البريد الإلكتروني (A)</p> Signup and view all the answers

    ما الذي يُشير إليه استخدام العبارة "ولست مسؤولاً عنها" في سياق الفقرة؟

    <p>عدم مسؤولية المبرمج عن استخدام بروتوكولات البريد الإلكتروني (D)</p> Signup and view all the answers

    ما الذي يتيح لغة جافا للمبرمجين؟

    <p>التعامل مع البرمجة على مستوى عالٍ دون الحاجة إلى معرفة التفاصيل (B)</p> Signup and view all the answers

    ما هو هدف استخدام التجريد في البرمجة؟

    <p>جعل الكود أكثر سهولة في الفهم (B)</p> Signup and view all the answers

    ماذا تعني كلمة class في سياق البرمجة الموجهة للكائنات؟

    <p>تعريف لكائنات جديدة (A)</p> Signup and view all the answers

    كيف يمكنك الوصول إلى الأعضاء داخل كائن معين؟

    <p>باستخدام الصيغة Object_name.member (D)</p> Signup and view all the answers

    لماذا لا يمكن إنشاء كائنات من الكلاسات من نوع abstract؟

    <p>لأنها مصممة لتكون نماذج فقط (C)</p> Signup and view all the answers

    أي من الخيارات التالية هو اسم صحيح لكائن؟

    <p>student (D)</p> Signup and view all the answers

    ما هو دور العضو x في تعريف الكلاس A؟

    <p>تخزين قيمة عددية (A)</p> Signup and view all the answers

    ماذا يحدث إذا حاولت إنشاء كائن من كلاس من نوع abstract؟

    <p>سيظهر خطأ incompatible type (B)</p> Signup and view all the answers

    ماذا تمثل الدالة print() في الكلاس A؟

    <p>تعرض رسالة إلى المستخدم (C)</p> Signup and view all the answers

    أي من العبارات التالية صحيحة بخصوص الأعضاء في الكلاسات؟

    <p>يمكن الوصول إليها فقط عبر الكائنات (C)</p> Signup and view all the answers

    ما هو الاستخدام الرئيسي من التعريف class؟

    <p>تعريف نماذج للكائنات (C)</p> Signup and view all the answers

    ما هو هدف استخدام الكلاسات في البرمجة الموجهة للكائنات؟

    <p>توفير التحكم في الوصول إلى البيانات (A)</p> Signup and view all the answers

    ما هو الفرق الرئيسي بين البرمجة الموجهة للكائنات (OOP) والبرمجة التقليدية؟

    <p>البرمجة الموجهة للكائنات تستخدم الكائنات كوحدة بناء أساسية للبرنامج بدلاً من استخدام الدوال والأوامر. (D)</p> Signup and view all the answers

    ما هو مفهوم class في البرمجة الموجهة للكائنات؟

    <p>هو قالب أو نموذج لإنشاء كائنات <code>object</code> مماثلة. (D)</p> Signup and view all the answers

    ما هي properties في سياق البرمجة الموجهة للكائنات؟

    <p>هي البيانات التي تمثل <code>object</code> معين. (C)</p> Signup and view all the answers

    ما هي methods في سياق البرمجة الموجهة للكائنات؟

    <p>هي العمليات التي يمكن تنفيذها على <code>object</code> معين. (D)</p> Signup and view all the answers

    أي من الخيارات التالية ھﻲ ﻣزاﯾﺎ ﻟﻠﺒﺮﻣﺠﺔ ﺑﻮاﺳﻄﺔ اﻷھﺪاف؟

    <p>نظامية أفضل وسرعة أكبر في عملية الإعداد. (C)</p> Signup and view all the answers

    ما هو العيب الرئيسي للبرمجة التقليدية؟

    <p>صعوبة إعادة استخدام الأجزاء البرمجية. (B)</p> Signup and view all the answers

    ما هو مفهوم object في البرمجة الموجهة للكائنات؟

    <p>هو مثال محدد لـ <code>class</code> معينة. (B)</p> Signup and view all the answers

    ما هي العلاقة بين object و class في البرمجة الموجهة للكائنات؟

    <p><code>object</code> هو مثال محدد لـ <code>class</code> معينة. (D)</p> Signup and view all the answers

    أي من الخيارات التالية ھﻲ ﻣن اﻟﻤﻔﺎھﯾم اﻷﺳﺎﺳﯾﺔ ﻟﻠﺒﺮﻣﺠﺔ ﺑﻮاﺳﻄﺔ اﻷھﺪاف ؟

    <p>كل ما سبق (A)</p> Signup and view all the answers

    ما هو مفهوم التغليف (Encapsulation) في البرمجة الموجهة للكائنات؟

    <p>عملية إخفاء المعلومات الداخلية للكائن عن العالم الخارجي. (C)</p> Signup and view all the answers

    ما هو مفهوم التجريد (Abstraction) في البرمجة الموجهة للكائنات؟

    <p>عملية التركيز على السلوكيات الرئيسية للكائن <code>object</code> وتجاهل التفاصيل الداخلية. (C)</p> Signup and view all the answers

    ما هو مفهوم وراثة الكلاس (Inheritance) في البرمجة الموجهة للكائنات؟

    <p>عملية إنشاء <code>class</code> جديد من <code>class</code> موجود. (B)</p> Signup and view all the answers

    ما هو مميز OOP مقارنة بالبرمجة التقليدية؟

    <p>كل ما سبق. (A)</p> Signup and view all the answers

    كم عدد الأسماء التي يمكن أن تحتوي عليها الفئة (class) في لغة البرمجة؟

    <p>اسم واحد فقط. (A)</p> Signup and view all the answers

    ما هو استخدام methods في سياق البرمجة الموجهة للكائنات؟

    <p>تُستخدم لوصف السلوكيات التي يمكن تنفيذها على <code>object</code> معين. (A)</p> Signup and view all the answers

    Study Notes

    مُقدمة عن البرمجة المُوجهة للكائنات

    • تُعدّ البرمجة المُوجهة للكائنات أسلوباً حديثاً في البرمجة، حيث تُعتبر وحدة بناء البرنامج هي الصنف (class) الذي يحوي البيانات (data) والعمليات (الدوال) (functions).
    • تشتق فكرة البرمجة المُوجهة للكائنات (OOP) من فكرة استخدام الكائن (Object) كوحدة برمجة أساسية.
    • في المقابل، كانت الطريقة التقليدية في البرمجة تعتمد على الدوال والأوامر، مما يُجبر المبرمج على إعادة كتابة الأوامر كل مرة لتحقيق فكرة معينة.
    • تُعد البرمجة المُوجهة للكائنات أكثر فاعلية وسرعة من البرمجة التقليدية نظراً لتركيزها على الوحدات الكبيرة (الكائنات) بدلاً من الوحدات الصغيرة (الدوال).

    الدرس الأول: معنى البرمجة الشيئية (OOP)

    • البرمجة المُوجهة للكائنات هي أسلوب جديد من أساليب البرمجة يركز على الكائنات (Objects) كأحد وحدات البناء الأساسية.
    • تُركز على تقسيم البرنامج إلى مجموعة من المهام الرئيسية، ثم تقسيم كل مهمة رئيسية إلى مهام فرعية، حسب مستوى التعقيد، مما يجعلها أكثر تنظيماً وسهولة في الصيانة و إعادة استخدامها.
    • تنتهج البرمجة الهيكلية نهج من أعلى إلى أسفل (Top-Down).
    • تُعد البرمجة الهيكلية ذات عيوب مثل صعوبة فصل البيانات عن العمليات، وإعادة إنشاء الحلول وإعادة استخدامها.

    المفاهيم الأساسية للبرمجة المُوجهة للكائنات

    • الفصيلة (Class): تُعد الفصيلة أساس البرمجة المُوجهة للكائنات، و تُستوحى من الواقع، حيث كل عنصر في الحياة مُمثّل بفصيلة (مثل السيارات أو الطيور).
    • تُمثّل الفصيلة (class) عنصرين أساسيّين: البيانات (data) والدوال (methods).
    • الكائن (Object): وحدة تحوي مجموعة من البيانات (الخصائص) (properties) و العمليات (الأساليب) (methods).
    • الكائنات ذات الخصائص والعمليات المشتركة يمكن تجميعها في صنف واحد.

    مزايا البرمجة الشيئية (OOP)

    • التجريد (Abstraction): تسهل كتابة الأوامر وتحدد الخصائص والعمليات المتعلقة بصنف معيّن.
    • إخفاء البيانات (Data Hiding): يحمي البيانات الأساسية في الكلاس، ويُتاح التعامل معها من خلال دوال مُخصصة.
    • التغليف (Encapsulation): تجميع الخصائص (properties) والطرق (methods) في وحدة واحدة، و يُمكن الوصول إليها من خلال الكائن أو الكلاسات المُتّصلة به.
    • الوراثة (Inheritance): يورث الصنف الخصائص والعمليات الموجودة في الصنف الآخر.
    • التعددية الأشكال (Polymorphism): نفس الدالة يمكن أن تتعرف بطرق مُختلفة في أصناف مُختلفة.

    البرامج التي تدعم البرمجة الشيئية

    • VB.NET و C# و Java و C++

    المُتغيرات ( Variables )

    • المتغيرات المحلية (Local Variables): مُعرّفة داخل دالة.
    • المتغيرات العائدة للكائن (Instance Variables): مُعرّفة داخل الصنف (class) وخارج أي دالة.
    • المتغيرات العائدة للصنف (Class Variables): مُعرّفة داخل الصنف (class) و مُسبقة بكلمة static.

    الكلمة this

    • تستخدم هذه الكلمة لتمييز متغيرات عائدة للصنف من متغيرات عائدة للدوال المحليّة.
    • مُفيدة عند تعريف كونستركتور يملك نفس إسم المتغير العائد للکائن (Instance Variables)

    الكلمة super

    • تستخدم لتمييز متغيرات عائدة للصنف الأب (Superclass) من متغيرات عائدة للصنف (Subclass).
    • تستخدم أيضاً لإستدعاء كونستركتور الصنف الأب.

    المُعدّلات المُوصوفة (Modifiers)

    • Modifiers للوصول (Access Modifiers): تُحدد مستوى الوصول إلى المتغيرات والدوال والکلاسات مثل (public, protected, private).
    • Modifiers غير مُخصصة للوصول (Non-Access Modifiers): تحدد خصائص أخرى للمتغيرات والدوال والکلاسات مثل (static, final, abstract, synchronized.).

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Description

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

    More Like This

    Object Oriented Programming Concepts
    6 questions
    Object Oriented Programming Concepts
    16 questions
    Object-Oriented Programming Concepts
    40 questions
    Object-Oriented Programming Concepts
    9 questions
    Use Quizgecko on...
    Browser
    Browser