تصميم تطبيقات أندرويد بدون لغة برمجة


يريد الكثير منا تصميم تطبيقات لنظام الأندرويد، لكن بسبب التعقيد يخاف الكثير الدخول في هذا المجال، سواء كان سبب هذا التعقيد هو لغة البرمجة Java نفسها، أو صعوبة التصميم باستخدام برنامج Eclipse.
سنتعلم في هذا المقال برمجة تطبيقات أندرويد بدون الحاجة إلى أي لغة برمجة، كل مانحتاجه هو القليل من المفاهيم البسيطة مع اتباع الخطوات في هذا المقال، وسنتمكن من إنشاء تطبيقنا الأول خلال دقيقتين !
ماهي طرق إنشاء أي تطبيق أندرويد بشكل عام ؟
لإنشاء أي تطبيق أندرويد لدينا طريقين، إما باستخدام لغات برمجة، أو باستخدام منصات تمكننا من تصميم تطبيقات بدون الحاجة إلى أي لغات برمجة
• الطريق الأول : باستخدام لغات البرمجة :
1- باستخدام برنامج Eclipse المعروف، يتطلب ذلك إتقان لغة برمجة Java.
2- باستخدام برنامج Xamarin، يتطلب ذلك إتقان لغة برمجة #C.
3- باستخدام Android NDK، يتطلب ذلك إتقان لغة برمجة ++C.
4- باستخدام Titanium Mobile Accelerator أو Phone Gap، يتطلب ذلك إتقان لغة برمجة Java Script.
5- باستخدام kivy، يتطلب ذلك إتقان لغة برمجة Python.
6- باستخدام RhoMobile، يتطلب ذلك إتقان لغة برمجة Ruby.
وهناك أيضاً عدة طرق أخرى، تجدر هنا الملاحظة، يُفضل عند تطوير تطبيقات الأندرويد استعمال لغة برمجة Java، واستعمال لغة برمجة ++C عند الحاجة فقط.
• الطريق الثاني : لاتتطلب لغات برمجة أو أي خبرة سابقة :
1- باستخدام مشروع App inventor .
2- باستخدام مواقع القوالب الجاهزة ( كـ andromo أو appsgeyser )، لايتطلب ذلك أي خبرة مسبقة.
سنتحدث في هذه المقالة عن الطرق التي لا تتطلب لغة برمجة أو خبرة سابقة، سنتكلم عن مشروع App inventor بشكل خاص، ولن نتكلم عن مواقع إنشاء تطبيقات الأندرويد البسيطة كـ andromo أو appsgeyser ، لأن استعمالها في غاية البساطة لكن آفاقه محدودة جداً على المدى البعيد.
عن نفسي، كانت بدايتي في تصميم تطبيقات الأندرويد باستخدام مشروع App inventor، ثم انتقلت الى Eclipse ووجدت سهولة وسلاسة كبيرة، لذا أنصح أي شخص لايوجد عنده فكرة مسبقة عن تصميم تطبيقات الأندرويد بالبدء بمشروع App inventor ثم الاتجاه لاحقاً إلى Eclipse.
ماهو مشروع App inventor ؟
logo
هو برنامج على شبكة الإنترنت بدأت فيه غوغل عام 2010 ثم أوقفته عام 2011 بعد جعله مفتوح المصدر، ليتبناه بعد ذلك معهد MIT الأمريكي .
يتيح هذا المشروع تصميم تطبيقات أندرويد باستخدام واجهة رسومية، فكل مايتطلبه هو سحب وإفلات قطع وتركيبها مع بعضها، يشابه فكرة لغة البرمجة Scratch التي أطلقها معهد MIT ذاته سابقا.
هنا صورة للبرنامج نرى من خلالها تطبيق مبرمج بالكامل بواسطة تركيب الأشكال مع بعضها البعض، دون الحاجة إلى أي لغة برمجة :
app-inventor-for-android-blocks-editor-paintpot
كيفية تنصيب App inventor ؟
قبل البدء، يجب أن يتم تنصيب حزمة Java Development Kit أو اختصاراً JDK :
Oracle website (يجب اختيار النسخة المناسبة لجهازك 32 أو 64 بت)
عندها نميّز طريقتين للعمل على App inventor :
1- الطريقة الأولى :
الذهاب إلى موقع المشروع والعمل مباشرة على الموقع، يتطلب ذلك حساب Gmail ، كما يتطلب اتصالاً دائماً بالإنترنت، وتجدر الملاحظة أن موقع المشروع محجوب من قبل غوغل في سوريا والدول المثيلة، لذلك على القاطنين في تلك الدول استخدام الطريقة التالية في العمل على App inventor.
2- الطريقة الثانية :
تحميل وتنصيب App inventor والعمل عليها بدون الحاجة الى الانترنت، يجب تنفيذ الخطوات التالية :
1- تحميل الملف التالي وفك الضغط عنه :
App inventor2 Offline (الحجم 175 ميغا بايت)
2- قبل إكمال باقي خطوات التنصيب، يجب إعداد بيئة الـ Java بشكل مناسب، وذلك عبر الخطوات التالية :
• الذهاب إلى جهاز الكومبيوتر والضغط على منطقة فارغة بزر الفأرة الأيمن واختيار خصائص.
• اختيار خصائص النظام المتقدمة.
• اختيار تبويب متقدم، ثم الضغط على متغيرات البيئة.
• الضغط على زر جديد (الزر الأعلى).
• إضافة المعلومات التالية بدقة :
اسم المتغير :
قيمة المتغير : (يجب التأكد من إصدار JDK، على سبيل المثال الإصدار الذي لدي 1.7.0)
3- بعد فك ضغط الملف السابق، وبعد فتح الملف نرى عدة ملفات، نقوم بفتح الملفات التالية بالترتيب :
startAIServer.cmd ثم startBuildServer.cmd
4- الذهاب الى متصفح الانترنت ووضع العنوان التالي في المتصفح :
5- الآن ندخل بريد الكتروني للعمل عليه ونقوم بستجيل الدخول، عندها سنشاهد واجهة المشروع الرئيسية، نقوم باختيار اسم لمشروعنا الجديد ونبدأ التصميم.
ماهي أقسام برنامج App inventor ؟
يتكون App inventor من واجهتين :
1- واجهة تصميم شاشة التطبيق (Designer) :
في هذه الواجهة يمكن إضافة مختلف الأدوات، كالأزرار أو الصور أو مربعات إدخال النص، وكذلك التحكم بموضع أي أداة أو زر، كل ماعلينا فعله هو سحب أداة ما وإفلاتها في شاشة التطبيق :
appinventor-0
هنا على سبيل المثال قمت بسحب زر من القائمة اليسرى ووضعته في شاشة التطبيق (قمت بتسميته Button1)، الآن سنبرمج هذا الزر ليقوم بعمل ما.
2- واجهة برمجة التطبيق (Blocks) :
في هذه الواجهة يمكننا برمجة الأدوات والأزرار التي أضفناها سابقاً في واجهة التصميم، نختار من الأعلى قسم Blocks فننتقل إلى واجهة برمجة التطبيق:
appinventor-2
نلاحظ وجود الزر الذي أضفناه سابقاً Button1، وعندما نضغط عليه ستظهر قائمة تظهر لنا الوظائف التي يمكن أن يؤديها هذا الزر، على سبيل المثال قمت باختيار الحدث Click، هذا الحدث يمكننا فهمه عبر هذه الجملة ( عندما يضغط المستخدم الزر Button1 إفعل كذا ) ، وأيضاً نفتح القائمة مرة أخرى ونختار أمراً ما لتنفيذه ( سنبحث عن شكل له تجويف يمكن تركيبه داخل الكتلة البرتقالية ) فمثلاً حسب الصورة، عند الضغط على الزر سوف يتغير لون نص الزر إلى اللون الأحمر.
يمكننا بعد الانتهاء من تصميم وبرمجة تطبيقنا تحميله بصيغة apk وتثبيته على مختلف الهواتف، لنقوم بذلك نضغط على Package for Phone
ثم Download to this computer :
connectto3
وهكذا هي البرمجة باستخدام App inventor .. بمنتهى البساطة، كل ماعلينا فعله هو تركيب الأشكال ببعضها البعض، ونحصل على تطبيقنا الأول !
ماهي النصائح عند البدء بتصميم التطبيقات على App inventor ؟
1- اتباع تعليمات وشروحات البدء في موقع المشروع :
http://appinventor.mit.edu/explore/ai2/tutorials
2- اقتناء كتاب App Inventor Create Your Own Android Apps ( يمكن تحميل نسخة غير مرخصة منه عبر البحث في موقع 4shared.com ).
3- يوفر برنامج App inventor ميزة تصميم التطبيقات وتجريبها بشكل مباشر على الهواتف المحمولة، أنصح بشدة تجريب هذه الميزة عبر اتباع الخطوات التالية:
– بعد فك الضغط عن الملف الذي قمنا بتحميله سابقاً، نقوم بنقل الملف MIT AI2 Companion.apk إلى الهاتف ونقوم بثبيت التطبيق.
– بعد فتح التطبيق يطلب منا إدخال رقم مكون من 6 خانات أو فحص QR code :
screenshot-1389296070049
يجب أن يكون كلاً من الهاتف المحمول والحاسوب المنصب عليه App inventor على نفس الشبكة الداخلية ( كلاهما متصلان بنفس الرواتر ).
لنحصل على ذلك الكود نقوم بالذهاب إلى واجهة برمجة التطبيق (Blocks)، نختار من الأعلى Connect Companion
connectto
سيظهر لنا البرنامج الكود المكون من 6 خانات، نقوم بنقله ووضعه في تطبيق الهاتف المحمول :
connectto2
عندها سيقوم برنامج App inventor بالارتباط مع الهاتف المحمول وتجريب التطبيقات بشكل مباشر تماماً، فمثلاً عند انشاء زر جديد نلاحظ ظهوره على الفورعلى الهاتف المحمول ونقوم بتجربة عمله بشكل مباشر.
(ملاحظة: في كل مرة سيقوم البرنامج بإعطاء كود مختلف)
تابع القراءة ..
برمجة ألعاب الأندرويد:

