
- بواسطة x32x01 ||
فيه 3 كلمات مفتاحية في #C ساعات بتعمل لخبطة حتى للناس اللي شغالة في المجال بقالها فترة 
وهم: var، dynamic، وobject.
تعالى نبسطهم واحدة واحدة بالأمثلة
الكلمة المفتاحية var بتخلي الـ compiler يحدد نوع المتغير وقت الـ compilation.
بمعنى إن النوع بيتحدد تلقائيًا وقت كتابة الكود، ومينفعش يتغير بعد كده.
المميز: بتخلي الكود أنظف وأقصر.
العيب: لازم تكون متأكد إن النوع ثابت مش هيتغير.
مثال بسيط:
أما dynamic فهي العكس تمامًا 
التحقق من النوع بيتم وقت التشغيل (runtime)، مش أثناء الكومبايل.
يعني ممكن تغير نوع المتغير وقت ما تحب، لكن لازم تكون واخد بالك كويس!
المميز: مرونة رهيبة في التعامل مع البيانات.
العيب: الأخطاء مش بتظهر إلا وقت التشغيل، وده خطر شوية.
مثال:
كل حاجة في #C أصلها object، بس علشان تستخدم القيمة لازم تعمل Casting وترجع النوع الأصلي.
المميز: مناسب لو بتتعامل مع أنواع عامة أو غير معروفة.
العيب: الكاستنج ممكن يعمل Runtime Error لو النوع مش متوافق.
مثال:
في النهاية
اختيار الكلمة المفتاحية الصح بيسهّل عليك كتابة كود نظيف وسريع وآمن من الأخطاء.
فاكر دايمًا إن "البساطة في الكود = قوة في التنفيذ"

وهم: 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 وترجع النوع الأصلي.


مثال:
C#:
object num = 10;
int x = (int)num; // ✅ لازم تعمل Casting
إمتى تستخدم كل واحدة؟
- var → لما تكون عارف النوع ومش هيتغير.
- dynamic → لما تحتاج مرونة عالية بس خليك حذر.
- object → لما تتعامل مع بيانات عامة أو غير معروفة.
في النهاية

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

التعديل الأخير: