معرفی کتاب آموزش برنامهنویسی اندروید در Android Studio
کتاب آموزش برنامه نویسی اندروید در Android Studio دارای هفت فصل است که هریک، آموزش ساخت یک اپلیکیشن را ارائه میدهند، طوری که از اپلیکیشنهای ساده شروع شده و رفته رفته سطح دشواری و پیچیدگی طراحی و برنامه نویسی آنها بیشتر میشود.
اندروید یکی از پراستفادهترین سیستم عاملهای دستگاههای هوشمند است و کاربران و طرفداران زیادی در سرتاسر جهان دارد. یکی از حوزههایی که برنامه نویسان کامپیوتر به آن علاقه نشان میدهند، حوزه برنامه نویسی اندروید است، اما به علت پیچیدگی زبان جاوا و ناآشنایی اکثر برنامه نویسان با آن، برنامه نویسان اندروید خیلی کمتر از برنامه نویسان سایر پلتفرمها میباشند. کمبود منابع خوب و گام به گام در این زمینه نیز در کاهش تعداد برنامه نویسان اندروید بیتأثیر نبوده است. مترجم این کتاب نیز یکی از علاقه مندان برنامه نویسی اندروید بوده و در ارتباطاتی که با جامعه برنامه نویس ایرانی دارد، مشکل کمبود منابع خوب در این زمینه را به عنوان یکی از گلایههای برنامه نویسان برای عدم ورود به این حوزه پردرآمد برنامه نویسی ارزیابی کرده است.
کتابها و منابعی که در زمینه برنامه نویسی اندروید وجود دارد، به سه دسته تقسیم میشوند: اول، منابع برنامه نویسی اندروید در محیط ایکلیپس که مسنوخ شده و دیگر استفاده نمیشود، دوم، منابع برنامه نویسی اندروید در محیطی غیر از اندروید استودیو (مانند Basic4Android، App Inventor که مترجم کتاب، یک کتاب نیز در این محیط ترجمه کرده و...) که امکانات آنها به وسعت اندروید استودیو نیست و سوم، برنامه نویسی اندروید در محیط «اندروید استودیو» که نسخه رسمی و توصیه شده Google برای ایجاد اپلیکیشنهای اندرویدی است. در زمینه برنامه نویسی اندروید، آن طور که مترجم کتاب تحقیق انجام داده، چند کتاب در بازار نشر وجود دارد، اما به نظر میرسد ترجمههای بد و نیز مثالهای پیچیده و غیرملموس آنها کسی را برنامه نویس اندروید نکرده باشد! مترجم کتاب، پس از تألیف و ترجمه چند کتاب کامپیوتری در زمینههای مختلف، اینک کتابی کاربردی در زمینه برنامه نویسی اندروید عرضه کرده که با نگاهی به عنوان اپلیکیشنهای آموزش داده شده در آنها میتوانید متوجه ملموس و کاربردی بودن آنها شوید. هرچند یکی از ملزومات یادگیری برنامه نویسی اندروید، آشنایی با زبان جاوا و مفاهیم شیء گرایی آن است، که میتواند برنامه نویس را از کار کردن با آن بترساند، اما نقطه قوت اندروید، همین زبان جاوا و بحث شیء گرایی آن است که امکانات و مزایای فراوانی دارد. برای یادگیری برنامه نویسی اندروید توسط این کتاب، هرچند بهتر است با زبان جاوا آشنایی داشته باشید، اما به نظر مترجم، آشنایی با یک زبان شیء گرا مانند C# که پراقبالتر بوده و اکثر برنامه نویسان با آن آشنایی دارند، نیز میتواند پایه و سکوی خوبی برای یادگیری جاوا و اندروید باشد.
کتاب آموزش برنامهنویسی اندروید در Android Studio در هفت فصل به شرح زیر ارایه شده است:
فصل اول، اپلیکیشن Welcome را ایجاد میکند که از دو کامپوننت کاربردی (TextView و ImageView) برای نمایش متن و تصویر در کنار هم استفاده کرده است. در این فصل، با محیط IDE اندروید استودیو و پنجرههای مختلف آن آشنا شده و نحوه ایجاد دستگاه مجازی (AVD یا امولاتور) را فرا میگیرید. این اپلیکیشن نیاز به کدنویسی ندارد. در آخر، برای متنهای اپلیکیشن ترجمه فارسی ارائه میدهید تا با مفهوم «بومی سازی» نیز آشنا شوید.
فصل دوم، اپلیکیشن Tip Calculator را ایجاد میکند که در آن از کامپوننتهای EditText و SeekBar برای تعامل با کاربر در دریافت مقدار صورتحساب و درصد انعام استفاده کرده و مقدار انعام و مقدار صورتحساب نهایی با احتساب انعام را به کاربر نمایش میدهید. در این اپلیکیشن شما رنگهای اصلی تم را تغییر داده و شروع به برنامه نویسی کلاس و متدها میکنید. در آخر، تنظیمی انجام میدهید که اپلیکیشن فقط در جهت portrait روی دستگاه کاربر اجرا شود.
فصل سوم، اپلیکیشن Flag Quiz را ایجاد میکند که طی آن کاربر باید نام کشور ۱۰ پرچم مختلف را حدس بزند. در این اپلیکیشن، از فرگمنتها برای ایجاد رابط کاربری استفاده میکنید. در ضمن، آیکن منو را تنظیم میکنید تا با لمس شدن آن توسط کاربر، صفحه تنظیمات بازی ظاهر شود. تنظیمات این بازی، انتخاب تعداد دکمههای حدس و انتخاب قارههای مختلف جهان برای انتخاب پرچم از کشورهای آنها است. در این فصل با نحوه ایجاد یک layout مجزا برای تبلتها به منظور استفاده بهتر از صفحه بزرگتر آنها آشنا میشوید.
فصل چهارم، اپلیکیشن Doodlz را ایجاد میکند که یک اپلیکیشن نقاشی برای ترسیم خطوط روی صفحه دستگاه اندرویدی است. در این فصل، با نحوه ایجاد منویی حاوی چند آیکن و نیز ایجاد کادرهای تنظیمات آشنا میشوید که توسط آنها کاربر، رنگ قلم و ضخامت آن را انتخاب میکند. نحوه ذخیره کردن تصویر نقاشی شده، چاپ و پاک کردن آن نیز در این فصل بیان شده است. اداره کردن رویدادهای لمس صفحه توسط کاربر نیز یکی از موارد مهمی است که در این فصل به آن پرداخته شده است. درباره نحوه کسب اجازه برای مجوز ذخیره تصویر، و مدل جدید مجوزهای اندروید نیز مباحثی ارائه شده است.
فصل پنجم، اپلیکیشن Cannon Game را ایجاد میکند که یک بازی گرافیکی است. در این بازی، کاربر گلولههایی را به ۹ هدف که در حال حرکت کردن در عرض صفحه هستند، پرتاب میکند. با از بین رفتن گلولهها در مدت زمانی که در نظر گرفته شده، بازیکن برنده بازی میشود. برای چالشیتر کردن بازی، یک مانع متحرک نیز سرراه گلولههای پرتاب شده قرار گرفته است. پخش جلوههای صوتی و شیوه تشخیص برخورد (برخورد گلوله با هدف و گلوله با مانع) نیز برای تشخیص تشویق یا تنبیه بازیکن، از مواردی است که در این بازی پیاده سازی شده است.
فصل ششم، اپلیکیشن Weather Viewer را ایجاد میکند که یک اپلیکیشن برای استفاده از سرویس وب است. در این اپلیکیشن، کاربر نام شهر مورد نظر خود را وارد میکند و اپلیکیشن، در صورت اتصال به اینترنت، پیش بینی ۱۶ روزه آب و هوای آن شهر را از یکی از سایتهای معتبر هواشناسی دریافت کرده و در قالب متن و تصویر نمایش میدهد. در این پروژه، با کامپوننت ListView برای نمایش لیستی از موارد آشنا میشوید. همچنین برای اولین بار در این کتاب با دکمه FloatingActionButton که در اپلیکیشنها بسیار پراستفاده است، کار میکنید.
فصل هفتم، اپلیکیشن Address Book را ایجاد میکند، که در آن کاربر میتواند یک لیست از مخاطبین موردنظر خود بسازد. در این اپلیکیشن از بانک اطلاعاتی SQLite استفاده شده که در اپلیکیشنهای امروزه بسیار کاربردی بوده و میتواند دادههای کاربر را به صورت دائم نگهداری کند. تمام اعمال پایه جداول بانک اطلاعاتی یعنی درج، ویرایش، حذف و پرس و جو در این اپلیکیشن پیاده سازی شده و برای هرکدام، یک رابط کاربری در نظر گرفته شده است. از کامپوننت RecyclerView در این فصل استفاده شده که یک لیست قابل پیمایش ایجاد میکند.
توصیه میشود برای مطالعه این کتاب، از فصل اول شروع کرده و به ترتیب آنها را مطالعه کرده و انجام دهید، زیرا مفاهیم و مسائلی که در فصلهای ابتدایی گفته شده، در فصلهای بعد به آنها فقط اشاره شده و چنین فرض شده که مخاطب، فصلهای اول و مسائل آموزشی آنها را مطالعه کرده است تا از دوباره گویی و بیشتر شدن حجم کتاب اجتناب شود.
(توجه نمایید، فایل این کتاب دارای تصاویر بسیار زیادی است، لطفا قبل از خرید نسخه ی نمونه را دریافت نمایید.)
فهرست مطالب
فصل اول: اپلیکیشن Welcome
فصل دوم: اپلیکیشن Tip Calculator
فصل سوم: اپلیکیشن Flag Quiz
فصل چهارم: اپلیکیشن Doodlz
فصل پنجم: اپلیکیشن Cannon Game
فصل ششم: اپلیکیشن WeatherViewer
فصل هفتم: اپلیکیشن Address Book