بسم الله الرحمن الرحيم
قديما كان عصر الصراع فى مجال صناعة البرمجيات يتوقف على لغات البرمجة
ماهى اللغة التى تستخدمها ؟
سؤال تسمع له اكثر من 2000 اجابة مختلفة
مع التطور اصبحت لغات القمة هى فى حدود عشرة لغات برمجة تتنافس فيما بينها.
مثل هذه المعركة بدات مؤخرا فى الحدوث على ساحة نظم التشغيل حيث بدا يظهر اكثر من نظام تشغيل مسيطر
ومن هناك اصبحت الخيارات التكنولوجية اكثر تعقيدا حيث ينبغى الاجابة على الاسئلة التالية
1 - ماهو نظام التشغيل المستخدم ؟
2 - ماهى لغة البرمجة المستخدمة ؟
3 - ماهى بيئة البرمجة المستخدمة ؟
4 - ماهى المكتبات المستخدمة ؟
5 - ماهى البرامج المساعدة المطلوبة ؟
خمسة اسئلة ضرورية لتحديد البيئة الخاص بالتطبيق وهذه البيئة تشمل
1 - بيئة العمل لدى المستخدمين
2 - بيئة الانتاج لدى المطورين
ولان الانتشار فى السوق هو مطلب جميع الشركات بدا يظهر مفهوم البرمجة لاكثر من نظام تشغيل وانتشر هذا المفهوم بقوة فى الفترة الاخيرة
اما اتاح لدينا العديد من الخيارات لعمل تطبيقات متعددة المنصات
بعض هذه الخيارات مرتبط بلغة برمجة معينة وبعضها عام يصلح للاستخدام مع عدد من اللغات
من اللغات الشهيرة لعمل برمجيات متنقلة Portable هى لغة Java حيث يتم تطوير التطبيق وترجمته مرة واحدة ومن ثم تشغيله فى اى نظام تشغيل مدعوم
من قبل الجافا التى تدعم جميع انظمة التشغيل الشهيرة بمعنى
(نسخة واحدة لجميع انظمة التشغيل)
فى الجانب الاخر فان لغة ++C تتميز بوجود العديد من المكتبات التى تتيح عمل تطبيقات متنقلة باستخدامها ومن هذه المكتبات واشهرها
1 - wxWidgets
2 - Qt
وبالتاكيد فان لغة سى تختلف عن الجافا فى انه يشترط اعادة ترجمة البرنامج لكل منصة على حده بمعنى
(نسخة مستقلة لكل نظام تشغيل )
ولعل ذكر لكل من wxWidgets و Qt رغم ان هناك الكثير غيرهم يرجع الى التالى
1 - هم الاشهر والاكثر استخداما
2 - يمكن استخدامهم مع لغات اخرى مفتوحة المصدر
حيث يمكن استخدام wxWidgets و Qt مع اللغات الشهيرة
1 - Python
2 - Ruby
وعلى جانب اخر يوجد لغات برمجة اخرى تدعم امكانية عمل تطبيقات متنقلة ولكن بدون الاعتماد على المكتبات الشهيرة مثل Qt و wxWidgets
جيث تم عمل مكتبات جديدة مخصصة لتلك اللغات وتم بنائها من الصفر
ومن امثلة هذه اللغات Visual xHarbour حيث يتيح عمل تطبيقات تعمل على كل من Windows و Linux وذلك باعادة الترجمة وتقديم نسخة لكل منصة
وايضا هناك العديد من اللغات الاخرى التى تدعم عمل تطبيقات متنقلة مثل Real Basic على سبيل المثال
ومنا هنا نصل الى ان الخيارات المتاحة لعمل تطبيقات متنقلة اصبحت خيارات عديدة مما يعنى ان الطلب على تلك المميزات اصبح بلا شك مطلب عصرى خاصة
للشركات التى تقوم بعمل برمجيات عامة او التى تقدم برمجيات لعملاء لاتعرف النظام التشغيل المتوفر لديهم هل هو Windows ام Linux ام MAC وهكذا
والان اذا كنت لم تبدا بعد فى الدراسة لاحد هذه المنتجات فانى انصحك بان تتاملها جيدا وان تطلع عليها بدقة لتختار مايناسبك فى حياتك المهنية المستقبلية
والله الموفق
( منقول من arab-team2000 )
hildm gyhj hgfvl[m