سنتحدث عن تصميم ألعاب الأندرويد بشكل مختصر،وقلت بشكل مختصر لأنك اذا وصلت androidgamedev
إلى هذه المرحلة فهذا يعني أنك أصبحت محترفاً و لم تعد تحتاج الرجوع إلى هذا المقال، فتصميم الألعاب يتطلب خبرة واحترافية.
يختلف تصميم الألعاب عن البرامج من ناحية الجهد ولغات البرمجة المستخدمة وكذلك البرامج المستخدمة، أظن أن العناء سوف يُنسى حين تشاهد أرباحك الأولى من تصميم الألعاب !
يمكن تصميم الألعاب باستخدام لغة Java وعلى برنامج Eclipse، لكن لن تكون بنفس أداء لغة C++ مثلاً، بشكل عام لألعاب 2D ليست بمشكلة، لكن لألعاب 3D يجب ترك لغة Java.
كمبتدأ أنصحك بالتوجه إما إلى Unity3D، أو إلى AndEngine.
ماهي خيارتنا إذاً؟
1- باستخدام برامج تجارية:
◄Unity3D : برنامج جيد بالنسبة للمبتدأ، يعتمد لغة #C و Java Script.
هناك دورات مصورة على YouTube لهذا البرنامج، على سبيل المثال :
Unity 3d – Android Game Development Tutorial
◄Unreal Engine : برنامج متقدم ومستواه احترافي، يعتمد لغة UnrealScript وهي لغة خاصة تشبه إلى حد ما لغة Java.
2- باستخدام مكتبات مفتوحة المصدر تعتمد على بيئة ++C:
◄Ogre3D : المكتبة الأفضل والأكثر تقدماً وضخامة.
◄Irrlicht 
◄Linderdaum
3- باستخدام مكتبات مفتوحة المصدر تعتمد على بيئة Java:
◄AndEngine : المفضل عندي لسهولة استخدمه وأداءه العالي بالرغم من اعتماده على بيئة Java.
◄Cocos2D : دورة مصورة من موقع Lynda :
Building and Monetizing Game Apps for Android
أتمنى أن أكون قد وفقت في طرحي لهذا الموضوع بأبسط صورة، وأتمنى أن يكون هذا المقال محفزاً على البداية.
تابع القراءة ..
البدء في برمجة الأندرويد:

أنصحك بالبدء بـ Eclipse لأن أغلب الدورات سوف تعتمد عليه كبرنامجها الافتراضي، لذلك عليك تحميل حزمة تطوير الأندرويد عبر موقع Google :
Android SDKandroiddev4
وبعد أن حصلت على برنامج Eclipse يجب أن نبدأ بتعلم بناء التطبيقات:
1- مشاهدة دورات مصورة:
◄دورات باللغة العربية:
أيضاً من أفضل الدورات العربية دورة الأستاذ عبدالله عيد، يمكن مشاهدتها من Android 101 – YouTube
أو يمكن تحميلها لمشاهدتها لاحقاً:
Android 101 (الحجم 2.9 غيغابايت)
◄دورات باللغة الإنكليزية:
أيضاً هنا لدينا خياران، إما دورات مجانية أو مدفوعة، من أفضل الدورات المجانية وأشهرها على YouTube:
Android Application Development Tutorials
والدورات المدفوعة :
Lynda.com – Android SDK Essential Training
Lynda.com – Android App Development with Java Essential Training
2- الكتب الرقمية:
◄باللغة العربية :
للأسف فإن الكتب العربية المتخصصة ببرمجة الأندررويد قليلة ونادرة، وإن وجدت فإنها لاتغطي الاحتياجات كما تفعل الكتب الإنكليزية، نذكر على سبيل المثال كتاب أندرويد ببساطة ، لكنه أصبح قديماً ولايقارن بمستوى الكتب الإنكليزية.
◄باللغة الإنكليزية:
من أفضل الكتب حسب تجربتي :
Beginning Android 4 Application Development
The Busy Coder’s Guide to Android Development
يتميز الكتاب الأخير بضخامته وشموله لكثير من المواضيع.
3- ملاحظات ومصادر أخرى:
ملاحظة (1):
إن مجرد مشاهدة دورة لايعني أنك أصبحت مطور تطبيقات أندرويد، وإنما عليك وضع هدف من إبداعك والوصول إليه، على سبيل المثال ضع هدفاً لتصميم تطبيق يقوم بتسجيل الملاحظات، أو تطبيق آلة حاسبة، أو تطبيق مسابقة معلومات، وبمجرد وصولك لهذا الهدف تكون قد دخلت في برمجة الأندرويد بقوة، بالتأكيد سوف تواجهك بعض الصعوبات، حاول الاعتماد على المصادر التالية لتجد حلاً لمشكلتك.
ملاحظة (2):
ليس من الصواب تماماً أن تبدأ برمجة تطبيقك من الصفر، يمكنك الاعتماد على عمل الآخرين والاستفادة منه بمشروعك – جزئياً على الأقل – ، على سبيل المثال التعامل مع السيرفرات وإرسال البيانات إليها، أو عرض الصور وتكبيرها بإصبعيتن، ليس عليك كتابة كود لذلك، وإنما استعمال كود جاهز وبذلك توفر الوقت والجهد، هذه هي فكرة المصدر المفتوح، يمكن الاعتماد على المصادر التالية أيضاً للحصول على أكواد جاهزة.
ملاحظة (3):
حاول أن تستفيد من الشبكات الاجتماعية، على سبيل المثال هنا بعض المجموعات على الفيسبوك تحوي عدداً كبيراً من الشباب العرب المميزين، وستجدهم مستعدين لمساعدتك وإرشادك لحل مشاكلك المستعصية:
Ask Syrian Programmers
عبدالله عيد
المصادر:
◄موقع Vogella.com يقدم شروحات متقدمة واحترافية.
◄الموقع الرسمي لتطوير الأندرويد، أنصح بالاعتماد عليه بعد الإلمام جيداً بمفايهم برمجة الأندرويد:
Android Developers – Android.com
يحتوي الموقع على الكثير من الأقسام، أهمها قسم Reference والذي يحتوي الشرح التفصيلي لكل صنف وطريقة موجودة في نظام الأندرويد، يمكنك تحميله للعمل عليه دون اتصال بالإنترنت من خلال SDK Manager الذي قمنا بتحميله سابقاً.
◄موقع Stackoverflow.com، الموقع الأفضل في حل المشاكل التي تواجهك، مهما كانت مشكلتك ابحث عنها في Stackoverflow وستجد الحل.
◄موقع Androidhive.info موقع يحوي أكواد جاهزة لاستخدامها ضمن تطبيقك.
◄موقع Android Arsenal موقع شامل للمكاتب مفتوحة المصدر الخاصة بالأندرويد.
◄تطبيق DevAppsDirect – Demo Market : تطبيق مميز جداً، يحوي مجموعة واسعة من المكاتب مفتوحة المصدر مع إمكانية تجريبها مباشرة على هاتفك المحمول.
◄متجر F-Droid: متجر مشهور و خاص بالتطبيقات المجانية مفتوحة المصدر.
◄محاكي Genymotion الرائع، أنصح باستخدامه بشدة بدلاً عن المحاكي الذي يأتي مع حزمة ADT.
تابع القراءة ..
تعلم لغة برمجة Java :

عندما نقول تعلم لغة Java لانقصد بذلك تعلم كل أوامرها وتفاصيلها الكاملة، فهي لغة ضخمة، لكن أقصد تعلم المفاهيم الأساسية واكتساب بعض المرونة، والباقي سوف تتعلمه بنفسك أثناء إنشاءك لتطبيقات الأندرويد.java-logi-png
1- مشاهدة دورات مصورة:
الدورات المصورة هي الخيار الأفضل دائماً للبدء في أي لغة برمجة.
أمامك خياران، إما دورات باللغة العربية أو الإنكليزية:
◄دورات باللغة العربية:
عند ذكر اللغة العربية لا أجد أفضل من الأستاذ عبدالله عيد، تتكون الدورة من 3 مستويات، يمكن متابعتهم مباشرة على YouTube :
Java 101 Java 102 Java 103
أو تحميلهم لمشاهدتهم لاحقا (دقة عالية):
Java 101 (الحجم 1.5 غيغا بايت)
Java 102 (الحجم 1.7 غيغا بايت)
Java 103 (الحجم 1.2 غيغا بايت)
المشاهدة وحدها لاتكفي، لكن التفاعل مع الأفكار الجديدة وتطبيقها عملياً هو مايجعلك مبرمجاً.
بعد مشاهدة وتطبيق الدورات الثلاث السابقة، يمكنك الانتقال مباشرة إلى برمجة الأندرويد بدون مشاهدة دورات اللغة الانكليزية، لكن إذا أردت الاحتراف عليك مشاهدتها لاحقاً.
◄دورات باللغة الإنكليزية:
يمكن الاعتماد على الدورات المجانية المتوفرة على موقع YouTube، نذكر منها أشهر سلستين لتعليم لغة Java:
Java (Beginner) Programming Tutorials 
Java (Intermediate) Tutorials
ويمكن أيضاً الاعتماد على الدورات المدفوعة في الموقع الشهير Lynda :
Java Essential Training
Java Advanced Training
ولأن موقع Lynda ليس مجاني، أمامك خياران لمشاهدة هذه الدورات:
إما التسجيل بالموقع وعندها لديك 7 أيام مجانية بإمكانك خلالها مشاهد الدورات وتحميلها إلى حاسوبك.
أو الاعتماد على التورنت وتحميل الدورات بطريقة غير شرعية.
إلى هنا هو الحد الأدنى من الخبرة المطلوبة في لغة Java
2- الكتب الرقمية:
بعد مشاهدة دورة مصورة بأحد اللغتين (أو كلاهما كما أنا فعلت)، يمكنك زيادة خبرتك عبر الاستعانة بالكتب الرقمية.
يجب أن يكون بجانبك دائماً كتاباً تتخذه مرجعاً لك أثناء عملك بلغة Java ، وخصوصاً إذا كانت مرتك الأولى في البرمجة بهذه اللغة.
لديك الكثير من الخيارات، بإمكانك اختيار ماتشاء من هذه المكتبة المجانية :
GitHub – Free programming books
◄باللغة العربية :
يوجد في المكتبة السابقة على سبيل المثال هذا الكتاب المجاني باللغة العربية،
وأيضاً هذا كتاب مميز يُدرّس في المملكة العربية السعودية أنصح به.
◄باللغة الإنكليزية:
أفضل كتاب حسب وجهة نظري هو كتاب Java How to Program من شركة Deitel المعروفة، يمكنك شراؤه عبر الرابط:
Deitel – Java How to Program 9th
أو تحميله بشكل غير شرعي بمفردك من موقع 4shared.
تابع القراءة ..
’’ أريد أن أتعلم برمجة الأندرويد .. لكنني لا أعرف أي لغة برمجة، من أين أبدأ؟ ،،
إذا كنت قد طرحت هذا السؤال على نفسك فأهلاً وسهلاً بك .. فهذا المقال مخصص للإجابة عن تساؤلك، سوف يأخذ بيدك من الصفر خطوة بخطوة لتصبح مطور تطبيقات أندرويد.
وقبل البدء، قد يخطر لنا عدة تساؤلات:
• مافرق البرمجة باستخدام برنامج App Inventor عن البرمجة باستخدام لغة الـ Java عبر برنامج Eclipse أو Android Studio ؟
إن برنامج App Inventor تقليد للغة البرمجة Scratch المخصصة للأطفال، أي محدود الإمكانيات بشدة مقارنة بـ Eclipse أو Android Studio، فهو جيد كبداية، لكنه سيء اذا ما قررت الاستمرار في هذا المجال، ومهما حاولنا تصميم أي تطبيق عليه سيكون أداؤه في النهاية ضعيفاً وسيئاً مقارنة بـ Eclipse أو Android Studio.
• هل أستطيع أن أتعلم لغة برمجة Java واستخدمها في الأندرويد بمفردي؟
نعم بكل تأكيد ! في هذا المقال أكتب تجربتي عن تعلم برمجة تطبيقات الأندرويد من الصفر بمفردي عبر الإنترنت، حيث لم أكن أعرف أي شيء عن لغة Java، كل ماتحتاجه هو اتخاذ القرار ثم المثابرة.
• لماذا أتعلم برمجة الأندرويد؟ مالذي سأستفيده بعد قضاء الكثير من الساعات في التعلم ؟
إن إنشاء تطبيق أندرويد لايتطلب خبرة طويلة كما باقي التطبيقات المكتبية، إضافة إلى ذلك فالأندرويد عالم واسع، لا أقصد بذلك نظام الأندرويد فقط، وإنما الجمهور والسوق والانتشار، فبعد احترافك لهذا المجال يمكنك أن تعمل بشكل حرّ على الانترنت، وهناك عدة طرق لذلك منها:
– أسهل هذه الطرق هي بيع تطبيقك عبر مجتمع خمسات (khamsat.com).
– كذلك يمكن بيع التطبيقات عبر سوق Google Play.
– وضع إعلانات Adsense (من شركة Google) في تطبيقك أو لعبتك، لتربح من كل نقرة على الإعلان.
هناك أشخاصاً ربحوا مئات وآلاف الدولارات من بيع تطبيقات وألعاب الأندرويد، نذكر مثلاً مطور لعبة Flappy Bird الذي بلغ معدل ربحه اليومي 50 ألف دولار.
أنصحك بأن تبدأ الآن .. لعلّ الحظ يحالفك أيضاً :)
كنّا قد عددّنا سابقاً 6 لغات برمجة مستخدمة في برمجة تطبيقات الأندرويد، نذكرها مرة أخرى:sdk-cube
1- باستخدام لغة Java : عبر برنامج Eclipse أو برنامج Android Studio.
2- باستخدام لغة #C : عبر برنامج Xamarin.
3- باستخدام لغة ++C : عبر Android NDK.
4- باستخدام لغة Java Script : عبر Titanium Mobile Accelerator أوPhone Gap.
5- باستخدام لغة Python : عبر kivy.
6- باستخدام لغة Ruby : عبر RhoMobile.
ولأن لغة Java هي الأكثر استخداماً واستقراراً ستكون هي اللغة التي نبدأ فيها رحلتنا.
تابع القراءة ..
اشترك في الصفحة ليصلك جديد الموقع
×
bloggerWidget