Skip to main content

سلسلة تعلم برمجة تطبيقات الاندرويد – إنشاء أول تطبيق للاندرويد – الحلقة رقم 2

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

إنشاء تطبيق

باستخدام بيئة العمل Netbeans :
1. اضغط على قائمة File
2. اختر New Project.
3. اختر نوع المشروع Android
4. اضغط زر Next.
5. اضبط إعدادات المشروع كالتالي:
Project Name: اسم المشروع، يفضل أن يكون اسم المشروع هو نفس اسم التطبيق وذلك لتمييزه عن باقي المشاريع الأخرى
Package Name: اسم حزمة المشروع، وهنا يجب اتباع قواعد تسمية الحزم في لغة Java
إذ يجب أن تتكون من مقطعين على الأقل ويفصل بين كل مقطع بنقطة، ولا يوجد فراغات.
Target Platform: رقم نسخة نظام التشغيل الاندرويد التي يدعمها هذا التطبيق، وهنا لا بد من اختيار أقل رقم يتوافق معه هذا التطبيق
لمزيد من التفاصيل شاهد الصورة التالية:
netbeans-create-android-project

6. اضغط على زر Finish

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

مكونات وهيكلية تطبيق الاندرويد

الصورة التالية توضح المكونات الأساسية والبنية الهيكلية لأي تطبيق يعمل على نظام التشغيل اندرويد، وفي الأسفل شرح مبسط لكل مكون من المكونات وأهميته.
android-application-structure-and-components

توضح الصورة السابقة مكونات وهيكلية تطبيق الأندرويد، إذ يظهر في الصورة:
1. Source Packages:
يحتوي هذا المكون على الحزم وبداخله النص البرمجي الذي يستخدمه التطبيق لتأدية الوظائف والمهام المنوطة به، وهنا لا بد من الإشارة إلى أن كل الحزم المستخدمة تابعة للتطبيق نفسه، والوظائف والمهام داخل هذه الحزم لا بد من أن تكون خاصة فقط بالتطبيق ومهامه، وذلك للفصل بينها وبين الحزم التي تستخدم لتأدية وظائف ومهام عامة وقد تستخدم في أكثر من تطبيق. إذ أن هذا النوع من الحزم له مكون آخر خاص به سنتحدث عنه بعد قليل.
وتجدر الإشارة هنا إلى أن الحزم في لغة الجافا تتكون من العديد من الفئات (Classes)
وكذلك الأمر في الحزم المستخدمة في تطبيق الأندرويد.

2. Resources:
يحتوي هذا المكون على كل المصادر التي يحتاجها تطبيق الاندرويد، من صور، وفيديو، وأيقونات، وتعريفات تصميمات شاشات العرض، بالإضافة إلى أية إعدادات خاصة بالتطبيق، مثل اسم التطبيق ورقم النسخة وحقوق التطوير، وأية مصادر خارجية وروابط يحتاجها التطبيق لتأدية وظائفه، وتكمن أهمية هذا المكون بأنه يتم تعريف كافة المصادر بداخله مرة واحدة، وبعد ذلك يتم الرجوع والإشارة إليه من أي مكان داخل التطبيق. 
3. Libraries
يحتوي هذا المكون على كل الحزم التي يحتاجها التطبيق لتأدية وظائف معينة، وتمتاز هذه الحزم بأنه تؤدي وظائف عامة ليست مخصصة فقط لهذا التطبيق، وهذا ما يميز هذا المكون عن المكون Source packages.
4. Important Files
يحتوي هذا المكون على الإعدادات الخاصة بعملية بناء التطبيق، والعمليات المرافقة لتنصيب التطبيق على نظام التشغيل اندرويد. ويوجد بداخل هذا المكون ملفين رئيسيين، الأول
AndroidManifest.xml
وهو عبارة عن ملف xml
يتم تعريف كل الأمور المتعلقة بالتطبيق والمصادر والصلاحيات التي يحتاجها التطبيق من نظام التشغيل، وتتم قراءة هذا الملف من قبل نظام التشغيل الاندرويد، في لحظة تنصيب التطبيق بعد موافقة مستخدم النظام. أما الملف الآخر فهو Build.xml
وهو المسؤول عن إعدادات بناء النص البرمجي وربط المصادر وتعريفها، ويتم التعامل مع هذا الملف من خلال بيئة العمل وليس من خلال المطور نفسه.
وهكذا نكون قد أكملنا المكونات الرئيسية لأي تطبيق يعمل على نظام التشغيل أندرويد. بقيت خطوة أخيرة، وهي كيفية بناء هذا التطبيق وتنفيذه.
من قائمة Run
اختر Run Project
وفي حال كان هناك جهاز يعمل على نظام التشغيل اندرويد مرتبطا بالكومبيوتر فإنه سيتم تنصيب التطبيق على الجهاز فورا، وفي حال عدم توفر جهاز فإنه سيتم تنصيب وتشغيل التطبيق على جهاز افتراضي Virtual Device
شاهد الصورة بعد بناء التطبيق السابق:
android-default-application-view

وهكذا نكون قد أنهينا حلقة اليوم من سلسلة تعلم تطوير تطبيقات الاندرويد، وستكون إن شاء الله الحلقة القادمة في التعرف عن قرب في كيفية بناء تطبيق بسيط يعمل على البحث في التغريدات على تويتر وعرضها بطريقة مرتبة، وربما تستمر عملية تطوير هذا التطبيق لعدة حلقات.
...
أنس الجاغوب
Twitter: @anasjaghoub
Facebook: http://www.facebook.com/anasjaghoub

Comments

  1. شاطر والله يزيدك من فضله وتنفع المسلمين

    ReplyDelete

Post a Comment

Popular posts from this blog

PHP Tutorial–Guest Book–System Definition and Requirements

In this lesson I’m going to illustrate the system definition and requirements for the Guest Book application. It is an important step in developing any application, since this step gives us an orientation about the system and its functionality, what is expected from the system to do. actually the system definition comes from keywords from customers and end users, usually try to make it clear for what they need in the application, and what they expect the system to do.  As developers it is our role to define the requirements for the system to be developed. In our example the system definition for the Guest Book is: A system that allows visitors of the site to post their comments and feedbacks about the site, with the possibility for managing comments and maintain it easily and user friendly. On the other hand, the system requirements are: a web server, since it is clear that the developed system is going to run on the Internet, so it is a web-based application not windows-based.

تعلم تطوير تطبيقات للموبايل باستخدام الأندرويد

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

Web Development Best Practices (PHP Best Practices)

Websites development is one of the most challenging projects ever to develop, according to the large number of components you deal with, integrate, and manage in your application. For example, most web projects Deal with databases as their data source, and I ntegrate with external services called web services and APIs. As well the application M anages its own objects and components from views to models to controllers to plugins and so on. A skilled web developer should have a great/deep knowledge in most of components used in his system, and as well should ha ve intensive focus on how each component work and how can be used, what can be done, and what cannot. On the other hand, the huge amount of requirements, components to manage, and time frame given to you to accomplish your mission, and number of people in your team, all these factors together requires from you to organize your tasks, and priorities your requirements, do deep analysis and planning in order to have a hi