By using this site, you agree to the Privacy Policy and Terms of Use.
موافق
عرب فلاترعرب فلاتر
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
قراءة: الدرس 39: شرح مفهوم الـ Getter و Setter في لغة دارت Dart
شارك
تسجيل الدخول
إشعار أظهر المزيد
Aa
عرب فلاترعرب فلاتر
Aa
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
Search

أقسام الموقع

استكشف جميع أقسام الموقع
قسم Dart في موقع عرب فلاتر

Dart

59 مقالات
قسم Widgets في موقع عرب فلاتر

Widgets

104 مقالات
قسم Packages في موقع عرب فلاتر

Packages

19 مقالات
قسم Tutorials في موقع عرب فلاتر

Tutorials

22 مقالات

أخر المواضيع

استكشف أخر المواضيع المنشورة
شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
Tutorials

شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا

5
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
Tutorials

حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر

10
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
Tutorials

أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات

17
لديك حساب موجود؟ تسجيل الدخول
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
© جميع الحقوق محفوظة موقع عرب فلاتر 2023
عرب فلاتر > Dart > الدرس 39: شرح مفهوم الـ Getter و Setter في لغة دارت Dart
Dart

الدرس 39: شرح مفهوم الـ Getter و Setter في لغة دارت Dart

عبدالله يوسف
أخر تحديث 2024/11/15
بواسطة عبدالله يوسف اضف تعليق 5 دقيقة للقراءة 2412 مشاهدات 3
شارك
شرح مفهوم الـ Getter و Setter في لغة دارت Dart
شرح مفهوم الـ Getter و Setter في لغة دارت Dart
شارك

خدماتنا البرمجية – عرب فلاتر🚀

خدماتنا البرمجية – عرب فلاتر

في لغة دارت (Dart) يتم استخدام Getter و Setter لتوفير وصول قراءة وكتابة صريح لخصائص الكائنات. تستخدم الكلمات المحجوزة get و set لإنشاء Getter و Setter على التوالي. يقوم الـ Getter بقراءة قيمة الخاصية ويعمل كمنتقي، بينما يقوم الـ Setter بتحديث قيمة الخاصية ويعمل كمتعدي.

المحتويات
استخدام Getter و Setter في دارت:أمثلة على الـ Getter و Setter في دارت:مثال 1: استخدام الـ Getter و Setter في دارتمثال 2: استخدام الـ Getter و Setter في دارتمتى يجب استخدام Getter و Setter في دارت:

استخدام Getter و Setter في دارت:

  • التحقق من صحة البيانات قبل القراءة أو الكتابة.
  • قيود الوصول للقراءة والكتابة للخصائص.
  • جعل الخصائص للقراءة فقط أو الكتابة فقط.
  • تنفيذ بعض الإجراءات قبل القراءة أو الكتابة على الخصائص.

أمثلة على الـ Getter و Setter في دارت:

مثال 1: استخدام الـ Getter و Setter في دارت

في هذا المثال، سننشئ كلاس يسمى Student يحتوي على ثلاث خصائص Private هي _firstName و _lastName و _age. يوجد اثنان من الـ Getters وهما fullName و age للحصول على قيمة الخصائص. يوجد أيضًا ثلاثة Setters وهما firstName و lastName و age لتحديث قيمة الخصائص. إذا كانت قيمة العمر أقل من 0، فسيتم ظهور خطأ.

class Student {
  // الخصائص الخاصة
  String? _firstName;
  String? _lastName;
  int? _age;

  // Getter للحصول على الاسم الكامل
  String get fullName => "${_firstName!} ${_lastName!}";

  // Getter لقراءة الخصائص الخاصة _age
  int get age => _age!;

  // Setter لتحديث الخصائص الخاصة _firstName
  set firstName(String firstName) => _firstName = firstName;

  // Setter لتحديث الخصائص الخاصة _lastName
  set lastName(String lastName) => _lastName = lastName;

  // Setter لتحديث الخصائص الخاصة _age
  set age(int age) {
    if (age < 0) {
      throw Exception("لا يمكن أن يكون العمر أقل من 0");
    }
    _age = age;
  }
}

void main() {
  // إنشاء كائن من الكلاس Student
  Student st = Student();
  // تعيين القيم للكائن باستخدام الـ Setter
  st.firstName = "John";
  st.lastName = "Doe";
  st.age = 20;
  // عرض قيم الكائن
  print("الاسم الكامل: ${st.fullName}");
  print("العمر: ${st.age}");
}

نتيجة الكود:

الاسم الكامل: John Doe
العمر: 20

مثال 2: استخدام الـ Getter و Setter في دارت

في هذا المثال، سننشئ كلاس يسمى BankAccount يحتوي على خاصية Private واحدة هي _balance. يوجد Getter واحد هو balance لقراءة قيمة الخاصية. يوجد أيضًا دوال deposit و withdraw لتحديث قيمة الـ _balance.

class BankAccount {
  // الخاصية الخاصة
  double _balance = 0.0;

  // Getter لقراءة الخاصية الخاصة _balance
  double get balance => _balance;

  // دالة لإيداع المال
  void deposit(double amount) {
    _balance += amount;
  }

  // دالة لسحب المال
  void withdraw(double amount) {
    if (_balance >= amount) {
      _balance -= amount;
    } else {
      throw Exception("رصيد غير كافٍ");
    }
  }
}

void main() {
  // إنشاء كائن من الكلاس BankAccount
  BankAccount account = BankAccount();
  // إيداع المال
  account.deposit(1000);
  // عرض الرصيد
  print("الرصيد بعد الإيداع: ${account.balance}");
  // سحب المال
  account.withdraw(500);
  // عرض الرصيد
  print("الرصيد بعد السحب: ${account.balance}");
}

