الفصل (برمجة الحاسوب)

CH / ˌ siː ˈ / هي بيئة برمجة نصية ومفسر لغة C و C++ متعددة المنصات ، مصممة من قبل هاري تشينغ كلغة برمجة نصية للمبتدئين لتعلم الرياضيات والحوسبة والتحليل العددي (الأساليب العددية) والبرمجة بلغة C/C++. تتولى شركة SoftIntegration, Inc. حاليًا تطوير وتسويق CH . تتضمن الإصدارات المجانية إصدار الطلاب، والإصدار الاحترافي غير التجاري لأجهزة Raspberry Pi .

يمكن تضمين CH في برامج تطبيقات C و C++. يتميز بوظائف الحوسبة العددية ورسم البيانات الرسومية. يجمع CH بين خصائص كل من الصدفة وبيئة التطوير المتكاملة (IDE) . [ 1 ] تجمع صدفة CH بين خصائص الصدفة الشائعة ولغة C. [ 2 ] توفر بيئة التطوير المتكاملة ChIDE إمكانية التنقل السريع بين أجزاء الكود وتصحيح الأخطاء الرمزي. وهي مبنية على CH و Scite و Scintilla المضمنة . [ 3 ] [ 4 ]

كُتبت CH بلغة C وتعمل على أنظمة التشغيل Windows و Linux و macOS و FreeBSD و AIX و Solaris و QNX و HP-UX . تدعم CH ميزات C90 ومعظم ميزات C99 ، لكنها لا تدعم جميع ميزات C++. كانت ميزات الأعداد المركبة C99، والحسابات ذات الفاصلة العائمة IEEE 754 ، والمصفوفات ذات الطول المتغير مدعومة في CH قبل أن تُصبح جزءًا من معيار C99. [ 5 ] [ 6 ] [ 7 ] [ 8 ] تميزت CH بين الآلات الافتراضية المبنية على لغة C بوظائفها وتوافر مكتبات الطرف الثالث. [ 9 ]

يحتوي برنامج CH على العديد من مجموعات الأدوات التي تُوسّع وظائفه. على سبيل المثال، تُستخدم مجموعة أدوات CH Mechanism لتصميم وتحليل الآليات الشائعة الاستخدام مثل آلية الوصلة الرباعية ، والوصلة الخماسية ، والوصلة السداسية ، وآلية المرفق المنزلق، ونظام الكامة التابع. [ 10 ] تُستخدم مجموعة أدوات CH Control System لتصميم وتحليل ونمذجة أنظمة التحكم الخطية الثابتة زمنيًا (LTI) المستمرة أو المتقطعة. [ 11 ] تتضمن كلتا مجموعتي الأدوات شفرة المصدر .

تم دمج CH في منصة C-STEM Studio المجانية، وهي منصة لتعلم الحوسبة والعلوم والتكنولوجيا والهندسة والرياضيات (C-STEM) باستخدام الروبوتات. وقد طوّر مركز الحوسبة المتكاملة وتعليم العلوم والتكنولوجيا والهندسة والرياضيات (STEM) بجامعة كاليفورنيا في ديفيس منصة C-STEM Studio، التي تقدم منهجًا دراسيًا لطلاب المراحل الدراسية من الروضة وحتى الصف الثاني عشر.

يدعم نظام CH كلاً من LEGO Mindstorms NXT و EV3 ، و Arduino ، و Linkbot، و Finch Robot، و RoboTalk، و Raspberry Pi، و Pi Zero، و ARM لبرمجة الروبوتات وتعليمها. [ 12 ] [ 13 ] [ 14 ] كما يمكن دمجه في منصة تصميم وتطوير أنظمة LabVIEW . [ 15 ]

سمات

تدعم لغة CH معيار ISO C لعام 1999 (C99) وفئات C++. وهي مجموعة فرعية من لغة C مع فئات C++. تدعم اللغة العديد من الميزات الرئيسية لمعيار C99، مثل الأعداد المركبة، والمصفوفات ذات الأطوال المتغيرة (VLAs)، وحسابات الفاصلة العائمة وفقًا لمعيار IEEE 754، والدوال الرياضية العامة. كما تدعم مواصفات الأحرف العريضة الواردة في الملحق 1 لمعيار C90.

تتضمن ميزات لغة C++ المتوفرة في CH ما يلي:

يدعم CH الفئات في لغة C++ مع قدرات إضافية، بما في ذلك:

  • الفئات داخل الدوال الأعضاء
  • الدوال المتداخلة مع الفئات
  • تمرير دالة عضو إلى وسيط من نوع مؤشر إلى دالة

يمكن لـ CH التفاعل مع مكتبات C/C++ الموجودة واستدعاء وظائف C/C++ من خلال نص CH البرمجي. [ 16 ] وباعتباره مترجمًا للغة C/C++، يمكن استخدام CH كمحرك برمجة نصية ولغة إضافية للتطبيقات. ويمكن تمرير ومشاركة مؤشرات المصفوفات أو المتغيرات في كلٍ من سياقات البرمجة النصية المترجمة بلغة C وسياقات برمجة CH النصية. ومن الأمثلة على تطبيقات برمجة CH النصية المضمنة تطبيق Mobile-C، الذي استُخدم للتصور التعاوني لنموذج الشبكة الموزعة. [ 17 ] [ 18 ] [ 19 ]

