معرفی نرم افزار اندروید استودیو برای برنامه نویسی موبایل
بیش از یک دهه از عرضه اندروید میگذرد. در این مدت، این سیستم عامل به یکی از مهمترین سیستم عاملهای موبایل و تبلت تبدیل شده است. بیش از نیمی از جمعیت دنیا دارای موبایلهای هوشمند هستند و اکثر آنها، موبایلهای مجهز به سیستم عامل اندروید دارند. از همین رو، حرفه توسعه اپلیکیشن برای اندروید، حرفهای پر رونق است. توسعهدهندگان اندروید، پول بسیار خوبی نصیبشان میشود و دنیا همچنان به توسعهدهندگان بیشتری احتیاج دارد. به همین خاطر بسیاری به دنبال یادگیری اندروید هستند و میخواهند به صورت حرفهای به توسعه اندروید بپردازند. توسعهدهندگان اندروید باید بر زبانهای جاوا (یا کاتلین)، APIهای اندروید و معماری اپلیکیشنهای اندرویدی مسلط باشند. همچنین باید بر یک نرم افزار توسعه اندروید نیز مسلط باشند. تا مدت طولانیای، نرم افزار Eclipse مهمترین محیط توسعه اندروید بود. الان اندروید استودیو به مهمترین نرم افزار توسعه اندروید تبدیل شده است.
در این مقالهی آموزشی میخواهیم نرم افزار اندروید استودیو را معرفی کنیم و شروع کار با آن را آموزش دهیم. اگر تاکنون هیچ تجربهای در کار با نرم افزار اندروید استودیو نداشتهاید، پیشنهاد میکنیم که از ابتدا تا انتهای این مقاله همراه ما بمانید.
پیشمقدمه: اندروید چیست؟
اندروید سیستم عامل متنبازی که نسخه ابتدایی آن در سال ۲۰۰۷ میلادی منتشر شد. اما کار بر روی اندروید توسط شرکت اندروید از سال ۲۰۰۳ آغاز شده بود. در سال ۲۰۰۵ اندروید توسط گوگل خریداری شد و در ادامه این شرکت، زیر نظر گوگل به کارش ادامه داد. امروزه اندروید یکی از مهمترین و پر استفادهترین سیستم عاملها در دنیاست.
مهمترین ویژگی اندروید شاید همین متنباز بودن آن باشد. چیزی که باعث شده از سیستم عامل معروف دیگر یعنی iOS متمایز شود. در ابتدای توسعه اندروید، سازندگان آن تصمیم گرفتند تا آن را بر پایه لینوکس بنویسند. همین اتفاق باعث شد تا اندروید به عنوان یک سیستم عامل متنباز شناخته شود. به همین خاطر است که امروز میبینیم هر توسعه دهنده میتواند به صورت رایگان، اپلیکیشن اندروید بسازد و منتشر کند. در حالی که در مورد iOS این گونه نیست و شما برای این که بتوانید یک اپلیکیشن iOS بسازید باید به اپل پول پرداخت کنید. همچنین برای دانلود و استفاده از محیط یکپارچه توسعه نرم افزارهای iOS نیز باید پول پرداخت کنید.
برای توسعه اپهای اندروید، از محیط یکپارچهی اندروید استودیو استفاده میشود. اندروید استودیو توسط خود گوگل به صورت رایگان عرضه شده و دستورالعمل کار با آن نیز به صورت رایگان توسط گوگل در اختیار عموم قرار گرفته است. در ادامه به صورت مفصل تر با این نرم افزار آشنا خواهیم شد و به بررسی جنبههای اولیه آن خواهیم پرداخت.
آشنایی با اندروید استودیو
اندروید استودیو، محیط یکپارچه توسعه یا IDE رسمی منتشر شده توسط گوگل است که با آن میتوانید اپلیکیشنهای اندروید بسازید. گوگل این نرم افزار را برای سیستم عاملهای ویندوز، مک و لینوکس منتشر کرده. میتوانید آخرین نسخه اندروید استودیو را از وبسایت رسمی آن دانلود نمایید.
اندرو استودیو اولین بار در یک کنفرانس گوگل در سال ۲۰۱۳ میلادی معرفی شد و بعد از انتشار چند نسخه آزمایشی بتا، نسخهی رسمی آن نهایتاً در سال ۲۰۱۴ میلادی برای عموم منتشر گردید. همان طور که پیشتر نیز گفتیم، پیش از انتشار این نرم افزار، برنامه نویسان برای توسعه اندروید بیشتر بر روی نرم افزار Eclipse متکی بودند. نرم افزار Eclipse در اصل یک محیط یکپارچه توسعه برای زبان جاوا بود که زبانهای دیگر برنامه نویسی را هم پشتیبانی میکرد.
اندروید استودیو از آن جایی که به صورت تخصصی برای توسعه اندروید ساخته شده بود و از طرفی از سمت خود گوگل منتشر میشد، کار را تا حد بسیار زیادی برای توسعه اندروید ساده کرد. حتی شروع کار با آن برای تازه کارها هم بسیار ساده است. البته باید تأکید کنیم که برای این که بتوانید برنامههای زیادی با این نرم افزار تولید کنید، چیزهای زیادی باید یاد بگیرید.
اگر تجربه قبلی در حیطه برنامه نویسی نداشته باشید، شاید تا این جا هم دقیقاً متوجه نشده باشید که اندروید استودیو چیست. اصلاً شاید ندانید که محیط یکپارچه توسعه یا Integrated Development Environment یا IDE دقیقا چیست.
محیط یکپارچه توسعه یا IDE معمولاً نرم افزاری است که یک رابط کاربری خوب برای کاربر فراهم میکند تا کاربر بتواند در آن برنامههایش را بنویسد، اجرا کنید و اشکالات احتمالی را رفع یا دیباگ کند. نرم افزار اندروید استودیو هم دقیقاً همین فرصت را برای برنامه نویسان و توسعه دهندگان فراهم کرده است.
اندروید استودیو به عنوان یک محیط یکپارچه توسعه در اختیار برنامه نویسان قرار گرفته تا آنها بتوانند اپهای خود را بسازند و برنامههای خود را مدیریت کنند. زبان برنامه نویسی مورد استفاده در آن جاوا یا کاتلین است. اگر زبان برنامه نویسی خود را جاوا انتخاب کنید، جاوا نیز به صورت جداگانه بر روی کامپیوتر شما نصب خواهد شد.
گوگل تلاش زیادی کرده تا اندروید استودیو را تا جایی که ممکن بوده به یک نرم افزار قدرتمند و مفید تبدیل کند. این نرم افزار به صورت زنده، به شما نکاتی را گوشزد خواهد کرد و همچنین اگر مشکلی در کد شما وجود داشته باشد، پیشنهادهای برای رفع آن ارائه میکند. به طور مثال اگر یک متغیر در برنامه تعریف کنید و از آن استفاده نکنید، این بخش در برنامه به رنگ خاکستری درمیآید تا به شما هشدار دهد که از این متغیر استفاده نشده و احتمالاً چیزی را فراموش کردهاید. همچنین زمانی که شروع به کد نویسی کنید، این نرم افزار سعی میکند تا کدهای شما را به صورت خودکار تکمیل کند. درست به مانند سرچ گوگل که سعی میکند تا ادامه جمله شما را حدس بزند. در محیط اندروید استودیو نیز دقیقاً همین اتفاق تکرار میشود. از این طریق کار شما سریعتر پیش میرود و در وقت صرفه جویی میشود.
حداقل سیستم مورد نیاز برای نصب اندروید استودیو
سیستم عامل ویندوز
- ویندوز ۷، ۸ و ۱۰ (۳۲ بیت یا ۶۴ بیت فرقی نمیکند)
- حداقل ۳ گیگابایت رم (سیستم پیشنهادی ۸ گیگابایت رم است)
- حداقل ۲ گیگابایت فضای خالی هارد
- ۸۰۰ * ۱۲۸۰ حداقل رزولوشن صفحه نمایش
سیستم عامل مک
- نسخه ۱۰٫۱۰ مک یا بالاتر
- حداقل ۳ گیگابایت رم (سیستم پیشنهادی ۸ گیگابایت رم است)
- حداقل ۲ گیگابایت فضای خالی هارد
- ۸۰۰ * ۱۲۸۰ حداقل رزولوشن صفحه نمایش
سیستم عامل لینوکس
- محیط GNOME یا KDE برای دسکتاپ.
- کتابخانه GNU C با نسخه ۲٫۱۹ یا بیشتر
- حداقل ۳ گیگابایت رم (سیستم پیشنهادی ۸ گیگابایت رم است)
- حداقل ۲ گیگابایت فضای خالی هارد
- ۸۰۰ * ۱۲۸۰ حداقل رزولوشن صفحه نمایش
زمانی که مطمئن شدید سیستم شما با حداقل نیازهای این نرم افزار هم خوانی دارد، میتوانید نسخه مورد نظر خود را از وبسایت آن دانلود کنید. معمولاً این وبسایت سیستم شما را تشخیص میدهد (حتی ۳۲ یا ۶۴ بیت بودن را) و به صورت خودکار دانلود را آغاز مینماید.
ویژگیهای مهم اندروید استودیو
همانطور که پیش از این گفتیم، اندروید استودیو یک محیط یکپارچه توسعه برای اندروید است. تا کنون دلایل زیادی آوردیم که چرا این نرم افزار بهترین انتخاب برای توسعه و برنامه نویسی اندروید است. در این بخش دلایل مختلف برتری این نرم افزار را به صورت یک جا بیان میکنیم. اندروید استودیو دارای ویژگیهای مهم زیر است:
- دارای رابط کاربری زیبا و قوی که کار را برای توسعه دهندگان بسیار ساده میکند
- شبیه ساز قدرتمند و سریع
- محیط یکپارچه که در آن میتوانید برای همه دستگاههای اندرویدی، اپلیکیشن بسازید.
- چارچوبها و ابزارهای آزمایشی گسترده
- پشتیبانی از C++ و NDK
نصب و شروع کار با اندروید استودیو
با دانلود و اجرای فایل، پروسه نصب کردن نرم افزار آغاز میشود. در همین جا لازم است توضیح دهیم که بیشترِ اسکرینشاتهای استفاده شده در این مقالهی آموزشی، مربوط به سیستم عامل ویندوز هستند و محیط این نرم افزار در سیستم عاملهای دیگر ممکن است کمی متفاوت باشد.
با کلیک بر روی دکمه Next، پروسه نصب به مانند هر نرم افزار دیگری شروع میشود. پیش از شروع نصب میتوانید تنظیمات مختلف مربوط به نرم افزار از جمله محل نصب آن را تغییر دهید. ولی پیشنهاد ما این است که در این مراحل چیزی را تغییر ندهید و نرم افزار را با تنظیمات پیش فرض نصب نمایید.
در پایان، میتوانید باکس مربوطه برای اجرای نرم افزار را تیک بزنید، تا بلافاصله نرم افزار اجرا شود.
اولین باری که نرم افزار اندروید استودیو رو باز میکنید، یک پنجره به نام Complete Installation یا «تکمیل نصب» باز میشود. اگر قبلاً نسخه دیگری از این نرم افزار را داشتهاید، از اینجا میتوانید تنظیمات مربوط به نسخههای قبلی را در نسخهی جدید ایمپورت کنید. در غیر این صورت، باید گزینه Do not import settings را انتخاب نمایید.
بعد از این مرحله، نرم افزار اجزای SDK مورد نیاز را پیدا میکند تا در مراحل بعدی دانلود نماید.
سپس وارد بخش Setup Wizard یا همان پیکربندی تنظیمات میشوید. در این بخش میتوانید تنظیمات مختلف مربوط به نرم افزار، از جمله قالب رابط کاربری (UI theme) را انتخاب کنید. در پایان نیز، فهرست اجزای مختلف SDK مورد نیاز برای نرم افزار به شما نشان داده میشود. با کلیک بر روی دکمه پایان، نرم افزار شروع به دانلود این اجزا میکند. اینها اجزایی هستند که نرم افزار برای کار کردن به آنها احتیاج دارد. پایان یافتن این بخش به سرعت اینترنت شما بستگی دارد و ممکن است چند دقیقهای طول بکشد.
با پایان یافتن دانلودها، با پنجره پیغام خوشآمدگویی مواجه میشوید و از طریق آن میتوانید اولین پروژه اندروید استودیوی خود را آغاز کنید. همچنین میتوانید پروژههای قبلی (در صورت موجود بودن) را باز کنید. از این به بعد، هر بار که نرم افزار را باز کنید، با همین پنجره ابتدایی مواجه خواهید شد.
نوشتن اولین برنامه اندرویدی موبایل
بهترین راه برای آشنایی با محیط اندروید استودیو، این است که یک برنامه جدید بنویسید. معمولاً در کلاسهای برنامه نویسی هر زبانی، کار خود را با آموزش برنامهای آغاز میکنند که جملهی «سلام دنیا» (Hello world) را نمایش دهد. احتمالاً در ابتدای شروع یادگیری برنامه نویسی در اندروید استودیو، چنین برنامهای بنویسید و بسازید. در ادامه نحوه شروع پروژه جدید در اندروید استودیو را بررسی میکنیم و همچنین به توضیحات مفصل درباره رابط کاربری این نرم افزار میپردازیم.
شروع پروژه جدید
همان گونه که در بخش قبلی دیدید، در اولین صفحهای که با باز کردن اندروید استودیو با آن مواجه میشوید گزینهای به نام Start a new Android Studio project وجود دارد. برای ساختن و شروع نوشتن پروژه جدید، باید این گزینه را انتخاب کنید.
بعد از انتخاب شروع پروژه جدید، با پنجره بالا روبهرو خواهید شد. در این پنجره میتوانید نام اپلیکیشن، دامنه کمپانی و محل ذخیره پروژه را مشخص کنید. با کلیک بر روی دکمه Next به مرحله بعدی بروید. توجه داشته باشید که در هر مرحله میتوانید با کلیک بر روی گزینه Previous به مرحله قبلی برگردید و تغییرات مورد نظر را اعمال کنید.
در مرحلهی بعدی، باید محدوده مورد نظر اپلیکیشن خود را مشخص کنید. یعنی این که میخواهید اپلیکیشن بر روی چه دستگاهها و چه نسخههایی از اندروید قابل اجرا باشد. همان طور که میدانید، سیستم عامل اندروید علاوه بر موبایل بر روی دستگاههای دیگر نیز مثل تبلت یا تلویزیون نیز مورد استفاده قرار میگیرد.
بعدها میتوانید در این گزینهها تغییراتی ایجاد کنید. اما ما فعلاً تنظیمات را به صورت پیش فرض باقی میگذاریم و به مرحله بعدی میرویم.
در مرحله بعدی میتوانید یک تمپلیت از پیش آماده برای فعالیت در اپلیکیشن خود انتخاب کنید. فعلاً با گزینه Empty Activity ادامه میدهیم و به مرحله بعدی میرویم.
در مرحله بعدی میتوانید فعالیت مورد نظر را نامگذاری کنید. اولین باری که از اندروید استودیو استفاده کنید، خواهید دید که بعد از این مرحله، نرم افزار شروع به دانلود و نصب برخی layoutهای مورد نیازش میکند.
بعد از پایان دانلود و نصب، بر روی دکمه Finish کلیک کنید تا نرم افزار شما را به پنجره اصلی ببرد. در ادامه توضیحات کاملی در رابطه با فضای پنجره اصلی نرم افزار اندروید استودیو و استفاده از هر قسمت ارائه خواهیم کرد.
- بخش ۱ قسمت Toolbar یا نوار ابزار نام دارد. از این بخش میتوانید کارهای مختلفی با اپلیکیشن خود مثل Run کردن و غیره را انجام دهید.
- بخش ۲ فضای نوار ناوبری یا Navigation bar نام دارد. در این فضا شما میتوانید در بین فایلها و پروژههای مختلف سیر کنید و قسمتهای مختلف آنها را مشاهده نمایید.
- بخش ۳ پنجرهی ویرایش یا editor window نام دارد. در این بخش شما کدهای مربوط به اپلیکیشن را مینویسید یا آنها را ویرایش میکنید. بر پایهی فایلی که در پروژه باز کردید، این پنجره میتواند متفاوت باشد. مثلا اگر یک فایل layout باز کرده باشید، در این پنجره، ویرایشگرِ Layout را خواهید دید.
- بخش ۴ نوار ابزار پنجره یا tool window bar نام دارد که در کنار پنجره نرم افزار قرار گرفته. این پنجره دارای دکمهها و ابزارهایی است که به شما اجازه میدهد تا پنجرههای مختلف مربوط به ابزارها را باز کنید یا ببندید.
- بخش ۵ پنجرههای ابزار یا tool windows نام دارد. در این بخش شما میتوانید به قسمتهای مختلف مدیریت یک پروژه دسترسی داشته باشید. مثلاً میتوانید در پروژه خود جست و جو کنید و به دنبال قسمت خاصی از آن باشید. یا این که نسخههای مختلف آن را مدیریت نمایید. میتوانید بخشهای جدیدی به این قسمت اضافه کنید یا این که بخشهایی که به آن احتیاج ندارید را ببندید.
- بخش ۶ نوار وضعیت یا status bar نام دارد که در آن وضعیت پروژه و نرم افزار نشان داده میشود. همچنین اگر هشدار یا پیامی از سوی نرم افزار وجود داشته باشد، در این بخش به شما نمایش داده خواهد شد.
شما در هر زمان که بخواهید میتوانید پنجره اصلی را به شکل دلخواه خود در بیاورید و ابزارهای مورد نیاز خود را نگه دارید و پنجرهها و ابزارهایی که خیلی با آنها کاری ندارید را از صفحه اصلی حذف کنید. همچنین میتوانید کلیدهای میانبر برای دسترسی به ویژگیهای مختلف نرم افزار را خودتان ویرایش کنید.
پروژه و پنجرههای ویرایشگر
زمانی که به پنجره اصلی میروید میبینید که در پنجره پروژه فقط گزینههای app و Gradle Scripts وجود دارد. زمانی که شما یک اپ گستردهتر و بزرگتر بسازید، این قسمت از لایههای و قسمتهای بیشتری متشکل خواهد شد.
پنجره پروژه در واقع به مانند یک نمودار درختی نمایش داده میشود که شاخههای اصلی آن در ابتدا app و Gradle Scripts خواهند بود. بعداً موارد manfiests، java و generatedJava و همچنین res به این شاخهها اضافه خواهد شد:
- در شاخه manfiests فایل xml وجود خواهد داشت. این فایل، ساختار کلی یک اپ اندرویدی را مشخص میکند. همچنین اجازههای لازم برای دسترسی در اپ به همراه برخی جزئیات دیگر از اپ در این فایل قرار خواهد گرفت.
- در شاخه java همانطور که از نامش نیز میتواند مشخص باشد، فایلهای منبعی که به زبان جاوا نوشته شدهاند، قرار خواهد گرفت.
- دیگر کدهای مربوط به اپل در شاخه res قرار میگیرد. این شاخه خودش به ۴ زیرشاخهی drawable، layout، mipmap و values تقسیم میشود.
- زیرشاخه drawable معمولاً در ابتدا کاملاً خالی است و بعدها فایلهای گرافیکی مربوط به اپ در آن قرار میگیرد. مثلاً فایلهای مربوط به پیش زمینه یا پس زمینه اپ و همچنین آیکونهای مورد استفاده در آن.
- در زیرشاخه layout فایلهای مربوط به طرح بندی یا همان Layout اپ قرار میگیرد. این فایل معمولاً نامش xml است که در همین زیر شاخه ذخیره میشود.
- در زیرشاخه mipmap معمولاً فایلهای png مربوط به آیکونها با کیفیتهای (رزولوشنهای) مختلف قرار میگیرد.
- زیر شاخه values شامل فایلهای xml و strings.xml و styles.xml خواهد بود.
توضیحات بیشتر مربوط به شاخههای مختلف
تا این جا ممکن است شما کمی از بخشها و فایلهای مختلفی که در موردشان حرف زدیم، گیج شده باشید و نفهمیده باشید که این فایلها دقیقاً چیستند. برای همین تصمیم گرفتیم تا در این بخش توضیحات تکمیلی ارائه کنیم.
معمولاً زمانی که شما یادگیری یک زبان برنامه نویسی را آغاز میکنید، میبینید که همه اتفاقها در یک صفحه میافتد. یعنی در یک صفحه هر چه که باید باشد را مینویسید و سپس برنامه را اجرا میکنید. اما در توسعه اندروید دیدید که بخشهای مختلفی وجود دارد. دلیلش این است که توسعه اندروید اساساً با توسعه برنامههای دیگر متفاوت است. برای توسعه و ساختن یک اپ اندرویدی، به منابع و فایلهای مختلفی احتیاج است. از همین رو در صفحه اصلی اندروید استودیو دیدیم که این فایلها در بخشهای مختلفی قرار میگیرند.
کد اصلی شما یک فایل جاوا است که به صورت پیش فرض MainActivity.Java نام دارد. اما همان طور که تا این جا مشاهده کردید، میتوانید به صورت دلخواه نام این فایل را تغییر دهید. در این فایل، شما رفتار کلی اپلیکیشن خود را به زبان جاوا مینویسید و تعریف میکنید که اپلیکیشن شما چگونه کار میکند.
اما همانطور که میتوانید یک اپلیکیشن اندروید از بخشهای مختلفی تشکیل شده است. در یک اپلیکیشن شما صرفاً فعالیت یا activity انجام نمیدهید. بلکه هر اپلیکیشن دارای ویژگیهایی مثل طرحبندی و رابط کاربری گرافیکی نیز میباشد. کدهای مربوط به این قسمتها در بخشهای دیگری مثل layout قرار میگیرد.
فایل اصلی موجود در بخش layout یا همان طرح بندی، main.xml نام دارد که یک فایل XML است. فایل XML شباهت زیادی به فایلهای HTML دارد. به طور مثال اگر شما بخواهید یک دکمه جدید در اپلیکیشن خود قرار دهید، آن را در همین فایل میگذارید. اما برای تعریف این که این دکمه در اپلیکیشن چه کار میکند، باید کد جاوای خود را ویرایش نمایید. پس به صورت کلی میتوان گفت که همه این فایلها به هم مرتبط هستند.
ادامه راه یادگیری اندروید استودیو
شاید تا به اینجا با خودتان فکر کنید که چیزهای خیلی زیادی در مورد اندروید و اندروید استودیو یاد گرفتهاید. اما واقعیت این است که مطالبی که عنوان شد، تنها چشمه بسیار کوچکی از مطالب مربوط به این نرم افزار هستند. در بهترین حالت، شما تا این جا یک آشنایی اولیه و ابتدایی با این نرم افزار داشتهاید و برای این که بتوانید به یک توسعه دهنده و برنامه نویس حرفهای اندرویدی تبدیل شوید، همچنان راه درازی در پیش است.
ضمن این که همراه با یادگیری مطالب مربوط به اندروید، این موارد روز به روز نیز تغییر میکنند و به روز رسانیهای جدیدی برای هر کدامشان منتشر میشود. به طور مثال، گوگل مدام در حال به روز رسانی اندروید استودیو است و روز به روز ویژگیها و کاراییهای مختلف جدیدی به این پلتفرم اضافه میکند. یعنی زمانی که شما همه موارد مربوط به این نرم افزار را فرا بگیرید، باز هم باید به یادگیری ادامه دهید، چرا که هر روز ممکن است ویژگیهای جدیدتری به آن اضافه شود. پس به خاطر داشته باشید که پروسه یادگیری هیچ گاه پایان نمییابد.