String Interpolation vs Concatenation

  • Interpolation (التضمين): تكتب المتغير داخل $ مباشرة أو ${} داخل النص، وDart يبدل القيمة تلقائيًا.
    dart
    String name = "Ali";
    print("Hello, $name"); // أسهل للقراءة، ويعالج الأنواع تلقائيًا
    
  • Concatenation (الربط): تستخدم عامل + أو write عشان تلصق نصين.
    dart
    print("Hello, " + name);
    
  • الفرق: التضمين أنضف وأسرع، وما يحتاج تفكر في تحويل النوع (intString). الربط أحيانًا مفيد لما تحط شرط قبل لمعالجة كل جزء، لكن لو تقدر استخدم ${} يبقى أوضح.
  • نصيحة: استخدم interpolation في أغلب الحالات، واحتفظ بالـ concatenation لما تكون بتبني السلسلة خطوة بخطوة داخل شرط أو حلقة.
dart
void main() {
  String greeting = "hello";
    String greeting2 = "world";
    String fullGreeting = "$greeting, $greeting2!";
    String fullGreetingConcatenated = greeting + ", " + greeting2 + "!";
  print(fullGreetingConcatenated); // Output: hello, world!
}