يحتوي CH على نوع بيانات نصي مدمج (string_t) لتخصيص الذاكرة وتحريرها تلقائيًا. وهو يدعم أسماء الصدفة المستعارة، وسجل الأوامر، والتوجيه. [ 20 ] [ 21 ]

يحتوي برنامج CH على ميزات رسم بياني ثنائية وثلاثية الأبعاد مدمجة ومصفوفات حسابية للحساب العددي. يمكن كتابة معادلة خطية ثنائية الأبعاد على الصورة b = A*x حرفيًا في برنامج CH. [ 22 ]

انظر أيضاً

مراجع

  1. فيراراغافان، سريرانغا (2013). "مقدمة إلى Ch: تنفيذ محول درجة الحرارة في Ch" . ComputerWorld.{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal=
  2. قشرة الذرة
  3. Ch IDE
  4. وانغ، غاري (2002). "Ch يحل مشاكل قابلية النقل". IEEE Spectrum . 39 (6): 59. Bibcode : 2002IEEES..39f..59W . doi : 10.1109/MSPEC.2002.1049264 . S2CID 32477309 . 
  5. تشنغ، هاري (1993). "معالجة الأعداد المركبة في لغة البرمجة Ch" . البرمجة العلمية : 76-106 .
  6. تشنغ، هاري (1993). "الحوسبة العلمية بلغة برمجة Ch" . البرمجة العلمية: 49-75 .{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal=
  7. تشنغ، هاري (1995). "توسيع نطاق لغتي C و FORTRAN لأتمتة التصميم" . مجلة ASME للمعاملات، مجلة التصميم الميكانيكي: 390-395 .{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal=
  8. تشنغ، هاري (1995). "توسيع لغة C باستخدام مصفوفات ذات طول متغير". معايير وواجهات الحاسوب . 17 (4): 375-406 . doi : 10.1016/0920-5489(95)00007-H .
  9. مورخون، ماريو (2006). "لغة Ch تنافس وظائف جافا" . CRN.{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal=
  10. تشنغ، هاري (2006). "تصميم وتحليل الآليات التفاعلية الموجهة للكائنات". الهندسة باستخدام الحاسوب . 21 (3): 237-246 . doi : 10.1007/s00366-005-0008-4 . S2CID 16996625 . 
  11. تشو، يونغ (2003). "حزمة برمجية قائمة على الكائنات لتصميم وتحليل أنظمة التحكم التفاعلية". مجلة علوم الحوسبة والمعلومات في الهندسة . 3 (4): 366-367 . doi : 10.1115/1.1630815 . S2CID 17908643 . 
  12. روبوت ch
  13. طائر العصفور
  14. توت العليق والذراع
  15. "تضمين مترجم لغة C/C++ Ch في LabVIEW لكتابة البرامج النصية" .
  16. ويلسون، ماثيو (2004). "Open-RJ و Ch" . مجلة دكتور دوب .
  17. تشنغ، هاري (2009). "تسريع تطوير البرمجيات باستخدام البرمجة النصية المضمنة" . مجلة دكتور دوبز . ص 8. 
  18. وانغ، لي رونغ؛ بو، يو؛ هاجيوارا، آي (2009). المؤتمر الدولي العاشر لمعهد مهندسي الكهرباء والإلكترونيات (IEEE) حول التصميم الصناعي والتصميم المفاهيمي بمساعدة الحاسوب . التصميم الصناعي والتصميم المفاهيمي بمساعدة الحاسوب، 2009. CAID & CD 2009. المؤتمر الدولي العاشر لمعهد مهندسي الكهرباء والإلكترونيات . الصفحات 1127-1132 . doi : 10.1109/CAIDCD.2009.5375178 . ISBN  978-1-4244-5266-8. S2CID 39307433 . 
  19. وانغ، لي رونغ؛ بو، يو؛ هاجيوارا، إيشيرو (2009). تبسيط تعاوني قائم على الوكلاء لنموذج شبكة ثلاثية الأبعاد . وقائع المؤتمر الدولي السادس للتصميم التعاوني والتصور والهندسة (CDVE'09). الصفحات 325-328 . ISBN  9783642042645.
  20. كامبل، مات (2003). "Ch، مترجم AC/C++ - إمكانيات جديدة للأشخاص الذين يحبون لغة C ونظام يونكس" . مجلة MACTECH، مجلة تكنولوجيا أبل.{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal=
  21. تشنغ، هاري (2010). بيئة لغة Ch (الطبعة 6.3 ). ديفيس، كاليفورنيا: شركة SoftIntegration. 
  22. ^ جلاسبورو ، فرانسيس (2001). "إصدار بيئة لغة Ch 2.0" . مجلة سي فو: 36- 37.{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal=

للمزيد من القراءة