تعرف على لغات البرمجة التي تمكنك من انشاء تطبيقات للهواتف الذكية والفرق بينها

مواضيع مفضلة

الثلاثاء، 27 يونيو 2017

تعرف على لغات البرمجة التي تمكنك من انشاء تطبيقات للهواتف الذكية والفرق بينها



الجميع منا يستخدم الموبايل بشكل يومي ويقوم بتحميل العديد من التطبيقات التي يستخدماه دائما سواء تطبيق للترجمة مثلا أو تطبيق للمحادثات مثل الواتساب وغيره او تطبيق عليه محتوى لتعلم البرمجة أو غيره من التبيقات سواء هاتفك كان أندرويد أو أيفون فكل منا يستعمل التطبيقات على الهاتف بشكل يومي لا غنى عنه، وكثير إذا كنت مهتم بالبرمجة قد تسأل  نفسك ما هي اللغات التي تقوم بصناعة هذه التطبيقات العملاقة والجيدة التي تعجبك كثيرا، وربما قد تقول في نفسك ما هي اللغات البرمجية السيئة التي صنعت هذا التطبيق اللعين الذي لا يعمل على هاتفي !!
ونحن في هذه التدوينة نود اطلاعك على اللغات البرمجية التي تصمنع تطبيقات الهواتف الذكية وما الفرق بين هذه اللغات.

في البداية عزيزي المبرمج أو من تهتم بالبرمجة أو تريد الدخول في مجال برمجة الأندرويد نريد أن نحيط بك علما ان لغات البرمجة تنقسم إلى قسمين وهما:
1- لغات برمجة تسمى بلغات أصيلة أو native
2- لغات برمجة تسمي بـالغير أصيلة أو hybrid

أولا اللغات الأصيلة native programming language:

هذا النوع من اللغات البرمجية يسمى بذلك لأنه عبارة عن لغة برمجة تم كتابتها وابتكارها لأداء مهمة معينة وهي برمجة تكبيقات الهواتف الذكية سواء أيفون أو أندرويد وأبرز هذه اللغات هي لغة سويفت (swift) وهي لغة مشهورة لبرمجة النطبيقات لهواتف الأيفون والأيباد كما انها تثقوم أيضا ببرمجة برامج لأجهزة الماك ويوجد أيضا لغة أخرى تعمل في هذا الحق الخاص بأجهزة الماك والأيفون وهي لغة c-object.
أما اللغات التي تقوم ببرمجة هواتف الأندرويد هي لغة الجافا وهذه اللغة الرائعة التي تدخل في أغلب تطبيقات الهواتف الأندرويد كما انها أيضا تدخل في صناعة الألعاب في هذه الهواتف.

ثانيا اللغات الغير أصيلة hybrid programming language:

وهذه اللغات هي عبارة عن لغات برمجية قد أنشأت لأداء مهام وأغراض غير برمجة تطبيقات الهواتف ولكن بدء المبرمجين في استعمالها لبرمجة تطبيقات الهاوتف وتتمثل في اللغات التي أنشأت لتصميم وبرمجة الويب مثل html5, و css وهاتان اللغتان مستعملتان في تصميم الويب بجانب لغة javascript حيث هذه اللغات الثلاث تستعمل في تصميم الويب.
ويوجد أيضا بعض الكمتبات التي قد بنيت على لغة الجافا سكريبت لبرمجة الموبايل مثل jquery mobile , ومكتبة تيتانيوم ومكتبة meteor وأيضا منصة phonegap، وغيرها من أطر العمل هذه ويمكنك الاطلاع على هذه المقالة لمزيد من المعرفة عن هذه المنصات استخدام الجافا سكريبت لبرمجة الهواتف الذكية .

والأن ربما تريد أن تعرف عزيزي المبرمج ما هي الفروق البرمجية بين هذين النوعين من اللغات ؟
أولا تتميز اللغات البرمجية الأصيلة أو المساه بـ native بمميزات عديدة وهامة وتتمثل في:

1-  تتميز هذه اللغات بالأداء العالي والجيد الذي تعمل به
2- هذه اللغات قادرة على الاستفادة القصوى بمميزات الجاهز الذي تعمل عليه وبامكانياته مثل الرامات والمعالج حتى يعمل التطبيق بشكل أفضل.
3- المبرمج الذي يتقن هذه اللغات ويعمل بها يكون أجره أعلى من المبرمج الذي يعمل بلغات أخرى في مجال برمجة تكبيقات الهواتف
4- تتيح لك هذه اللغات امكانية عمل أنمبشن وإضفاء بعض المؤثرات الجمالية على تطبيقك بجودة عالية وبسهولة
5- تتميز هذه اللغات بأنها قادرة على بناء التطبيقات المعقدة التي تحتاج لعمل ضخم والتي سيعمل عليها عدد كبير من المستخدمين حيث تظهر جودتها هنا في عدم وجود تعطيلات كثيرة بالتطبيق وغيرها من هذه المشاكل.
6- عند تحديث نظام التشغيل الذي يعمل على الهاتف لن تجد مشاكل في تشغيل تطبيقك على هذا الهاتف حيث يتوافق التطبيق مع التحديث الجديد بسرعة ولن يتعطل به شئ
7- إذا أردت انشاء تطبيق أكثر ديناميكية فإن هذه اللغات هي المناسبة لك لأنها لغات برمجة سريعة كما هو الحال بالضبط في برمجة الويب فإن اللغات الرمجية تختلف من لغة للغة أخرى بحسب سرعتها وجودتها
8- إذا أردت تطوير التطبيق الذي أنشأته في مرحلة تالية بحيق يشمل مميزات أكثر ويتوافق مع عدد مستخدمين أكبر من السابقة فهذه اللغات تتمدد معك وتتيح لك امكانيات عديدة لتطوير مشروعك ويعمل بكفائة عالية

