ما هي نقاط قوة و ضعف لغة c#
و لماذا قد أستخدمها في برمجة تطبيقات الأندرويد بدلا من لغة جافا
مايعجب الكثيرين في سي# هي دعمها من قبل مايكروسوفت ومنصة دوت نت
لكن كثير ممايكتب بهذه اللغة نادراً مايعمل على أنظمة غير الوندوز فهي لغة رائعة مادمت تستخدمها لكتابة برامج للوندوز لكن إن كنت تخطط لدعم أنظمة أخرى فعليك النظر للغات أخرى
ظهر مشروع مونو لينشر هذه اللغة للأنظمة الأخرى بمافيها المحمولة لكنه مليء بالعيوب ويفتقر لدعم الكثير من الخصائص. أحد أساتذتي في الجامعة قام بكتابة مايقارب 10 برامج بهذه اللغة للأجهزة لكنه اضطر في النهاية لإعادة كل هذه البرامج فبالرغم من أن السبب في استخدامها هو عدم الحاجة لإعادة كتابة البرامج للأندرويد بعد الانتهاء من الآي أو إس لكن الخصائص التي يدعمها مونو على الآي أو إس تختلف بعض الشيء عن تلك على الأندرويد ناهيك عن الأداء وحجم التطبيق.
لا أنصحك في استخدام سي# لأي نظام غير وندوز على الأقل حتى يصل مشروع مونو لمستوى مقبول من الأداء ودعم الخصائص
الجزء الأول من سؤالك بسيط ولكن الإجابة عليه ليس بتلك السهولة التي تتصورها لأنه في لغات البرمجة المقارنة غالبا تكون غير منصفة و من الصعب حصرها لإنها لا تعتمد على معلومات قياسية وإنما تتبع عدة عوامل وهي شديدة التباين
فمثلا قد تعتمد على خبرة المبرمج فما يراه مبرمج أنه سلبية في اللغة قد لا يراها آخر كذلك لأنه يعلم حلا بسيط يجعله يتجاوز تلك العقبة أو السلبية
أما بالنسبة للشق الثاني من السؤال
وبالنسبة لي فلا أعلم سببا يجعل الشخص يبرمج تطبيقات أندرويد بلغة سي شارب - وهي لغتي التي اتقنها - إلا حتى لا يضطر للبدء بتعلم لغة غير التي يتقنها.
لأن الأندرويد صمم ليتم إنتاج تطبيقاته بالجافا وأي لغات أخرى سيكون عبر منصات وسيطة ، أي نحن أمام عملية تحويل والتي تجعل هناك بعض القيود والحدود.
وأنا عن نفسي في حال نويت دخول عالم تطبيقات الأندرويد سيكون من خلال تعلم الجافا أولا فإن تعسر سأجرب الحل البديل وهو سي شارب
التعليقات