كيف ابدأ برمجة تطبيقات الجوال للآيفون والأندرويد

مقدمة

أصبحت الهواتف المحمولة عنصراً مهماً من عناصر الحياة، كما لا يخلو جيب أحدٍ منا في وقتنا الحاضر من جهاز محمول سواء كان ذلك هاتفاً أو ساعة أو جهازاً محمولاً ذكياً. ونقضي أوقاتاً كثيرة في استخدامها في حياتنا اليومية.

أصبحت الأجهزة المحمولة مصدراً ووسيلة من وسائل الترفيه والاتصال والمعلومات، بل فرص عمل لملايين من الناس.

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

أصبح سوق التطبيقات سوقاً عالمياً وتُدر فيه مبالغ ضخمة جداً ولا يخلو يوم ما نسمع به عن استثمارات بشركات ناشئة تتركز في تطوير تطبيقات على الأجهزة الذكية.

بدء العمل كمطور تطبيقات هو أمر سهل إذا كنت منتبه ومدرك لما تريد القيام به.

لديك فكرة وتريد تطبيقها؟ الاحتمالات لا حصر لها، وفرص النجاح كبيرة، وهنا دليل سريع حول الكيفية التي يمكن أن تثبت نفسك كمطور.

كي تكون قادراً على تطوير تطبيق يعمل على أجهزة الجوال لأنظمة التشغيل المشهورة وهي الـ iOS والأندرويد وويندوز، تحتاج في الواقع لمعرفة جيدة وقبل كل شيء باللغة الإنجليزية؛ ذلك لأنها اللغة المعتمدة في أغلب وأشهر لغات البرمجة.

شخصياً، استخدم لغة البرمجة لوا Lua“، وهي اللغة الأساس في منصة تطوير التطبيقات كورونا Corona SDK“، كتبت عنها في مقالة سابقة بعنوان “المنصة التي استخدمها لتطوير التطبيقات” وتحدثت بشكل مختصر عن أسبابي لاختيار هذه المنصة.

كل الطرق تؤدي إلى روما

يجب أن تعلم أنه لا يوجد طريقة واحدة لتصبح مطور تطبيقات. ولكن هناك خطوات مشتركة، سأقوم بشرح الطريقة التي اتبعها شخصياً وليست بالضرورة أنها تناسب الجميع، واتمنى أن تفيد من زار هذه المقالة.

لغة البرمجة

لُوا (بضم اللام) كما يطلق عليها ومعناها “قمر” في البرتغالية، هي لغة برمجة سهلة جداً ولكنها قوية ومرنة، برازيلية المنشأ على بيد البرفيسور روبرتو آيروساليمستشي. وتعتبر من اللغات متعددة أنماط البرمجة، بحيث أنها تدعم أكثر من نمط برمجي واحد (النمط البرمجي).

لُوا لا تدعم بشكل مباشر البرمجة كائنية التوجه أو Object Oriented Programming، ولكن يمكن وبكل بساطة جعلها كذلك بواسطة “الجداول الوصفية” أو الـ metatables:

لُوا تسمح للمبرمجين لإضافة المتغيرات تحت اسم واحد أو namespaces وإضافة التصنيف أو الـ classes وذلك عن طريق الاستعانة بالجداول. لُوا خفيفة جداً فهي تقريباً 180 kB وقابلة للتكيف بسهولة إلى مجموعة واسعة من التطبيقات.

مثال:

print('Hello World!')

كثير من البرامج تعتمد على هذه اللغة ومن ضمنها:

  • أدوبي فوتوشوب لايت رووم يستخدم لوا من أجل واجهة المستخدم
  • ويكيبديا تستخدم لوا منذ عام 2013، كلغة لواجهة الموقع أو للتعديل على القوالب
  • 3DMLW – لتمثيل المحتوى التفاعلي ثنائي وثلاثي الأبعاد

والقائمة تطول ويمكنك إيجاد البقية في صفحة ويكيبيديا

الموقع الرسمي: http://www.lua.org

المجالات

