تطوير واجهة المستخدم الرسومية لنظام التشغيل Linux
-
09-06-2019 - |
سؤال
لدي مشروع كبير لواجهة المستخدم الرسومية وأرغب في نقله إلى Linux.ما هو الإطار الموصى باستخدامه لبرمجة واجهة المستخدم الرسومية في Linux؟هل إطارات العمل مثل KDE/Gnome قابلة للاستخدام لهذا الهدف أم أنه من الأفضل استخدام شيء أكثر عمومية بخلاف X؟
أشعر أنني إذا اخترت أحد Gnome أو KDE، فأنا أغلق السوق أمام جزء كبير من سوق Linux الذين اختاروا واحدًا على الآخر.(نعم أعلم أن هناك تداخل)
هل هناك طريقة أفضل؟أم هل يجب علي إنشاء تطبيقين كاملين لواجهة المستخدم الرسومية للحصول على تغطية تصل إلى 100% تقريبًا؟
ليس من الضروري أن يكون لديك حل مشترك بين الأنظمة الأساسية يعمل أيضًا على Win32.
المحلول
قد يكون أفضل رهان هو نقله إلى مكتبة عناصر واجهة المستخدم عبر الأنظمة الأساسية مثل wxWidgets, ، والذي من شأنه أن يمنحك إمكانية النقل إلى أي نظام أساسي يدعمه wxWidgets.
من المهم أيضًا التمييز بين مكتبات Gnome وGTK، وكذلك مكتبات KDE وQt.إذا كتبت التعليمات البرمجية لاستخدام GTK أو Qt، فمن المفترض أن تعمل بشكل جيد لمستخدمي أي بيئة سطح مكتب، بما في ذلك تلك الأقل شهرة مثل XFCE.إذا كنت تستخدم مكتبات أخرى خاصة بـ Gnome أو KDE للقيام بمهام غير متعلقة بالأدوات، فسيكون تطبيقك أقل قابلية للتنقل بين بيئات سطح المكتب.
نصائح أخرى
تعمل تطبيقات Gnome على أجهزة سطح مكتب KDE والعكس صحيح؛لن يتم قفل أي شخص.بقدر ما تذهب مجموعات الأدوات، فهي ذاتية إلى حد ما.جميع مجموعات الأدوات مشتركة بين الأنظمة الأساسية إلى حد ما.إذا لم تكن مفتوح المصدر، فإن GTK+ سيكون الخيار الأرخص، حيث أن Qt مجاني فقط للاستخدام مفتوح المصدر، في حين أن GTK+ هو LGPL.
هل فكرت في استخدام مونو؟تعمل برامج مثل Paint.NET بشكل رائع ضمن أنظمة Linux وWindows.