ثانيا المميزات التي تتميز بها لغات hybrid programmin language:

1- تمكنك هذه اللغات والمنصات من كتابة الكود البرمجي مرة واحدة فقط والعمل على أكثر من منصة، فنحن نجد في النوع السابق من اللغات البرمجية أنه لكل منصة عمل لها اللغة الخاصة بها فمثلا الأندرويد يستخدم لغة الجافا في برمجة التطبيقات بينما الأيفون والايباد يستخدم لغة swift، أما هذا النوع من اللغات يعتمد على كتابة الكود البرمجي مرة واحدة ويمكن العمل به على أكثر من مصة حيث أن 80% من كود التطبيق يظل ثابت وتقوم بتغيير بعض السطور البرمجية في الكود من أجل أن يتوافق مع المنصة التي سيعمل عليها التطبيق وهذا يوفر لك الكثير من الوقت والجهد.
2- هذه المنصات مناسبة للتطبيقات البسيطة والغير معقدة

ويعب هذه المجموعة من المنصات أنها عدة أشياء منها:
1- الأداء البرمجي الذي تقدمه هذه اللغات أقل بكثير من الأداء الذي ستأخذه من اللغات الأصيلة
2- تستخدم هذه اللغت في انشاء التطبيقات البسيطة ذات الصفحة الواحدة وعند القيام بعمل تطبيق معقد ستواجهك الكثير من المشاكل والعراقيل كما أن الأداء سيصبح سيئ
3- هذه اللغات ليست قادرة على استغلال القدرة الكاملة للهاردوير من رامات ومعالك مما يجعلها بطيئة في عملها على عكس ما هو الحال في اللغات الأصيلة او native language
4- يعيب هذه المنصات أيضا المشاكل التي قد تحدث في عمل التطبيق عند تطوير نظام التشغيل حيث من المحتمل ألا توافق التحديثات وتظهر العديد من المشاكل كما أنها تأخذ وقت حتى تتلائم وتتوافق مع التحديث الجديد

ربما قد تسأل نفسك الأن ألا يوجد مفر من تعلم لغة الجافا التي قد تبدو لك ؟ أو مثلا تخاف من الصدام أمام لغة swift !!!
إليك عزيزي المبرمج منصة عمل جديدة ربما قد تكون حل لك..
1- مكتبة react native: أغلب المبرمجين يعلمون لغة الجافا سكريبت وتطورها الصاعد في السنوات الماضية والمكتبات الهائلة التي قد بنيت على هذه اللغة، وايضا الجميع يعلم مكتبة react التي طورها فريق عمل فيس بوك لتدخل في مجال تصميم الويب وانشاء المواقع وتطوير واجهات المستخدم، وأيضا مكتبة react native تم تطويرها من قبل فريق عمل الفيسبوك ولكن لتعمل على تطوير وانشاء تطبيقات الهاوتف الذكية للمنصات المختلفة سواء android, ios, windows mobile.
2- مكتبة xamain native: إذا كنت عزيزي المبرمج ممن تعلم لغة c# ويريد الدخول في عالم تطوير تطبيقات الهواتف الذكية فإن شركة مايكروسوفت قد طورت لك هذه المنصة من أجل تطوير التطبيقات لمنصات الهواتف الذكية من خلال لغة c# حيث أصبح بامكانك أن تطور من خلال هذه اللغة تطبيقات على نظام تشغيل ios الذي يعمل على هواتف الأيفون والأيباد كما تمكنك من انشاء التطبيقات لتعمل على نظام الأندرويد وكذلك أيضا نظام windows mobile.

وأهم المميزات التي تقدمهما منصتين العمل هاتين هي:
1- تقدم لك نفس الأداء الذي تقدمه لك اللغات الأصيلة
2- تقوم بالاستفادة بالامكانية الكاملة التي يتميز بها الهاردوير بالجهاز الذي يعمل عليه التطبيق لذلك يظهر التطبيق بأداء جيد
3- تتميز منصة xamarin native بالأخص بأنها تمكنك من كتابة الكود البرمجي مرة واحدة ويعمل على جميع المنصات ولا تحتاج إلى كتابة كود لكل منصة يعمل عليها التطبيق
4- الكثير من التطبيقات الجيدة والرائعة الموجودة في متجر جوجل بلاي وايضا متجر أبل قد تم برمجتها باستخدام أحد هاتين المنصتين خاصة منصة react native.

الأن قد أصبح لك عزيزي المبرمج عدد من الخيارات إذا كنت تريد الدخول في عالم برمجة الهواتف الذكية حيث يمكنك اختيار أي لغة برمجة من اللغات السابقة للبدء في برمجة التطبيق ولكن يجب عليك عزيزي المبرمج أن تلم بمعلومات كثيرة عن منصة العمل التي ستعمل عليها سواء ios, android, windows mobile حيث سيسهل البدء في برمجة التطبيق بمجرد أن تفهم كيف يتم التعامل مع نظام التشغيل.

المشاركة على واتساب متوفرة فقط في الهواتف