هناك مجالين مهمين لتطوير أي تطبيق لأي منصة.

المجال المنطقي والبرمجي

وهو الكود البرمجي والعمود الفقري لأي تطبيق، ويحتوي الكود على جميع العمليات والتحليلات.

المجال الفني والإبداعي

هو ما تحتاجه لرسم هيكلة التطبيق وشكله العام وطريقة الاستخدام. وهو مهم جداً إن لم يكن أهم من البرمجة نفسها!

كيف تصبح مبرمجاً؟

“أهم شيء هو ألا تتوقف عن السؤال” – ألبرت آينشتاين

أولاً: تعلم الأساسيات

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

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

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

استفد من تجارب الآخرين وحاول تنفيد مشاريعك بأسرع الحلول وأيسرها، ولكن ليس على حساب الجودة.

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

بعدها يمكنك الغوص إلى المنصات الخاصة بالنظام المستهدف، لغة مثل الجافا، والتي تستخدم لمعظم تطبيقات الأندرويد، أو Swift والتي تستخدم لمعظم تطبيقات iOS. على حد سواء، ستحتاج إلى بعض الأدوات مثل قراءة مرجعك الأساس لكل نظام وأقصد هنا الوثائق Documentation والإبحار في منصة تطوير البرامج SDK.

ثانياً: ابدأ بمشروع

تعلم البرمجة ليس حفظ كتاب وفي النهاية عليك اجتياز الاختبار، إذا كنت تعتقد ذلك فأنت مخطئ.

تعلم وأنت تبرمج وبرمج وأنت تتعلم – هذا ما افعله وأجده أفضل طريقة لتكون مبرمجاً. البرمجة والتطوير تتطلب من المواكبة والتعلم المستمر. إذا لم تواكباً ومطلعاً على آخر المستجدات، سرعان ما تجد نفسك في متأخراً عن الكثير.

ابدأ بمشروعك ولا تنتظر حتى تتعلم كل شيء، ستتعلم كل ما تحتاجه عندما تبدأ بمشروعك.

اكتبه على الورق. دوّن كل شيء لتطوير أي تطبيق، من مواصفات ومزايا ومتطلبات ومعلومات التصميم وغيرها..

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

إذا كنت ضمن فريق فهذا رائع، تعلم منهم، شاركهم أفكارك وحاول الحصول على حلول لمشاكلك.

ثالثاً: قم بتحليل نفسك

قم بتجربة التطبيق وتحليله والتأكد من عدم وجود أخطاء برمجية ثم اكتب خطواتك القادمة وحاول تطوير مشاريعك وتحديثها باستمرار. هناك مشاريع أصحابها بنوها على أنها تجارب وأصبحت الآن من أكثر التطبيقات تحميلاً على متاجر التطبيقات، والأمثلة كثيرة.

رابعاً: قم بتطوير نفسك

أن تكون مطوراً، يعني أن تطور من نفسك كل يوم، فتعلم، تعلم، تعلم!

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

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

إذا كنت أنت مصمم التطبيق يجب أن تكون مختص في ذلك. جميل أن يكون لديك إلمام في العديد والعديد من العلوم المختلفة تماماً: حاول الحصول على بعض المهارات (أو على الأقل حاول فهمها) مثل تصاميم الواجهة، التصميم المرئي، التسويق، وسائل التواصل الاجتماعية، الأعمال التجارية، إدارة المشاريع، هندسة المعلومات، الفيديو والمونتاج والرسوم المتحركة.

خامساً: انشر تطبيقك

انشر تطبيقك على المتاجر الرسمية مهما كان صغيراً وبسيطاً، اخبر اصحابك والقريبين منك واستمع لآرائهم ومقترحاتهم، ثم حاول العمل على تلبية رغبات المستخدمين.

7 ردود
  1. مرهف
    مرهف says:

    تقديم ممتاز جداً وموجز مفيد جزاك الله خيراً على المعلومات ويسر لك أمورك.

    رد

اترك رداً

Want to join the discussion?
Feel free to contribute!

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *