"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > التجريد في البرمجة الشيئية

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

تم النشر بتاريخ 2024-11-01
تصفح:491

Abstração em Programação Orientada a Objetos

ما هو التجريد؟

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

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

لماذا استخدام التجريد؟

يقدم التجريد العديد من الفوائد:

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

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

1. استخدام الفئات المجردة

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

// Classe abstrata
public abstract class Forma {
    // Método abstrato
    public abstract double calcularArea();

    // Método concreto
    public void imprimirArea() {
        System.out.println("A área é: "   calcularArea());
    }
}
// Subclasse Circulo
public class Circulo extends Forma {
    private double raio;

    public Circulo(double raio) {
        this.raio = raio;
    }

    // Implementando o método calcularArea
    @Override
    public double calcularArea() {
        return Math.PI * raio * raio;
    }
}
// Subclasse Retangulo
public class Retangulo extends Forma {
    private double largura;
    private double altura;

    public Retangulo(double largura, double altura) {
        this.largura = largura;
        this.altura = altura;
    }

    // Implementando o método calcularArea
    @Override
    public double calcularArea() {
        return largura * altura;
    }
}

استخدام الفصول

public class Main {
    public static void main(String[] args) {
        Forma circulo = new Circulo(5);
        Forma retangulo = new Retangulo(4, 6);

        // Imprimindo áreas
        circulo.imprimirArea();  // Saída: A área é: 78.53981633974483
        retangulo.imprimirArea(); // Saída: A área é: 24.0
    }
}

الناتج المتوقع:

A área é: 78.53981633974483
A área é: 24.0

2. استخدام الواجهات

الواجهات هي طريقة أخرى لتنفيذ التجريد. وهي تحدد الطرق التي يجب أن توفرها الفئات التي تنفذها، ولكنها لا توفر تطبيقًا افتراضيًا.

// Interface
public interface Forma {
    double calcularArea();
    void imprimirArea();
}
// Classe Circulo implementando a interface
public class Circulo implements Forma {
    private double raio;

    public Circulo(double raio) {
        this.raio = raio;
    }

    @Override
    public double calcularArea() {
        return Math.PI * raio * raio;
    }

    @Override
    public void imprimirArea() {
        System.out.println("A área do círculo é: "   calcularArea());
    }
}
// Classe Retangulo implementando a interface
public class Retangulo implements Forma {
    private double largura;
    private double altura;

    public Retangulo(double largura, double altura) {
        this.largura = largura;
        this.altura = altura;
    }

    @Override
    public double calcularArea() {
        return largura * altura;
    }

    @Override
    public void imprimirArea() {
        System.out.println("A área do retângulo é: "   calcularArea());
    }
}

استخدام الفصول

public class Main {
    public static void main(String[] args) {
        Forma circulo = new Circulo(5);
        Forma retangulo = new Retangulo(4, 6);

        // Imprimindo áreas
        circulo.imprimirArea();  // Saída: A área do círculo é: 78.53981633974483
        retangulo.imprimirArea(); // Saída: A área do retângulo é: 24.0
    }
}

الناتج المتوقع:

A área do círculo é: 78.53981633974483
A área do retângulo é: 24.0

الاعتبارات النهائية

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

بيان الافراج تم نشر هذه المقالة على: https://dev.to/emanoelcarvalho/abstracao-em-programacao-orientada-a-objetos-5bb4?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3