Автори книги: Б. Харді, Б. Філліпс, К. Стюарт, К. Марсикано
Друге видання познайомить вас з інтегрованою середовищем розробки Android Studio, яка допоможе з легкістю створювати додатки для Android. Ви не тільки вивчите основи програм-мування, але і дізнаєтеся про можливості Lollipop, нових інструментах допоміжних бібліо-тек, а також деяких ключових інструментах стандартної бібліотеки, включаючи SoundPool, анімацію і ресурси. Всі навчальні програми були спроектовані таким чином, щоб про-демонструвати важливі концепції і прийоми програмування під Android і дати досвід їх практичного застосування.
Починаючому програмісту Android доведеться грунтовно попрацювати. Вивчення Android — все одно що життя в іншій країні: навіть якщо ви говорите на місцевому мовою, на перших порах ви все одно не відчуваєте себе вдома. Таке враження, що всі оточуючі розуміють щось таке, чого ви ще не засвоїли. І навіть те, що вже відомо, в новому контексті виявляється поп-зростання неправильним.
У Android існує певна культура. Носії цієї культури спілкуються на Java, але знати Java недостатньо. Щоб зрозуміти Android, необхідно вивчити багато нових ідей і прийомів. Коли опиняєшся в незнайомій місцевості, корисно мати під рукою путівник.
Тут на допомогу приходимо ми. Ми, співробітники Big Nerd Ranch, вважаємо, що кожен програміст Android повинен:
– писати програми для Android;
- розуміти, що він пише.
Цей підручник допоможе вам у досягненні обох цілей. Ми навчали сотні професійних програмістів Android. Ми проведемо вас по шляху розробки декількох додатків Android, описуючи нові концепції і прийоми у міру потреби. Якщо на шляху нам зустрінуться якісь труднощі, якщо щось здасться занадто складним або нелогічним, ми постараємося пояснити, як виникло таке стан справ.
Такий підхід дозволить вам з ходу застосувати отримані відомості — замість того, щоб, маючи масу теоретичних знань, разби-раться, як їх використовувати на практиці. Перегорнувши останню сторінку, ви будете володіти досвідом, необхідним для даль-дальшої роботи в якості Android-розробника.
Попередні умови
Щоб використовувати цю книгу, читач повинен бути знайомий з мовою Java, включаючи такі концепції, як класи і об’єкти, інтер-фейси, слухачі, пакети, внутрішні класи, анонімні внутрішні класи і узагальнені класи.
Без знання цих концепцій ви відчуєте себе в джунглях, починаючи з другої сторінки. Краще почніть з вступного підручника з Java і поверніться до цієї книги після його прочитання. Зараз є багато чудових книг для початківців; підберіть потрібний варіант у залежності від свого досвіду програмування та стилю навчання.
Якщо ви добре розбираєтеся в концепції об’єктно-орієнтованого програмування, але встигли трохи призабути Java, швидше за все, все буде нормально. Ми наводимо короткі нагадування про деяких специфічних можливості Java (таких, як інтерфейси і анонімні внутрішні класи). Тримайте підручник з Java напоготові на випадок, якщо вам знадобиться додаткова інформація під час читання.
Що нового у другому виданні?
Друге видання показує, як використовувати інтегровану середу розробки Android Studio для написання додатків для Android 5.1 (Lollipop), що володіють зворотною сумісністю з Android 4.1 (Jelly Bean). Також в ньому більш докладно викладені основи програмування для Android, розглянуті нові можливості Lollipop (такі, як панель інструментів і матеріальний дизайн), нові інструменти допоміжних бібліотек (у числі яких RecyclerView і Google Play Services), а також деякі ключові інструменти стандартної бібліотеки, включаючи SoundPool, анімацію і ресурси.
Як працювати з книгою
Ця книга не довідник. Ми намагалися допомогти в подоланні початкового бар’єру, щоб ви могли отримати максимум користі з існуючих довідників та збірників рецептів. Книга заснована на матеріалах п’ятиденного навчального курсу в Big Nerd Ranch. Відповідно передбачається, що ви будете читати її з самого початку. Кожна глава базується на попередньому матеріалі, і пропускати голови не рекомендується.
На наших заняттях студенти опрацьовують ці матеріали, але в навчанні також задіяні і інші чинники — спеціальне навчальне приміщення, гарне харчування і зручна дошка, група зацікавлених колег і викладач, який відповідає на питання.
Бажано, щоб ваша навчальне середовище була схожа на нашу. Зокрема, вам варто гарненько виспатися і знайти спокійне місце для роботи. Наступні фактори теж знадобляться:
— Створіть навчальну групу з друзями або колегами.
— Виділяйте час, коли ви будете займатися виключно читанням книги.
— Прийміть участь в роботі форуму книги на сайті forums.bignerdranch.com.
— Знайдіть спеціаліста з Android, який допоможе вам у важкий момент.
Структура книги
У цій книзі ми напишемо вісім додатків для Android. Два додатки дуже прості, і на їх створення сягає всього одна голова. Інші програми часто виявляються більш складними, а найдовше додаток займає одинадцять голів. Всі програми спроектовано так, щоб продемонструвати важливі концепції і прийоми і дати досвід їх практичного застосування.
GeoQuiz — у першому додатку ми досліджуємо основні принципи створення проектів Android, активності, макети і явні интент.
CriminalIntent — найбільше додаток в книзі призначене для зберігання інформації про проступки ваших колег по офісу. Ви навчитеся використовувати фрагменти, інтерфейси «головне-деталізоване уявлення», списковые інтерфейси, меню, каме-ру, неявні интент і багато іншого.
BeatBox — наведіть жах на своїх ворогів, поки ви дізнаєтеся більше про фрагментах, відтворення мультимедійного контенту, темах і графічних об’єктах.
NerdLauncher — нестандартний лаунчер розкриє тонкощі роботи системи интентов і завдань.
PhotoGallery — клієнт Flickr для завантаження і відображення фотографій з загальнодоступної бази Flickr. Додаток демонструє роботу зі службами, багатопоточне програмування, звернення до веб-служб і т. д.
DragAndDraw — в цьому простому графічному додатку розглядається обробка подій торкання і створення нестандартних уявлень.
Sunset — в цьому «іграшковому» додатку ви створите гарне уявлення заходу над водою, а заодно освоїте тонкощі анімації.
Locatr — додаток дозволяє звертатися до сервісу Flickr за зображеннями околиць вашого поточного місцезнаходження і відображати їх на карті. Ви навчитеся користуватися сервісом геопозиціонування і картами.
Вправи
Багато глави завершуються розділом з вправами. Це ваша можливість застосувати отримані знання, покопатися в докумен-тації та відпрацювати навички самостійного розв’язання задач.Ми настійно рекомендуємо виконувати вправи. Можливість зійти з уторованого шляху і знайти власний шлях закріпить навчальний матеріал і додасть вам впевненості у роботі над власними проектами.
Якщо ж ви опинитеся в глухому куті, ви завжди зможете звернутися за допомогою на форум forums.bignerdranch.com
А ви допитливі?
Наприкінці багатьох глав також є розділ «Для допитливих». У ньому наводяться поглиблені пояснення або додаткова інформація за темами, поданими в голові. Вміст цих розділів не є абсолютно необхідним, але ми сподіваємося, що воно здасться вам цікавим і корисним.
Стиль програмування
Існують два ключових моменти, в яких наші рішення відрізняються від повсюдно зустрічаються в співтоваристві Android.
Ми використовуємо анонімні класи для слухачів. В основному це справа смаку. На наш погляд, код виходить більш струнким. Реалі-зація методу слухача розміщується безпосередньо там, де ви хочете її бачити. У високопродуктивних додатках анонім-ві внутрішні класи можуть створити проблеми, але в більшості випадків вони працюють нормально.
Після знайомства з фрагментами в розділі 7 ми використовуємо їх у всіх користувацьких інтерфейсах. Фрагменти не є абсолют-але необхідними, але, на наш погляд, це цінний інструмент в арсеналі будь-якого Android-розробника. Коли ви освоїтеся з фрагмент-тами, працювати з ними нескладно. Фрагменти мають очевидні переваги перед активностями, включаючи гнучкість при побудові та поданні користувальницьких інтерфейсів, так що справа того варта.
Версії Android
У цій книзі програмування для Android розглядається для всіх поширених версій Android. На момент написання книги це версії Android 4.1 (Jelly Bean) — Android 5.1 (Lollipop). І хоча старі версії Android продовжують займати певну частку рин-ка, на наш погляд, для більшості розробників клопоти з підтримки цих версій не виправдовуються. За додатковою інфор-мацией про підтримку версій Android, що передують 4.1 (особливо Android 2.2, Android 2.3), звертайтеся до першого видання книги.
Навіть після виходу нових версій Android прийоми, викладені в книзі, будуть працювати завдяки політиці зворотної сумісності Android (за подробицями звертайтеся до розділу 6). На сайті forums.bignerdranch.com буде публікуватися інформація про зраду-ках, а також коментарі з приводу використання матеріалу книги з останніми версіями.
Більш докладно з книгою можна ознайомитися на сайті видавництва
Зміст
Уривок
Для відвідувачів Хабрахабру знижка 25% по купону — Android Programming. За фактом оплати паперової книги відправляємо на e-mail електронні версії книг, при покупці електронної книги — всі доступні версії відправляються користувачам.
Джерело: Хабрахабр