By using this site, you agree to the Privacy Policy and Terms of Use.
موافق
عرب فلاترعرب فلاتر
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
قراءة: الدرس 37: شرح مفهوم الـ Getter في لغة دارت (Getter in 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 > الدرس 37: شرح مفهوم الـ Getter في لغة دارت (Getter in Dart)
Dart

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

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

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

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

تُعدّ الـ Getter في لغة برمجة دارت (Dart) أحد الأدوات المهمة في برمجة الكائنات OOP. يستخدم الـ Getter للحصول على قيمة خاصية معينة، وغالبًا ما يُستخدم للوصول إلى قيمة خاصية خاصة (Private Property) في الكائن. يوفر الـ Getter وصولًا صريحًا إلى خصائص الكائن.

المحتويات
الصيغة العامة للـ Getter في دارتأهمية الـ Getter في دارتأمثلة على الـ Getter في دارت:المثال 1: استخدام الـ Getter في دارتالمثال 2: استخدام الـ Getter في دارتالمثال 3: استخدام الـ Getter في التحقق من صحة البياناتالمثال 4: استخدام الـ Getter في دارت

الصيغة العامة للـ Getter في دارت

يتم تعريف الـ Getter في دارت باستخدام الصيغة التالية:

return_type get property_name {
  // Getter body
}

ملاحظة: بدلاً من كتابة الأقواس المُنعقدة {} بعد اسم الخاصية، يمكن أيضًا استخدام السهم السميك => بعد اسم الخاصية.


أهمية الـ Getter في دارت

  1. الوصول إلى قيمة خاصية Private: يُمكن استخدام الـ Getter للوصول إلى قيمة خاصية تكون محددة كخاصية خاصة (Private Property) في الكائن.
  2. تقييد الوصول الى البيانات في الكلاس: يُمكن استخدام الـ Getter لتقييد الوصول الى البيانات في الكلاس وجعلها قابلة للقراءة فقط من الخارج.


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

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

لنفترض أن لدينا كلاس يدعى Person يحتوي على خاصيتين هما firstName وlastName. سنقوم بإنشاء Getter يُسمى fullName للحصول على الاسم الكامل للشخص.

class Person {
  // الخصائص
  String? firstName;
  String? lastName;

  // Constructor
  Person(this.firstName, this.lastName);

  // الـ Getter
  String get fullName => "$firstName $lastName";
}

void main() {
  Person p = Person("John", "Doe");
  print(p.fullName);
}

نتيجة الكود:

John Doe

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

فلنفترض أن لدينا كلاس يدعى NoteBook يحتوي على خاصيتين Private هما _name و _prize. سنقوم بإنشاء 2 Getter هما name و prize للوصول إلى قيم الخصائص.

class NoteBook {
  // الخصائص الخاصة
  String? _name;
  double? _prize;

  // Constructor
  NoteBook(this._name, this._prize);

  // الـ Getter للوصول إلى الخاصية الخاصة _name
  String get name => _name!;

  // الـ Getter للوصول إلى الخاصية الخاصة _prize
  double get prize => _prize!;
}

void main() {
  // إنشاء كائن من الكلاس NoteBook
  NoteBook nb = NoteBook("Dell", 500);
  // عرض قيم الكائن
  print(nb.name);
  print(nb.prize);
}

نتيجة الكود:

Dell
500.0

المثال 3: استخدام الـ Getter في التحقق من صحة البيانات

فلنفترض أن لدينا كلاس يدعى NoteBook يحتوي على خاصيتين Private هما _name و _prize. سنقوم بإنشاء Getter يُسمى name و prize للوصول إلى قيم الخصائص. إذا قُدم اسم فارغ، فسيتم إرجاع “بدون اسم” كقيمة الاسم.

class NoteBook {
  // الخصائص الخاصة
  String _name;
  double _prize;

  // Constructor
  NoteBook(this._name, _prize);

  // Getter للوصول إلى الخاصية الخاصة _name
  String get name {
    if (_name == "") {
      return "بدون اسم";
    }
    return _name;
  }

  // Getter للوصول إلى الخاصية الخاصة _prize
  double get prize {
    return this._prize;
  }
}

void main() {
  // إنشاء كائن من الكلاس NoteBook
  NoteBook nb = NoteBook("Apple", 1000);
  print("اسم الكمبيوتر المحمول الأول: ${nb.name}");
  print("سعر الكمبيوتر المحمول الأول: ${nb.prize}");
}

نتيجة الكود:

اسم الكمبيوتر المحمول الأول: Apple
سعر الكمبيوتر المحمول الأول: 1000.0

المثال 4: استخدام الـ Getter في دارت

فلنفترض أن لدينا كلاس يدعى Person يحتوي على خاصية firstName. سنقوم بإنشاء Getter يُسمى uppercaseName للحصول على قيمة firstName بأحرف كبيرة.

class Person {
  // الخصائص
  String? firstName;

  // Constructor
  Person(this.firstName);

  // Getter
  String get uppercaseName => firstName!.toUpperCase();
}

void main() {
  Person p = Person("John");
  print(p.uppercaseName);
}

نتيجة الكود:

JOHN

أتمنى أن يكون ذلك واضحًا ومفهومًا! في حالة وجود أي استفسارات، فلا تتردد في طرحها.


في الختام، يمكننا القول أن الـ Getter في لغة برمجة دارت (Dart) يمثل أحد الأدوات الأساسية التي تُسهم في تنظيم وتحسين برمجتنا. من خلال الـ Getter، نمكن أنفسنا من الوصول إلى البيانات بشكل سلس ومنتظم، سواء كانت هذه البيانات عامة أو خاصة Private.

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

 

Arab Flutter Community 🚀

انضم إلى مجتمع Arab Flutter
شارك هذا المقال
فيسبوك تويتر Whatsapp Whatsapp لينكد ان تلغرام نسخ الرابط
المقال السابق شرح مفهوم التغليف في لغة دارت (Encapsulation in Dart) الدرس 36: شرح مفهوم التغليف في لغة دارت (Encapsulation in Dart)
المقال التالي شرح مفهوم الـ Setter في لغة دارت (Setter in Dart) الدرس 38: شرح مفهوم الـ Setter في لغة دارت (Setter 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

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