Follow me on Twitter

الأحد، 17 أغسطس 2014

بناء تطبيقات الهواتف الذكية باستخدام لغة Python وأداة SL4A


السلام عليكم



ما هى SL4A .. وما دورها فى مجال تطبيقات الهواتف بلغة بايثون ..


من المعلوم أن اللغة الأساسية الذى يعتمدها أندرويد فى كتابة تطبيقاته هى لغة جافا .. لكن ذلك لن يمنعك من كتابة تطبيقاتك بلغات أخرى ..



حين تتحدث عن استخدام لغة بايثون Python فى تطبيقات الهواتف فلا يجب أن تقدم الأفضلية لأداة عن أخرى .. فلكلٍ مستخدميها، ولكل أداة هدف صممت من أجله .



أولى الأدوات التى سنتحدث عنها هى Scripting Layer for Android أو ما تعرف اختصارا بـ SL4A



أداة SL4A هى عبارة عن تطبيق مفتوح المصدر تمكنك من كتابة برامج بلغات برمجة مفسرة Interpreted Languages لتعمل على أندرويد، فهى بمثابة الوسيط و"Layer" بينك وبين أجهزة أندرويد بما تملكه من API تسهل عليك التعامل والتفاعل مع أجهزة أندرويد.



تعتبر SL4A سهلة التنصيب .. ولا تحتاج لأن يكون الجهاز فى حالة root لاستخدامها



اللغات التى تدعمها SL4A هى بايثون Python ، روبى Ruby، بيرل Perl، جافاسكربت JavaScript، Lua ،BeanShell ،و Tcl .



ما الذى يجعل SL4A مختلف "مترجمة من المقال":



لكى تكتب تطبيقات تعمل على أندرويد فلن تجد أفضل من SL4a لما تقدمه لك من مميزات ومرونة، فالبدائل تركز على كتابة تطبيقاتك كـ native Apps -بعضها يفعل ذلك جيدا- .

كمثال ، فى kivy .. يمكنك إنشاء التطبيق بواسطة بايثون ليعمل على العديد من أنظمة التشغيل المكتبية والهواتف الذكية (مثل أندرويد)، لكن لكونه موجه لمنصات متعددة فإنه لن يتعامل بشكل مباشر مع API الخاصة بالأندرويد لذلك لن يمكنك الإستفادة من جميع المميزات المتواجدة بالهاتف. أما مع أداة SL4A فتم تصميمها بحيث تكون أكثر تكاملا مع نظام التشغيل أندرويد.



تسمح لك أداة SL4A بتحزيم برنامجك كملف Apk ونشره على متاجر أندرويد .. لكنه يظل خيارا لك .. فمسألة التحزيم تم تقديمه كخيار فضلا على أن يكون هدفا .. فأغلب ما يُكتب بلغة بايثون عبارة عن سكربتات تستخدم لأغراض محددة وعادة لا يتم نشرها فى المتاجر .. فما تحتاجه -الهدف- هو تمكينك من كتابة عدة أسطر من الأكواد بلغة بايثون لأداء غرض محدد وحفظها وتشغيله متى أردت.



لبدء التعامل مع SL4A ولغة البرمجة التى تريدها -بايثون فى حالتنا-:

قم بالدخول على صفحة Downloads ،وقم بتحميل آخر إصدار لـ :

1- SL4A

2- Python for Android "Py4A"

تفتح Python for Android لتضغط على Install وتقوم بتحميل نسخة البايثون، ثم تفتح SL4A لتعرض قائمة Interpreted الخاصة باللغات المضافة وتتأكد من تواجد حزمة بايثون ورقم إصدارها









رأيى : تحدث الكاتب -فى الفقرة المترجمة- عن إطار kivy الذى يستخدم فى عمل Native Apps موجهة لمنصات متعددة، وتعامل معها وكأنها عيب لكن من ينسى أن جافا تعمل على JVM وتستطيع أن تكتب بها برنامج احترافى موجه لمنصات متعددة .. إذن الأمر يجب أن يُنظر له من وجهة نظر هل تم استيفاء متطلبات المبرمج من خلال تلك الأدوات ليكتب برنامج احترافى أم لا !!