لغة البرمجة الأساسية (GLBasic)
GLBasic هي لغة برمجة BASIC تجارية يمكن ترجمتها إلى منصات متعددة تشمل Windows و Linux و Mac OS X وبعض الأجهزة المحمولة . صُممت اللغة لتكون بسيطة وسهلة الاستخدام.
ملخص
بدأت لغة GLBasic كلغة تفسيرية بأوامر ثنائية الأبعاد (GL اختصارًا للغة الرسومات). وهي تستخدم الآن مُصرّف GCC للعديد من المنصات المختلفة لتحقيق نتائج سريعة وسلسة . يقوم مُصرّف GLBasic المُسبق "GPC" بتحويل لغة BASIC البسيطة إلى كود C++ ثم يُصرّفه لاحقًا. وبذلك، يُمكن للمستخدم توسيع GLBasic باستخدام الأمر INLINE لدمج كود C /C++ مباشرةً مع كود مصدر GLBasic. وبفضل ذلك، يُمكن لـ GLBasic الوصول بسهولة إلى مكتبات ديناميكية خارجية على جميع المنصات. تأتي حزمة تطوير البرامج (SDK) الخاصة بـ GLBasic مع بيئة تطوير متكاملة ( IDE ) ومُصحّح أخطاء ومُحرّك رسومات مبني على OpenGL (أو OpenGL ES ) لمنصات Windows و Linux و Mac OS X و iOS و WebOS . أما بالنسبة للأجهزة المحمولة ( Windows Mobile و GP2X و GP2X Wiz )، فتستخدم GLBasic إجراءاتها الخاصة المُشابهة للأجهزة للحصول على رسومات سريعة.
لتجميع البرنامج لأجهزة iPhone أو iPad ، ستحتاج إلى جهاز iMac (لتجميع الكود المُنشأ عليه - للامتثال لمتطلبات Apple) وأحدث إصدار من Xcode ، وهو برنامج مجاني للتنزيل من موقع Apple الإلكتروني.
لكي تتمكن من تشغيل البرنامج فعليًا على جهاز iPhone أو iPad (لن تعمل برامج GLBasic على المحاكي)، يجب أن تكون عضوًا في شبكة مطوري Apple لأجهزة iPhone .
منذ إصدار النسخة التجريبية 8.054، أصبح من الممكن تجميع البرامج لجهاز Open Pandora أيضًا. مع ذلك، ونظرًا لعدم توفر أدوات برمجة لنظام Windows، يتم تنفيذ نصف عملية التجميع على نظام Windows، والنصف الآخر على الجهاز نفسه. منذ الإصدار 10، يقوم بيئة التطوير المتكاملة (IDE) ببناء الحزم مباشرةً على نظام Windows لجهاز Pandora.
يمكن للإصدار 8.230 والإصدارات الأحدث تجميع البرامج لأجهزة Web-OS مثل Palm Pre دون الحاجة إلى أجهزة إضافية أو عضوية في برنامج المطورين. أُضيفت ميزة دعم HP TouchPad في سبتمبر 2011 عبر تحديث على الويب.
أضاف الإصدار 10.057 دعمًا لإنشاء حزم التطبيقات التي تعمل على أجهزة Android .
يأتي برنامج GLBasic مزودًا بالعديد من الأمثلة.
النشر الإلكتروني
يمكن تحميل التطبيقات المُنشأة باستخدام لغة GLBasic إلى متجر تطبيقات Apple ، ومتجر Google Play ، وكتالوج تطبيقات HP ؛ وكلها تتطلب حساب مطور. وتختلف تكاليف المطور ومستوى مراجعة ما قبل النشر باختلاف الناشر المُستخدم.
بالنسبة لنظام التشغيل iOS من Apple، تبلغ تكلفة برنامج مطوري iOS 99 دولارًا أمريكيًا سنويًا. تخضع جميع التطبيقات المنشورة على متجر التطبيقات لعملية مراجعة وموافقة لمدة أسبوعين قبل النشر.
بالنسبة لنظام أندرويد، هناك رسوم لمرة واحدة قدرها 25 دولارًا أمريكيًا. التطبيقات المنشورة عبر متجر جوجل بلاي لا تخضع لعملية موافقة وتكون متاحة للجمهور على الفور.
يتطلب النشر عبر كتالوج تطبيقات HP حسابًا مجانيًا. تخضع التطبيقات المعروضة للبيع عبر كتالوج تطبيقات HP لعملية مراجعة لمدة خمسة أيام قبل النشر.
يتوفر أيضًا غلاف برمجي لـ Intel AppUp Centre SDK للغة GLBasic.
سمات
يحتوي برنامج GLBasic على الميزات التالية:
عام
- تُكتب البرامج بلغة BASIC.
- يتم تحويل النصوص والأرقام تلقائيًا بين الأنواع.
- يمكن أن تكون المصفوفات ذات حجم ثابت أو ديناميكي.
- يمكن ضغط الصوت والرسومات والبيانات في ملف واحد.
- يمكن للمستخدمين تعريف أنواعهم الخاصة. يُسمح بالأنواع داخل الأنواع والمصفوفات الديناميكية .
- يمكن تضمين كود C بوضع الكود المناسب بين أمر البدء وأمر الانتهاء، أو يمكن تضمينه أثناء عملية الترجمة. بالإضافة إلى ذلك، بالنسبة لنظام التشغيل Windows، يمكن استدعاء الدوال الموجودة داخل مكتبات DLL.
- بعض الميزات متوفرة فقط في صيغة الكمبيوتر الشخصي.
- يمكن لبرامج نظام التشغيل iOS استخدام OpenFeint.
ميزات ثلاثية الأبعاد
- محرك الرسومات ثلاثية الأبعاد سهل الاستخدام ويحافظ على سرعة معالجة الكائنات
- يمكن تحريك الأشياء
- يعمل مع معظم تنسيقات الرسومات ثلاثية الأبعاد الشائعة
- يمكن أن يكون للأشياء ظلال.
- يتوفر نظام الكيانات كحزمة مكتبة مفتوحة المصدر مجانية
ميزات ثنائية الأبعاد
- يمكن تدوير الصور المتحركة وتغيير حجمها، كما يمكن مراعاة قيم المزج والتلوين.
- يمكن رسم الخطوط والمستطيلات المظللة والأشكال الأخرى.
ميزات الشبكة
- تتوفر مقابس TCP/IP و UDP/IP، بالإضافة إلى مكتبة ذات مستوى أعلى مبنية على مقابس IP.
المترجم
- المترجم متعدد المنصات. مع ذلك، أنت بحاجة إلى جهاز ماك بمعالج إنتل لتجميع كود الآيفون المُولّد، وفقًا لمتطلبات آبل القانونية.
بيئة التطوير المتكاملة
- المحرر مخصص لنظام ويندوز فقط، ولكنه يعمل بسرعة جيدة على معظم الأجهزة الافتراضية. مع ذلك، باستخدام Wine ، يمكنك التجميع لنظام ويندوز فقط. يتوفر دعم Crossover/Mac بدءًا من الإصدار 10.
- يجري العمل على تطوير محرر نصوص تابع لجهة خارجية لأجهزة ماك.
نظام واجهة المستخدم الرسومية
يأتي GLBasic مع شفرة المصدر لـ DDgui، وهو نظام واجهة مستخدم رسومية سهل الاستخدام، مما يسمح لجميع المنصات المدعومة بالحصول على نفس المظهر والشعور عبر جميع المنصات.
بالنسبة لأنظمة التشغيل Windows و Linux و Mac، قامت GLBasic بنقل غلاف Tcl/Tk الذي يوفر مظهرًا أصليًا لنظام التشغيل.
الإصدارات
خضعت لغة GLBasic للمراجعات التالية:
- الإصدار 1.2 - الإصدار الأول من GLBasic (المعروف أيضًا باسم The DiNGS Game Basic sequel) (2000)
- الإصدار 2.4 - أضاف هذا الإصدار دعمًا لأجهزة PocketPC
- الإصدار 3.0 - (الاسم الرمزي: بهيموث) تمت إضافة أنواع
- الإصدار 4.0 - أضاف إمكانية التفاعل مع مكتبات DLL الخاصة بنظام ويندوز، بالإضافة إلى إمكانية تجميع البرامج لجهاز إكس بوكس (في حال تثبيت نظام لينكس عليه). من المفترض أن يعمل أيضًا على نظام لينكس القياسي، مع العلم أنه لا يدعم تسريع الأجهزة، مما يؤدي إلى بطء تشغيل البرامج. (2007)
- الإصدار 5.0 - تم تقديم ميزة التجميع لأجهزة Apple Mac كتطبيق شامل
- الإصدار 6.0 - تم إدخال الأعداد الصحيحة إلى لغة GLBasic لأول مرة. سابقًا، كانت المتغيرات إما أعدادًا عشرية أو سلاسل نصية (ديسمبر 2008).
- الإصدار 7.0 - تم تقديم إمكانية التجميع لأجهزة Apple iPhone و iPod Touch. (أغسطس 2009)
- الإصدار 8.2 - أصبح الآن مجانيًا للمشاريع غير التجارية، ويدعم منصة Open Pandora، ويدعم أجهزة iPhone/iPad (أغسطس 2010)
- الإصدار 9.0 - تم تقديم إمكانية التجميع لنظام التشغيل Palm WebOS (Palm Pre، Palm Pixi). (مارس 2011)
- الإصدار 10.057 - تم تقديم إمكانية التجميع لنظام Android
- الإصدار 10.109 - تمت إضافة دعم لأجهزة WebOS اللوحية مثل HP TouchPad
- الإصدار 11.0 - تمت إضافة دعم HTML5
- الإصدار 12 - منفذ HTML5 محسّن، مكتبة واجهة المستخدم الرسومية الأصلية (يناير 2014)
- الإصدار 14* - منصات أخرى مثبتة الآن كإضافات، مُعَدِّل التردد، تحسينات في تصحيح الأخطاء (أغسطس 2015) *تم تخطي الإصدار 13
- الإصدار 14 - تحديث: يقدم دعمًا لبروتوكول IPv6 في أوامر الشبكة، وتم تحديث مكتبة libPNG (أكتوبر 2016)
- الإصدار 15 - "يونيكورن"، خيارات تصحيح الأخطاء محسّنة، إضافة خطوط TrueType (نوفمبر 2017)
- الإصدار 16 - متوفر عبر Steam ، مُجمِّع C++ مُجدَّد، دعم Windows x64 (مارس 2019)
نموذج التعليمات البرمجية
مرحبا بالعالم
هذا تعليق // اطبع عبارة "Hello World" على الشاشة عند الموضع 0,0 (أعلى اليسار) اطبع "مرحباً بالعالم"، 0,0 // تبديل المخزن المؤقت الخلفي والشاشة المرئية، وتجهيز المخزن المؤقت الخلفي للعرض التالي شاشة العرض // انتظر حتى يتم الضغط على مفتاح انتظر المفتاح
نطاق محدود للبرمجة الكائنية
مع الإصدار 8، أضافت لغة GLBasic أوامر البرمجة الكائنية الأساسية إلى أمر TYPE. يسمح هذا للهياكل بالوصول إلى نفسها (باستخدام الأمر 'self') واحتواء الدوال داخل أنواعها (TYPEs).
اختبار بسيط للبرمجة الكائنية التوجه
النوع: TVec س؛ ص؛ ع دالة فارغة: self.x = 0; self.y = 0; نهاية الدالة
دالة إضافة: v AS Tvec شركة ذاتي.س، vس شركة ذاتي.ي، في شركة ذاتي.z، vz نهاية الوظيفة نوع النهاية
LOCAL vec AS Tvec, vec2 AS Tvec
vec.null() vec.x=50 vec2.x = 100 vec.add(vec2)
يمكن للإصدار 8 تشفير وفك تشفير السلاسل باستخدام خوارزمية Blowfish ذات 128 بت .
انظر أيضاً
- SdlBasic ، لغة BASIC مُفسَّرة لـ GP2X
- Basic4GL
- مشروع فينيكس، لغة مُفسَّرة تهدف إلى أن تكون أسهل في التعلم من لغة C++
- DarkBASIC Professional ، مُجمِّع لغة BASIC يعمل على نظام Windows فقط
مراجع
- تستند هذه المقالة إلى محتوى مأخوذ من GP2X wiki ، وهو متاح بموجب شروط GFDL.
روابط خارجية
- الموقع الرسمي

- المنتدى الرسمي
- ألعاب GP2X مكتوبة لمسابقة GLBasic/gp2x.de لعام 2008
- دليل مرجعي للغة الخارجية
- دليل مرجعي للغة الرسمية الخارجية (باللغة الإنجليزية)
- ويكي GLBasic
- واجهات برمجة التطبيقات
- مترجمات لغة بيسك
- مترجمو لغة BASIC
- عائلة لغات البرمجة الأساسية
- برامج تطوير ألعاب الفيديو
- تطوير ألعاب الفيديو
- بيئة تطوير ألعاب الفيديو
