سلسلة تعلم الأندرويد – الحلقة الأولى: الجافا

شعار جافا

إذا كنت من محبي الأندرويد، فلا شك أنك فكرت في إنشاء تطبيق معين يساعدك في المهام اليومية التي تقوم بها أو يسليك في وقت فراغ معين. وإذا كنت مبرمجاً بالإضافة إلى محبتك للأندرويد فلا شك أنك اطلعت على الكود المصدري للأندرويد. وربما جاء الوقت لتكون أكثر جدية حول الموضوع وتحاول برمجة تطبيقك الأول للأندرويد. وسوق الأندرويد أصبح كبيراً الآن حيث يسيطر على أكثر من 50% من سوق الأجهزة المحمولة وما يزال في صعود. بالإضافة إلى أن الطلب على مبرمجي الأندرويد أزداد بنسبنة 700% في سنة واحدة. وهذه الأسباب تجعل التفكير في برمجة تطبيق للأندرويد أمراً مهماً وربما يكون ذات عائد مادي أيضاً.

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

قبل الشروع بتعلم برمجة التطبيقات للأندرويد هناك ثلاثة ملاحظات:

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

2- حاول تعلم اللغة الانجليزية قدر المستطاع. فتعلمها سوف يفتح لك مجالاً أوسع للتعلم من الدروس الموجودة بكثرة عن أندرويد باللغة الانجليزية وأيضاً لحل المشاكل التي تواجهك أثناء برمجة التطبيق.

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

بداية لتعريف الجافا:

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

من خلال التعريف نلاحظ أن الجافا لا تختلف عن لغات البرمجة الأخرى كثيراً باعتبارها مبنية على أحدها، ولكن هناك بعض الفروق أهمها إدارة الذاكرة (Memory Management)  مما يجعلها سهلة التعلم، وأيضاً أتت الجافا بفكرة كتابة الكود مرة واحدة ونشرها على مختلف أنظمة التشغيل من دون الحاجة لإعادة كتابته وكان شعارها المعروف “write once run anywhere”  أكتب مرة وشغّل في أي مكان يدل على قابلية الجافا في العمل على عدة منصات من دون تغيير في الكود.

والآن للمصادر:

في البداية اقرأ هذه المقالة لأخذ نظرة عن لغة الجافا من الويكيبيدا: جافا (لغة برمجة)

المصادر

1- الفيديو:

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

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

http://abdullaheid.net/titles.php?id=447

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

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

المجموعة الثانية هي باللغة الانجليزية وتشرح بالتفصيل كيفية البرمجة باللغة الجافا.  المجموعة موجود على هذا الرابط:

http://www.thenewboston.com/?cat=36&pOpen=tutorial

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

السلسلة طويلة وتحتوي على 87 درساً و7 ملحقات، فإذا أحببت أن تستمع إلى بعض الدروس انصح بالاستماع إلى هذه الدروس:

JAVA PROGRAMMING TUTORIAL – 5 – VARIABLES

JAVA PROGRAMMING TUTORIAL – 8 – MATH OPERATORS

JAVA PROGRAMMING TUTORIAL – 12 – SWITCH STATEMENT

JAVA PROGRAMMING TUTORIAL – 14 – USING MULTIPLE CLASSES

JAVA PROGRAMMING TUTORIAL – 17 – CONSTRUCTORS

JAVA PROGRAMMING TUTORIAL – 27 – INTRODUCTION TO ARRAYS

JAVA PROGRAMMING TUTORIAL – 38 – PUBLIC, PRIVATE AND THIS

مرة أخرى، من الأفضل مشاهدة جميع الدروس في السلسلة حتى تأخذ نظرة جيدة عن الجافا.

2- الكتب:

هناك الكثير من الكتب المفيدة لتعلم لغة الجافا، وهذه المجموعة باللغة العربية تساعد في إعطاء نظرة مفصلة حول البرمجة بلغة الجافا.

أ- مصادر أولية:

  • أساسيات تعلم لغة الجافا: يقدم لغة الأساسيات الضرورية لتعلم لغة الجافا. الكتاب يستعمل برنامج NetBeans في شرح الأمثلة، وكما ذكرت سابقاً هذا البرنامج غير معتمد رسمياً من قبل نظام الأندرويد (يمكن استعماله لبرمجة التطبيقات ولكن Eclipse أسهل)
  • أساسيات تعلم الجافا: هذا الكتاب أيضاً يقدم الأساسيات لتعلم لغة الجافا. معظم الأمثلة يتم تطبيقها من خلال CMD. كتاب مفيد لتعلم الضروريات في لغة الجافا.
  • كيف تفكر كعالم كمبيوتر – نسخة الجافا: الكتاب من تأليف Allen B Downey وترجمة محمد سعيد. يقدم الكتاب شروحاً موسعّة حول لغة الجافا وتطبيقاتها.
  • برمجة الحاسب – الجافا: كتاب آخر يقدم نظرة مفصلة حول البرمجة بلغة الجافا. يمكنك البداية من الصفحة 45 فيه حيث يبدأ الحديث عن الجافا.
  • البرمجة باستخدام الجافا: كتاب مفيد جداً في تعلم لغة الجافا. الكتاب هو مقدم لطلاب المدارس كجزء من المنهاج الدراسي، وهذا يساعد المبتدئين على تعلم الجافا بالطريقة الدراسية والتي تكون مبسطة عادة وتقدم مادة مفيدة. الكتاب على قسمين: البرمجة باستخدام الجافا – القسم الأول  – البرمجة باستخدام الجافا – القسم الثاني.

ب- مصادر ثانوية:

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

3- المواقع:

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

  • CatalogJava: يقدم هذا الموقع الكثير والكثير من الأمثلة بلغة الجافا. يمكن التنقل بين الأقسام المختلفة لرؤية أمثلة عن تطبيقات الجافا، ويمكن استعمال الأكواد أيضاً في برامجك.
  • Java CheatSheet: دوسيه خاص بالجافا. من أفضل المراجع حول كيفية الكتابة بالجافا والمفاهيم المختلفة فيها. يمكنك الرجوع إليه في حالة أحببت التأكد من مفهوم بسيط أو كيفية كتابة أمر معين.
  • Java Reference Sheet: كالموقع السابق، تقدم معلومات أقل ولكن مفيدة جداً. حيث حجمها صغير ويمكن وضعها جهاز الموبايل أو الجهاز اللوحي الخاص بك إذا احببت لمراجعتها عندما تريد.

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

تعليق

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

    • عبد القهار الحسني

      شكراً جزيلاً لك. وإن شاء الله سوف اتابع السلسلة بمستوى حلقة كل أسبوع.

  2. عبدالرحمن

    بارك الله فيك

  3. حمد

    بصراحه هالموضوع اجاب على كل التساؤلات اللي في بالي . اشكرك جدا يا اخي عبدالقهار والى الأمام

اترك تعليقاً

الحقول المطلوبة موسومة بالعلامة *.