نتيجة الكود:

الرصيد بعد الإيداع: 1000
الرصيد بعد السحب: 500


متى يجب استخدام Getter و Setter في دارت:

  • استخدم Getter و Setter عندما ترغب في تقييد الوصول إلى الخصائص.
  • استخدم Getter و Setter عندما ترغب في تنفيذ بعض الإجراءات قبل قراءة أو كتابة الخصائص.
  • استخدم Getter و Setter عندما ترغب في التحقق من صحة البيانات قبل قراءة أو كتابة الخصائص.
  • لا تستخدم Getter و Setter عندما ترغب في جعل الخصائص للقراءة فقط أو الكتابة فقط.


قمنا باستعراض أهمية استخدام مفهومي Getter و Setter في لغة دارت (Dart)، وكيف يمكن من خلالهما توفير وصولًا صريحًا وسهلاً لخصائص الكائنات في برمجتك. تلعب هذه الأدوات دورًا حاسمًا في تحقيق الكفاءة والمرونة في تطبيقاتك.

باستخدام Getter، يمكنك قراءة قيم الخصائص بسهولة ودقة، بينما يمكن لـ Setter تحديث تلك القيم بسهولة أيضًا. هذا يسهم في تنظيم وتبسيط الكود ويزيد من قوته.

إذا كنت مبرمجًا يستخدم لغة دارت أو تريد تعلمها، فإن الفهم الجيد لهذين المفهومين سيمكنك من بناء تطبيقات أكثر كفاءة واحترافية. استفد من إمكانيات Getter و Setter لتحسين تجربة مستخدمي تطبيقاتك وتطوير أكوادك بشكل أفضل.

Arab Flutter Community 🚀

انضم إلى مجتمع Arab Flutter
شارك هذا المقال
فيسبوك تويتر Whatsapp Whatsapp لينكد ان تلغرام نسخ الرابط
المقال السابق شرح مفهوم الـ Setter في لغة دارت (Setter in Dart) الدرس 38: شرح مفهوم الـ Setter في لغة دارت (Setter in Dart)
المقال التالي شرح مفهوم الوراثة في لغة دارت (Inheritance in Dart) الدرس 40: شرح مفهوم الوراثة في لغة دارت (Inheritance in Dart)
Avatar of عبدالله يوسف
بواسطة عبدالله يوسف Founder and CEO at ArabFlutter
تابع:
أنا عبدالله يوسف، مهندس مصري ومؤسس موقع عرب فلاتر، ملهم بشغف التكنولوجيا والإبداع. كمصمم مواقع ومبرمج تطبيقات موبايل باستخدام Flutter، أستمتع بخلق عوالم رقمية فريدة ومبتكرة. تتجلى مواهبي في تصميم وتطوير واجهات مستخدم تفاعلية، حيث يمزج الجانب الجمالي بالدقة الهندسية. ما يميزني هو إلمامي الواسع بتقنيات البرمجة والتصميم، ومقدرتي على تطوير تطبيقات متنوعة عبر منصات مختلفة. أعتبر نفسي مبدعًا وملتزمًا، حيث أسعى دائمًا لتحقيق تحسين مستمر في مهاراتي وتقنياتي. أستمتع بتحديات العمل الجماعي وأؤمن بأهمية الابتكار والتطور. بفضل إبداعي والتزامي، أسعى لتقديم حلول فعّالة تلبي توقعات العملاء وتفوق عن المألوف.
اترك تعليقا اترك تعليقا

اترك تعليقاً إلغاء الرد

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
Tutorials
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
Tutorials
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
Tutorials
طريقة انشاء المجلدات باستخدام Dart
طريقة انشاء المجلدات باستخدام كود Dart تلقائيًا
Tutorials

مقالات ذات الصلة

اطلع على المزيد من المقالات المتعلقة بهذا الموضوع!
شرح العوازل في لغة دارت (Isolates in Dart)
Dart

شرح العوازل في لغة دارت (Isolates in Dart)

8
شرح الـ Stream في لغة دارت (Stream in Dart)
Dart

الدرس 57: شرح الـ Stream في لغة دارت (Stream in Dart)

8
شرح عبارات async & await في لغة دارت (Dart)
Dart

الدرس 56: شرح عبارات async & await في لغة دارت (Dart)

6
شرح مفهوم الـ Future في لغة دارت (Future In Dart)
Dart

الدرس 55: شرح مفهوم الـ Future في لغة دارت (Future In Dart)

6
شرح مفهوم الـ Asynchronous في لغة دارت (Dart)
Dart

الدرس 54: شرح مفهوم الـ Asynchronous في لغة دارت (Dart)

5
10 تمارين محلولة على Null Safety في لغة دارت Dart
Dart

الدرس 53: 10 تمارين محلولة على Null Safety في لغة دارت Dart

5
أظهر المزيد
شعار موقع عرب فلاتر شعار موقع عرب فلاتر

About US

Quick Links

  • خدماتنا
  • من نحن
  • اتصل بنا
  • اتفاقية استخدام
  • سياسة الخصوصية
© جميع الحقوق محفوظة موقع عرب فلاتر 2023
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
adbanner
تم اكتشاف مانع إعلانات
مرحبًا، يرجى إيقاف مانع الإعلانات. الإعلانات تُساهم في دعم موقعنا وتغطية جزء من تكاليف الاستضافة وتطوير المحتوى. شكرًا لتفهمك ودعمك.
Okay, I'll Whitelist
Welcome Back!

Sign in to your account

هل نسيت كلمة المرور؟