الفرق بين var وdynamic وobject في C#

x32x01
  • بواسطة x32x01 ||
  • #1
فيه 3 كلمات مفتاحية في #C ساعات بتعمل لخبطة حتى للناس اللي شغالة في المجال بقالها فترة 😅
وهم: var، dynamic، وobject.
تعالى نبسطهم واحدة واحدة بالأمثلة 👇

🧠 var - الذكاء الفوري​

الكلمة المفتاحية var بتخلي الـ compiler يحدد نوع المتغير وقت الـ compilation.
بمعنى إن النوع بيتحدد تلقائيًا وقت كتابة الكود، ومينفعش يتغير بعد كده.

المميز: بتخلي الكود أنظف وأقصر.
⚠️ العيب: لازم تكون متأكد إن النوع ثابت مش هيتغير.

مثال بسيط:
C#:
var name = "Mostafa"; // string
name = 123; // ❌ خطأ! مش هينفع تغير النوع

🌀 dynamic - الحرية المطلقة​

أما dynamic فهي العكس تمامًا 😎
التحقق من النوع بيتم وقت التشغيل (runtime)، مش أثناء الكومبايل.
يعني ممكن تغير نوع المتغير وقت ما تحب، لكن لازم تكون واخد بالك كويس!

المميز: مرونة رهيبة في التعامل مع البيانات.
⚠️ العيب: الأخطاء مش بتظهر إلا وقت التشغيل، وده خطر شوية.

مثال:
C#:
dynamic data = "Hello";
data = 123; // ✅ تمام مفيش مشكلة
Console.WriteLine(data);



🏛 object - الأصل العتيق​

الـ object هو الأب الروحي لكل الأنواع في C#.
كل حاجة في #C أصلها object، بس علشان تستخدم القيمة لازم تعمل Casting وترجع النوع الأصلي.

المميز: مناسب لو بتتعامل مع أنواع عامة أو غير معروفة.
⚠️ العيب: الكاستنج ممكن يعمل Runtime Error لو النوع مش متوافق.

مثال:
C#:
object num = 10;
int x = (int)num; // ✅ لازم تعمل Casting



🧭 إمتى تستخدم كل واحدة؟​

  • var → لما تكون عارف النوع ومش هيتغير.
  • dynamic → لما تحتاج مرونة عالية بس خليك حذر.
  • object → لما تتعامل مع بيانات عامة أو غير معروفة.

في النهاية 🧩
اختيار الكلمة المفتاحية الصح بيسهّل عليك كتابة كود نظيف وسريع وآمن من الأخطاء.
فاكر دايمًا إن "البساطة في الكود = قوة في التنفيذ" 💪
 
التعديل الأخير:

المواضيع ذات الصلة

x32x01
الردود
0
المشاهدات
326
x32x01
x32x01
x32x01
الردود
0
المشاهدات
1K
x32x01
x32x01
x32x01
الردود
0
المشاهدات
1K
x32x01
x32x01
x32x01
الردود
0
المشاهدات
1K
x32x01
x32x01
x32x01
الردود
0
المشاهدات
923
x32x01
x32x01
الوسوم : الوسوم
.net c sharp clean code compilation data types dynamic object runtime type casting var
الدخول أو التسجيل السريع
نسيت كلمة مرورك؟

آخر المشاركات

إحصائيات المنتدى
المواضيع
2,388
المشاركات
2,601
أعضاء أكتب كود
574
أخر عضو
الياس
عودة
أعلى