استنتاج النوع باستخدام 'var'
جزء من قسم Fundamentals في رحلة Dart على Coddy — الدرس 10 من 94.
في Dart، تُمكّن var استنتاج النوع (type inference)، حيث تحدد Dart تلقائيًا أنواع المتغيرات من القيم المعينة.
void main() {
var name = 'Dart Programmer';
print(name);
}يستنتج Dart أن name هو String. كما أنه يعمل مع الأنواع الأخرى أيضاً:
void main() {
var age = 25; // يتم استنتاجه كـ int
var price = 19.99; // يتم استنتاجه كـ double
var isAvailable = true; // يتم استنتاجه كـ bool
print(age); // المخرجات: 25
print(price); // المخرجات: 19.99
print(isAvailable); // المخرجات: true
}التحدي
مبتدئقم بإنشاء برنامج Dart يوضح استنتاج النوع (type inference) باستخدام الكلمة الأساسية var:
- قم بالتصريح عن متغير باسم
nameباستخدامvarوقم بتعيين قيمة نصية له وهي"Dart" - قم بالتصريح عن متغير باسم
yearباستخدامvarوقم بتعيين قيمة عدد صحيح له وهي2011 - قم بالتصريح عن متغير باسم
versionباستخدامvarوقم بتعيين قيمة عشرية له وهي2.19 - قم بالتصريح عن متغير باسم
isStronglyTypedباستخدامvarوقم بتعيين قيمة منطقية له وهيtrue - اطبع كل متغير مع تسمية توضيحية بالتنسيق التالي:
Language: Dart Created in: 2011 Current version: 2.19 Is strongly typed: true
يجب أن يطابق مخرجك هذا التنسيق تماماً.
ورقة مرجعية
استخدم var لاستنتاج النوع - تحدد Dart تلقائيًا أنواع المتغيرات من القيم المعينة:
var name = 'Dart Programmer'; // تم استنتاجه كـ String
var age = 25; // تم استنتاجه كـ int
var price = 19.99; // تم استنتاجه كـ double
var isAvailable = true; // تم استنتاجه كـ boolجرّب بنفسك
void main() {
// قم بالتصريح عن متغيراتك باستخدام var
var name = ?;
var year = ?;
var version = ?;
var isStronglyTyped = ?;
// اطبع المتغيرات مع التسميات
print("Language: " + name);
print("Created in: " + year.toString());
print("Current version: " + version.toString());
print("Is strongly typed: " + isStronglyTyped.toString());
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
4المعاملات - الجزء الثاني
معاملات المقارنةالمعامل المنطقي ANDالمعامل المنطقي ORالمعامل المنطقي NOTمعاملات فحص النوعملخص - إجراء المقارنات7التعامل مع النصوص (Strings)
دمج النصوص (String Concatenation)تضمين النصوص (String Interpolation)النصوص متعددة الأسطر (Multi-line Strings)خصائص النصوص (String Properties)دوال النصوص الأساسية (String Methods)10المجموعات - أساسيات الخرائط
ما هي الخرائط؟إنشاء خريطةالوصول إلى القيم عبر المفتاحأزواج المفتاح والقيمةالحصول على حجم الخريطةالحصول على المفاتيحالحصول على القيمالتحقق من وجود مفتاح2المتغيرات وأنواع البيانات الأساسية
ما هي المتغيرات؟النصوص (Strings)الأعداد الصحيحة (int)الأعداد العشرية (double)القيم المنطقية (bool)استنتاج النوع باستخدام 'var'المتغيرات النهائية (Final)المتغيرات الثابتة (Constant)قواعد التسميةأساسيات الـ Null Safetyملخص - التصريح عن المتغيرات8مسار التحكم - الحلقات التكرارية
حلقة 'for' التكراريةحلقة 'while' التكراريةحلقة 'do-while' التكراريةاستخدام 'break' في الحلقات التكراريةاستخدام 'continue' في الحلقات التكراريةملخص - تكرار الكود البرمجي3المعاملات - الجزء الأول
المعاملات الحسابيةالقسمة الصحيحةمعامل باقي القسمة (Modulo)الزيادة والنقصاناختصارات التعيينملخص - الحسابات البسيطة6تدفق التحكم - اتخاذ القرار
جملة 'if'جملة 'else'جملة 'else if'ملخص - القرارات البسيطةجمل 'if' المتداخلةجملة 'switch'9المجموعات - أساسيات القوائم
ما هي القوائم؟إنشاء قائمةالوصول عبر الفهرسالحصول على طول القائمةإضافة عناصرإزالة عناصرالتحقق مما إذا كانت القائمة فارغةالتكرار عبر القائمة