جنوستيب

جنوستيب
المطور(ون)مطورو GNUstep
إصدار مستقر
إصدار 2.9.2، الإصدار الأساسي 1.30.0، واجهة المستخدم الرسومية 0.31.1، الإصدار السابق 0.31.0 / 6 يونيو 2024 ؛ منذ 4 أشهر (2024-06-06)
معاينة الإصدار
على مستودع برامج GitHub
مستودع
  • github.com/gnustep
مكتوب فيObjective-C
نظام التشغيلمتعدد المنصات
يكتبمجموعة أدوات واجهة المستخدم
رخصةرخصة جنو العمومية العامة للتطبيقات
رخصة جنو العمومية الصغرى للمكتبات.
موقع إلكترونيwww.gnustep.org

GNUstep هو تطبيق برمجي حر لإطارات Cocoa ( OpenStep سابقًا ) Objective-C ، ومجموعة أدوات واجهة المستخدم ، وأدوات تطوير التطبيقات لأنظمة التشغيل الشبيهة بـUnix و Microsoft Windows . وهو جزء من مشروع GNU .

يتميز GNUstep بوجود بيئة تطوير متكاملة متعددة المنصات وموجهة للكائنات . وبصرف النظر عن واجهة Objective-C الافتراضية ، يحتوي GNUstep أيضًا على روابط لـ Java و Ruby [2] و GNU Guile و Scheme [3] . يتتبع مطورو GNUstep بعض الإضافات إلى Cocoa من Apple لتظل متوافقة. جذور واجهة تطبيق GNUstep هي نفسها جذور Cocoa: NeXTSTEP و OpenStep . وبالتالي فإن GNUstep يسبق Cocoa، الذي ظهر عندما استحوذت Apple على تقنية NeXT ودمجتها في تطوير نظام التشغيل Mac OS X الأصلي ، بينما كان GNUstep في البداية جهدًا من جانب مطوري GNU لتكرار ميزات NeXTSTEP الطموحة تقنيًا والصديقة للمبرمجين.

تاريخ

بدأت GNUstep عندما أراد بول كونز وآخرون في مركز Stanford Linear Accelerator Center نقل HippoDraw من NeXTSTEP إلى منصة أخرى. وبدلاً من إعادة كتابة HippoDraw من الصفر وإعادة استخدام تصميم التطبيق فقط، قرروا إعادة كتابة طبقة كائن NeXTSTEP التي يعتمد عليها التطبيق. كانت هذه هي النسخة الأولى من libobjcX . وقد مكنتهم من نقل HippoDraw إلى أنظمة Unix التي تعمل بنظام X Window System دون تغيير سطر واحد من مصدر التطبيق الخاص بهم. بعد إصدار مواصفات OpenStep للجمهور في عام 1994، قرروا كتابة objcX جديد يلتزم بواجهات برمجة التطبيقات الجديدة. أصبح البرنامج معروفًا باسم "GNUstep". [4]

هندسة البرمجيات

يوضح مكونات البرامج الخاصة بمجموعة سطح مكتب Linux مثل خادم العرض أو مكتبات عناصر التحكم في الرسومات أو الأصداف الرسومية .

تقديم

يحتوي GNUstep على مجموعة من عناصر التحكم الرسومية المكتوبة بلغة البرمجة Objective-C.

تتكون واجهة المستخدم الرسومية (GUI) لبرنامج GNUMail من عناصر تحكم رسومية. ويتعين على برنامج GNUMail التفاعل مع نظام النوافذ ، مثل X11 أو Wayland ، ويتعين تقديم واجهة المستخدم الرسومية الخاصة به . وتوفر الواجهة الخلفية لبرنامج GNUstep مجموعة صغيرة من الوظائف التي تستخدمها مكتبة واجهة المستخدم للتفاعل مع نظام النوافذ الفعلي . كما تحتوي على محرك تقديم يحاكي وظائف Postscript الشائعة . وتوفر الحزمة gnustep-back الواجهة الخلفية التالية:

  • القاهرة – الواجهة الخلفية الافتراضية باستخدام مكتبة الرسومات القاهرة ثنائية الأبعاد.
  • winlib – البرنامج الخلفي الافتراضي لأنظمة Microsoft Windows. إصدارات القاهرة و Windows API .
  • art – واجهة خلفية قديمة (غير مستخدمة) على أنظمة تشبه يونكس. تستخدم مكتبة Libart للرسومات ثنائية الأبعاد المستندة إلى المتجهات والتي تشبه PostScript .
  • xlib – واجهة خلفية قديمة (غير مستخدمة) لـ X11.

