مرجع
آخر الزيارات

تجريد (حاسوب)

484 كلمة•0 مشاهدة•🗒️ منذ 8 أيام
باختصار: االتجريد (بالإنجليزية: Abstraction) هو مفهوم أساسي في علم الحاسوب وهندسة البرمجيات يشير إلى عملية تبسيط الأنظمة المعقدة من خلال إخفاء التفاصيل غير الضرورية وتقديم واجهة مبسطة ومركزة على الجوانب ذات الصلة. تجد هنا «أمثلة على التجريد في البرمجة الكائنية»، «التجريد والمفاهيم الأخرى في البرمجة الكائنية» و«أمثلة على تجريد البيانات» ضمن 6 أقسام.
المحتويات
  1. أمثلة على التجريد في البرمجة الكائنية
  2. التجريد والمفاهيم الأخرى في البرمجة الكائنية
  3. أمثلة على تجريد البيانات
  4. تجريد البيانات
  5. فوائد تجريد البيانات
  6. التجريد في البرمجة الكائنية
تجريد (حاسوب)

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

أمثلة على التجريد في البرمجة الكائنية

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

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

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

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

أمثلة على تجريد البيانات

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

تجريد البيانات

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

فوائد تجريد البيانات

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

علاوةً على ذلك، إعادة الاستخدام: يمكن تعريف أنواع بيانات مجردة واستخدامها في سياقات مختلفة دون الحاجة إلى إعادة تنفيذها.

ومن ناحية أخرى، قابلية الصيانة: يصبح من الأسهل صيانة وتحديث هياكل البيانات الداخلية لأن التغييرات تكون معزولة عن الشيفرة العميلة.

التجريد في البرمجة الكائنية

وفي السياق ذاته، حسب نظرية البرمجة الكائنية، فإن التجريد يكمن في إمكانية تعريف كائنات تمثل عناصر تستطيع أن تقوم بأعمال أو أن تغير على حالتها أو أن تتصل بعناصر أخرى في النظام. إن مصطلح التغليف يتعلق بإخفاء تفاصيل الحالة لكائن أو عنصر ما. ولكن التجريد يذهب إلى أبعد من ذلك؛ فهو يتعلق كذلك بتصرف (behavior) هذه العناصر. وتتعلق كذلك بتفاعل أنواع البيانات المختلفة مع بعضها البعض بطريقة معتمدة على المقاييس.

ما رأيك في هذه المقالة؟

📝 هل في هذه المقالة خطأ؟

إذا وجدت معلومة تحتاج تصحيحاً أو إضافة، أو أردت حذف المقالة، أرسل لنا طلباً وسنراجعه.