Carbide.c++

Carbide.c++ هي أداة لتطوير البرمجيات بلغة C++ على نظام التشغيل Symbian . تُستخدم لتطوير الهواتف التي تعمل بنظام التشغيل، بالإضافة إلى التطبيقات التي تعمل عليها. تعتمد على منصة Eclipse IDE المُحسّنة بمكونات إضافية لدعم تطوير نظام Symbian. تُقدم مؤسسة Symbian هذا المنتج بموجب نموذج المصادر المفتوحة . في أبريل 2009، نقلت نوكيا ملكية Carbide.c++ والعديد من أدوات تطوير البرمجيات الأخرى إلى مؤسسة Symbian . يتولى أعضاء مجتمع Symbian الآن إدارة Carbide.c++ والمساهمة في تطويره.

حزم الأدوات

يتم توفير Carbide.c++ من قبل مؤسسة Symbian في حزمتين مختلفتين من الأدوات.

  • تحتوي مجموعة أدوات تطوير التطبيقات (ADT) على أدوات لتطوير التطبيقات، بما في ذلك بيئة التطوير المتكاملة (IDE) وأدوات تصحيح الأخطاء وأدوات التحليل.
  • تحتوي مجموعة أدوات تطوير المنتجات (PDT) على أدوات للمساهمة وإنشاء المنتجات.

كل من ADT و PDT عبارة عن برامج تثبيت أساسية تتضمن Carbide.c++ والعديد من المكونات الإضافية المستندة إلى Eclipse والعديد من الأدوات المستقلة.

يحتوي الإصدار الأول من ADT/PDT على Carbide.c++ الإصدار 2.0.4، ومن المقرر أن يحتوي الإصدار الثاني من ADT/PDT (الربع الرابع من عام 2009) على Carbide.c++ الإصدار 2.2.

تكنولوجيا

تعتمد Carbide.c++ على أحدث إصدارات بيئة التطوير المتكاملة Eclipse IDE وEclipse CDT ، مع إضافة ميزات خاصة بنظام التشغيل Symbian. تدعم حاليًا مُصرّف WINSCW x86 C++ الموجود في CodeWarrior لإنتاج ملفات ثنائية للمحاكي. أما بالنسبة للملفات الثنائية المستهدفة، فتدعم مُصرّفي GCC وARM RVCT (يُباعان بشكل منفصل). يُذكر أن مُصرّفي WINSCW وGCC مُضمّنان في حزمة تطوير البرامج (SDK) وليسا مُضمّنين ​​بشكل صريح في بيئة التطوير المتكاملة Carbide IDE.

لم يتفرع من Carbide.c++ سوى عدد قليل جدًا من أجزاء CDT ، إذ أن معظمها موجود ضمن إضافات تُضاف إلى Eclipse. وتتعلق هذه التفرعات القليلة في الغالب بدلالات محرك تصحيح الأخطاء CodeWarrior، مقارنةً بـ GDB الذي كان Eclipse يدعمه سابقًا. ولأن Carbide.c++ مشابه جدًا لتثبيت Eclipse القياسي، فإنه لا يزال بالإمكان استخدامه لأنواع أخرى من التطوير مثل Java أو Perl (شريطة تثبيت الإضافات الصحيحة باستخدام آلية التحديث الذاتي لـ Eclipse). وبالمثل، من المفترض أن يكون من الممكن إنتاج منتج بوظائف مشابهة لـ Carbide.c++ عن طريق نقل إضافات Carbide.c++ إلى تثبيت Eclipse القياسي؛ وهذه ميزة غير متوفرة حاليًا من نوكيا.

يدعم Carbide.c++ نظامي بناء Symbian الإصدارين الأول والثاني (المعروف أيضًا باسم Raptor). الأول نظام بناء قائم على لغة Perl، بينما الثاني مبني باستخدام لغة Python ويدعم أنظمة تشغيل Symbian من الجيل التالي. تتمثل الميزة الرئيسية لدعم SBSv1 وv2 في Carbide في إمكانية إنشاء عمليات بناء من سطر الأوامر بالتوازي مع عمليات البناء في بيئة التطوير المتكاملة (IDE)، دون الحاجة إلى إدارة مساحتي عمل مختلفتين. أما عيب SBSv1 فهو أن فحص التبعيات يتم تلقائيًا في كل عملية بناء، مما يجعل إعادة بناء المشاريع الكبيرة تستغرق وقتًا طويلاً. وقد أضاف Carbide.c++ بعض الاختصارات (بدءًا من الإصدار 1.3) لتسريع عملية إعادة البناء.

