میخواهیم شروع کدنویسی در اندروید استودیو را همراه با هم تجربه کنیم. در مقاله گذشته با چگونگی نصب اندروید استودیو آشنا شدیم. اکنون که با موفقیت اندروید استودیو را نصب کردیم، در مرحله بعد باید پوشهای ایجاد کنیم تا برنامههایی که در آینده خواهیم نوشت درون این پوشه قرار بگیرند.
ساخت پوشه برای برنامههای کاربردی
ویندوز اکسپلورر را باز کنید و پوشهای بهنام AndroidProjects ایجاد کنید. دقت کنید این پوشه در مسیر ریشه و روی درایوی که اندروید استودیو در آن نصب شده، ساخته شده باشد. بهطور مثال اگر اندروید استودیو در مسیر C:/Program Files/Android نصب شده، بهتر است پوشه جدید نیز در مسیر C:/AndroidProjects ساخته شود. دقت کنید هیچ فاصلهای میان Android و Projects وجود ندارد.
تقریبا تمامی ابزارهایی که برای ساخت برنامه کاربردی به آنها نیاز داریم روی سامانه نصب شده است. اکنون آماده هستیم تا برنامه خود را ایجاد کنیم، اما پیش از اینکار اجازه دهید نگاه دقیقتری به یک برنامه اندرویدی داشته باشیم.
پیشنهاد مقاله: شروع آموزش برنامهنویسی
یک برنامه اندرویدی چیست؟
در حال حاضر میدانیم که قرار است کدنویسی به زبان کاتلین انجام دهیم یا از کدهای دیگر برنامهنویسان استفاده کنیم تا در نهایت، کدی که مینویسیم به کد DEX تبدیل شده و روی دستگاههای اندرویدی قابل اجرا باشد. علاوه بر این، فایلهای دیگری را که درون پروژه قرار دارند و درون APK نهایی قرار میگیرند، ویرایش کنیم. این فایلها بهنام منابع برنامه اندرویدی شناخته میشوند.
منابع برنامههای اندرویدی
همانگونه که اشاره شد، برنامههای ما بر مبنای عناصر مختلفی همچون تصویر، صدا و لایههای رابط کاربری ساخته میشوند که هر یک از این عناصر در فایلهای جداگانهای قرار میگیرند که شامل کدهای کاتلین هستند. درون این فایلها محتوای متنی قرار میگیرد تا امکان دسترسی و مدیریت متن درون برنامه از طریق فایلهای جداگانه به سادهترین شکل فراهم شود و برنامههای چند زبانه بدون مشکل خاصی قابل نوشتن باشند.
علاوه بر این، طرح واقعی رابط کاربری برنامهها با وجود اینکه توسط یک طراح بصری ساخته میشوند بر مبنای فایلهای متنی خوانده میشود. اندروید (یا هر سامانه کامپیوتری دیگری) نمیتواند متن را مانند انسان بخواند یا معنای آن را درک کند. به همین دلیل، باید منابع را به شکلی کاملا سازمانیافته و از پیش تعریف شده مرتب کنیم.
برای انجام اینکار از زبان نشانهگذاری توسعه یافته (XML) استفاده میکنیم. XML با این هدف ساخته شده که زبان مشترک و قابل فهمی میان انسان و ماشین باشد. ما نیازی به یادگیری این زبان نداریم و فقط باید به چند نکته مهم در این زمینه دقت کنیم. بیشتر اوقات زمانی که با XML در تعامل هستیم، اینکار از طریق ویرایشگر بصری ارائه شده توسط اندروید استودیو انجام میشود. در اندروید استودیو فایلهای این زبان با فرمت xml. قابل تشخیص هستند.
مؤسسه دانشبنیان دانش و فناوری بامداد ارائه میکند:
بوتکمپ برنامهنویسی پایتون با رویکرد یادگیری عمیق در بینایی ماشین
ساختار کدهای اندروید
اندروید متشکل از میلیونها خط کد برنامهنویسی است که به شکل ساختیافتهای آماده شدهاند. این کدها باید به گونهای سازماندهی شوند تا پیدا کردن و مراجعه به آنها ساده باشد. این کدها در قالب بستههایی خاص برای اندروید آماده شده و سازماندهی میشوند.
بستهها
هر زمان یک برنامه اندرویدی جدید ایجاد کنیم، نامی منحصر به فرد برای آن انتخاب میکنیم که به عنوان یک بسته شناخته میشود. بستهها اغلب به زیربستههایی تقسیم میشوند، به همین دلیل امکان گروهبندی آنها با یکدیگر یا سایر بستههای مشابه فراهم است. برای راحتی کار به بستهها به عنوان پوشهها یا زیرپوشهها نگاه کنید، زیرا کارکرد یکسانی دارند. ما میتوانیم به تمام بستههایی که Android API در اختیار ما قرار میدهد به عنوان کتابخانهای از کدها نگاه کنیم. برخی از بستههای اندرویدی که از آنها استفاده میکنیم به شرح زیر هستند:
- android.graphics
- android.database
- android.view.animation
برای اطلاعات بیشتر درمورد بستههای اندروید، به نشانی https://developer.android.com/reference/packages مراجعه کنید.
کلاسها
پیش از این، آموختیم کدهایی با قابلیت استفاده مجدد را میتوان تبدیل به اشیایی کرد که کلاس نام دارند. در هر بسته، انواع مختلفی از کلاسها قرار دارد. در اولین برنامه خود بررسی خواهیم کرد که چگونه بستههای ساخته شده توسط برنامهنویسان دیگر را در پروژههای خود استفاده کنیم. هر کلاس درون فایل خاص خود قرار میگیرد که نامی یکسان با نام کلاس دارد.
توابع
در کاتلین، برنامهنویسان میتوانند یک کلاس را به بخشهایی تقسیم کنند که هر بخش از کلاس کار خاصی را انجام دهد، این بخشها که عملکرد خاص دارند، تابع نام دارند. توابع بر مبنای کارکردی که برای آنها تعریف شده قادر به انجام کارهای خاصی هستند.
قابلیت استفاده مجدد از کدها، کم کردن تعداد خطوط برنامه و مدیریت بهتر برنامهها از جمله دلایل شکلگیری توابع هستند. زمانی که از کلاسهای نوشته شده توسط سایر برنامهنویسان استفاده میکنید، نیازی به خواندن کدها ندارید. کافی است بدانید توابع موردنیازتان در چه بسته و کلاسی قرار دارند تا بتوانید از آنها استفاده کنید. توجه داشته باشید که هر کلاس دادههای متمایز خود را دارد. بهطور معمول، اگر میخواهید به دادههای یک کلاس دست پیدا کنید باید یک شی از آن کلاس تعریف کنید.
شروع کدنویسی در اندروید استودیو
اکنون آماده هستیم تا اولین برنامه خود را ایجاد کنیم. در برنامهنویسی فارغ از سیستمعامل و زبانیکه یک فرد انتخاب میکند، اولین برنامه hello world یا همان سلام کردن به دنیا است. ما به سرعت این برنامه را ایجاد میکنیم و در مقالههای آتی از کاتلین، XML و UI Designer استفاده میکنیم تا چند دکمه به برنامه اضافه کنیم تا به این ترتیب، کاربر بتواند با دکمهها به تعامل پرداخته و با کلیک روی آنها، پاسخی را دریافت کند.
پیشنهاد مقاله: آموزش رایگان کاتلین– برنامهنویسی اندروید (بخش 01)
برای شروع یک پروژه جدید مراحل زیر را دنبال کنید:
- اندروید استودیو را اجرا کنید. در ویندوز 10، روی آیکون برنامه در منوی شروع کلیک کنید تا اندروید استودیو اجرا شود. اگر در زمان اجرا پیغام Import Studio settings from…. ظاهر شد، گزینه Do not import settings را انتخاب کنید.
- به صفحه خوشآمدگویی اندروید استودیو مطابق با تصویر زیر وارد میشوید. گزینه Start a new Android Studio project را انتخاب کنید.
- پس از انتخاب گزینه فوق، اندروید استودیو پنجره Choose your project را نشان میدهد.
- در این بخش گزینه Basic Activity را همانند شکل انتخاب میکنیم. اندروید استودیو بهطور خودکار برخی کدها و منابع موردنیاز را برای ما ایجاد میکند. در مقالههای آتی اطلاعات بیشتری در ارتباط با کدها و منابع به دست میآوریم. گزینه Basic Activity را انتخاب و دکمه Next را کلیک کنید.
- پنجره بعد Configure your project نام دارد. در این پنجره باید اطلاعات مربوط به پروژه خود را وارد کنید. اطلاعاتی که قرار است درون فیلدهای مربوطه درج شوند به شرح زیر است:
- انتخاب نام پروژه جدید
- وارد کردن دامنه شرکت به عنوان نام بسته تا پروژه شما متمایز از پروژههای دیگر شناخته شود. اگر قرار است برنامه خود را در فروشگاه گوگل پلی منتشر کنید، این نام کمک فراوانی به شما خواهد کرد.
- مکانی روی کامپیوتر را که قرار است فایلهای پروژه در آنجا ذخیره شوند، مشخص کنید.
- زبان برنامهنویسی را که قرار است پروژه بر مبنای آن ایجاد شود، مشخص کنید. انتخاب ما کاتلین است.
- نام پروژه ما Hello World و مکانی که فایلها قرار است در آن ذخیره شوند، پوشه AndroidProjects است که ما در بخش Setting Up Android Studio آنرا مشخص کردهایم.
- نام بسته میتواند هر چیزی باشد. اگر وبسایتی دارید، باید از فرمت com.yourdoman.helloworld استفاده کنید. اگر دامنهای در کار نیست، نام com.gamecodeschool.helloworld یا هر چیزی که دوست دارید را مشخص کنید، هرچند اندروید استودیو بهطور خودکار نام مربوطه را درج میکند.
- در حال حاضر جزییات زیادی را مشاهده نمیکنید، اما پارامترها و تنظیمات پروژه شما باید به شرح زیر باشند:
دقت کنید نام پروژه به صورت Hello و World است، اما مکان پروژه فاصله خالی ندارد و به صورت HelloWorld است.
مؤسسه دانشبنیان دانش و فناوری بامداد ارائه میکند:
دوره آموزشی برنامه نویسی پایتون ویژه نوجوانان(حضوری)
نکته اول: یکی از فیلدهای مهم صفحه آخر Minimum API level است. همانگونه که اطلاع دارید Android SDK مجموعهای متشکل از بستههای کدنویسی است که برای طراحی برنامههای کاربری خود از آنها استفاده میکنیم. شبیه به هر کیت توسعه برنامهنویسی، SDK Android بهطور مرتب بهروز میشود و با هر بهروزرسانی، تغییرات مهمی در آن اعمال میشود. هر زمان بهروزرسانی جدیدی برای Android SDK منتشر شود، نسخه این کیت توسعه نیز افزایش مییابد. به عبارت سادهتر، هر چه تعداد نسخهها بالاتر باشد، به ویژگیهای جدیدتری دسترسی دارید.
دقت کنید در زمان برنامهنویسی اگر از کیت توسعه اندرویدی نگارش بالا استفاده کنید، برنامه شما روی تعداد کمی از دستگاههای اندرویدی قابل اجرا خواهد بود. برعکس اگر از نسخههای پایینتر استفاده کنید، برنامه شما روی دستگاههای بیشتری شانس اجرا شدن را دارد.
در حال حاضر، اندروید استودیو گزینه پیشفرض API 15, Android 4.0.3 (IceCreamSandwich) را نشان میدهد که انتخاب خوبی است و تقریباً 100٪ دستگاههای اندرویدی با این نسخه سازگاری کامل دارند. اگر در زمان مطالعه این آموزش، اندروید استودیو گزینه جدیدتری را پیشنهاد داد، گزینه پیشفرض را قبول کنید. به احتمال زیاد در چند سال آینده گزینه پیشفرض متفاوت از گزینه انتخابی ما خواهد بود.
نکته دوم: شما میتوانید برنامه اندرویدی خود را به زبانهای مختلفی همچون جاوا و سیپلاسپلاس بنویسید. هر یک از زبانهای یاد شده مزایا و معایبی نسبت به کاتلین دارند. با این حال، به این نکته دقت کنید که یادگیری کاتلین یک نقطه شروع مناسب برای یادگیری سایر زبانهای برنامهنویسی است. همچنین، فراموش نکنید کاتلین زبان جدیدتری نسبت به زبانهای دیگر است و به عنوان زبان رسمی برنامهنویسی اندروید شناخته میشود.
- روی دکمه Finish کلیک کنید تا اندروید استودیو پوسته اولیه پروژه را ایجاد کند. این فرآیند بسته به کامپیوتری که از آن استفاده میکنید، ممکن است چند ثانیه بهطول انجامد.
مرحله اضافی احتمالی شماره 1
پس از کامل شدن ساخت برنامه به پنجره پایین اندروید استودیو نگاه کنید. در برخی از سامانهها کاربران ممکن است پیغام خطای زیر را مشاهده کنند: (اگر پروژه بدون مشکل ساخته شده و هیچگونه پیغام خطایی را مشاهده نکردید از این مرحله صرفنظر کنید.)
مرحله اضافی احتمالی شماره 2
ممکن است در زمان ساخت پروژه خود پیغام خطای دیگری به صورت زیر دریافت کنید:
اگر پیغام خطای فوق ظاهر شد گزینه Install Build Tools… را کلیک کرده و سپس Finish را انتخاب کنید.
بوتکمپهای برنامهنویسی بامداد، مسیری سریع برای بدل شدن به یک برنامهنویس حرفهای-
بالغ بر نیمی از شهریه خود را پس از استخدام از محل درآمد آتی خود پرداخت کنید.
در شماره آینده بحثمان را در حوزه آموزش برنامهنویسی کاتلین، ادامه خواهیم داد.
نویسنده: حمیدرضا تائبی