النماذج

يرث GNUstep بعض مبادئ التصميم المقترحة في OPENSTEP (GNUstep يسبق Cocoa، ولكن Cocoa يعتمد على OPENSTEP) بالإضافة إلى لغة Objective-C .

واجهات أخرى

بالإضافة إلى واجهة Objective-C، تقوم بعض المشاريع الصغيرة تحت مظلة GNUstep بتنفيذ واجهات برمجة تطبيقات أخرى من Apple:

اعتبارًا من فبراير 2020 ، لا توجد مشاريع تبني لغة برمجة Swift ضد بيئة GNUstep Objective-C.

التطبيقات

فيما يلي بعض الأمثلة للتطبيقات المكتوبة أو المنقولة إلى GNUstep. [8]

مكتوبة من الصفر

تم نقله من NeXTSTEP أو OPENSTEP أو macOS

شوكات GNUstep

قدرات الفصل

مجموعة الأساس

توفر مجموعة الأساس فئات أساسية مثل فئات الغلاف وفئات بنية البيانات.

مجموعة التطبيقات

توفر مجموعة التطبيقات فئات موجهة حول إمكانيات واجهة المستخدم الرسومية .

انظر أيضا

مراجع

  1. ^ تم نقله من NeXTSTEP . يمكن للإصدارات الحديثة، عند بنائها باستخدام libobjc2، استخدام إصدار أحدث تم نقله من Mac OS X Snow Leopard .
  2. ^ "GNUstep Developer Tools - RIGS". www.gnustep.org . تم الاسترجاع في 10 أبريل 2018 .
  3. ^ تم أرشفة GScheme في 2005-12-18 على موقع Wayback Machine
  4. ^ "GNUstep History". gnustep.made-it.com . تم الاسترجاع في 10 أبريل 2018 .
  5. ^ "gnustep/libs-boron: البورون هو الذرة التي تأتي قبل الكربون". GitHub . GNUstep. 23 مارس 2019.
  6. ^ "gnustep/libs-corebase". GNUstep. 19 نوفمبر 2019.
  7. ^ "gnustep/libs-quartzcore". GNUstep. 11 ديسمبر 2019.
  8. ^ "تصنيف:تطبيقات - GNUstepWiki". wiki.gnustep.org . مؤرشف من الأصل في 23 مارس 2021 . استرجاع 10 أبريل 2018 .
  9. ^ "GNUstep Objective-C Runtime 2.0". GitHub . ملاحظة: يحتوي مشروع WinObjC التابع لشركة Microsoft على نسخة سهلة الاستخدام من هذه المكتبة تتضمن حلاً لمشكلة الربط التدريجي.
  • الموقع الرسمي
  • مشروع تطبيق GNUstep
  • مقابلة أجريت عام 2003 مع مطور GNUstep نيكولا بيرو محفوظ في 2007-01-07 على موقع Wayback Machine
  • مقابلة أسبوعية مع جريجوري كاسامينتو وريكاردو موتولا من GNUstep حول البرمجيات الحرة ومفتوحة المصدر
  • GNUstep على Debian وFreeBSD وMacPorts
  • بيئة سطح المكتب NEXTSPACE، المستندة إلى GNUstep
Retrieved from "https://en.wikipedia.org/w/index.php?title=GNUstep&oldid=1247047827"
Original text
Rate this translation
Your feedback will be used to help improve Google Translate