كانت الإصدارات المبكرة من Carbide (الإصدار 1.0، 1.1) تدعم طريقة بناء مختلفة كانت بها العديد من المشاكل.

تاريخ

تم إنشاء مجموعة أدوات تطوير Carbide.c++ لتحل محل CodeWarrior لنظام التشغيل Symbian كبيئة التطوير الأساسية له. كان تبني هذه الأداة بطيئًا، لكن استخدام CodeWarrior آخذ في التضاؤل ​​نظرًا لأن الأداة القديمة لم تعد تدعم التحديثات الأخيرة لنظام التشغيل Symbian ومنصات S60.

تم توفير كاربايد في ثلاثة منتجات تجارية ومنتج واحد مجاني. أما اليوم، فهو جزء من عروض مؤسسة سيمبيان ومتاح مجاناً بالكامل.

  • Express أدوات أساسية لتطوير التطبيقات. تتضمن إدارة المشاريع، وكتابة التعليمات البرمجية، وبناء تطبيقات المحاكاة وGCC-E، وتصحيح أخطاء المحاكاة. تم توفير إصدار Express مجانًا، ولم يكن يدعم التطوير المباشر على الهواتف المستخدمة في الإنتاج.
  • إصدار المطورين مُصمم خصيصًا لتطوير برامج ما بعد البيع. يحتوي على ميزات Express، ومصمم واجهة مستخدم (لإنشاء واجهة مستخدم سريعة)، وتصحيح أخطاء التطبيق على الجهاز لهواتف S60 وUIQ.
  • إصدار احترافي - مُوجّه لمصنّعي هواتف نظام التشغيل Symbian وشركائهم وموردي التطبيقات/البرمجيات الوسيطة الذين يعملون على مشاريع تتطلب مهارات عالية. يتضمن ميزات للمطورين، وأدوات تصحيح الأخطاء على مستوى النظام داخل الجهاز، وأدوات تحليل الأداء.
  • مُصنِّع المعدات الأصلية مُوجَّه لتطوير الأنظمة المُدمجة في مراحلها الأولى، مثل تطوير برامج التشغيل، ونقل الأنظمة الأساسية، وتطوير التطبيقات والبرمجيات الوسيطة التي تعتمد على الأجهزة. يتضمن ميزات احترافية، وتصحيح الأخطاء في وضع الإيقاف باستخدام محاكيات Lauterbach وSophia داخل الدائرة.

تراوحت أسعار المنتجات بين 300 و 8000 يورو حسب مجموعة الميزات ونموذج الترخيص.

لم يلقَ برنامج كاربايد استحسانًا كبيرًا من مجتمع سيمبيان. فالمطورون عمومًا لا يميلون إلى الانتقال إلى أدوات جديدة، وقد واجهت الإصدارات الأولى من كاربايد مشاكل عديدة. وتكررت الشكاوى ، منها على سبيل المثال: غياب تنسيق المسافات البادئة في الكود على غرار نظام سيمبيان، وعدم وجود خاصية بحث سهلة في الملفات، وبطء استيراد ملفات بناء نظام سيمبيان (MMPs)، وصعوبة استخدام تصحيح الأخطاء على الجهاز. إضافةً إلى ذلك، لم يعمل نظام البناء المُدار، الذي كان مُنتظرًا بشدة، بشكل صحيح ؛ فبدلًا من توفير بناء تزايدي حقيقي، كان يحذف كل شيء ويبدأ من جديد في كثير من الأحيان. مع ذلك، كان الاستقبال جيدًا بشكل عام؛ فبيئة التطوير هذه تُفضّل على كود واريور، وبيئة التطوير المتكاملة (IDE) مبنية على جافا، لذا توجد بعض المخاوف بشأن السرعة والذاكرة، وغالبًا ما تكون بيئة التطوير المتكاملة بطيئة وتستهلك ذاكرة كبيرة، وهي جميعها سمات مميزة لبيئة جافا.

أحرزت مكتبة Carbide.c++ تقدماً مطرداً في معالجة المشكلات التي أثارها مجتمع المطورين. وقد انخفض استخدام CodeWarrior بشكل ملحوظ نتيجةً للتحسينات التي طرأت على Carbide، بالإضافة إلى عدم دعم CodeWarrior للإصدارات الأحدث من نظام التشغيل Symbian.

مراجع

  • مجموعات تطوير البرامج الخاصة بنوكيا
  • بديل آخر - تطوير نظام التشغيل Symbian داخل بيئة التطوير المتكاملة Xcode من Apple
  • سيمبيان سي++ - ويكي مطوري نوكيا