Несколько книг для начинающего и продолжающего разработчика под Android / Habr

В прошлом году я входил в миры Android. Помимо изучения исходников, документации, статей, блогов, аудио- и видео-материалов по теме, читал книги. Спешу поделиться читательским опытом.

Под катом небольшой обзор восьми книг. Темы следующие:


  1. RxJava
  2. Потоки в Android
  3. Разработка под Android на Java
  4. Kotlin. Обзор языка
  5. Kotlin. Практика
  6. Kotlin. Обзор языка с уклоном на Android
  7. Разработка под Android на Kotlin
  8. Rx в Kotlin


Reactive Programming with RxJava: Creating Asynchronous, Event-Based Applications. By Tomasz Nurkiewicz,‎ Ben Christensen. O’Reilly Media; 1 edition October 27, 2016; 372 pages;
ISBN-13: 978-1491931653

Книга, которая на примере RxJava поможет понять вам, что такое реактивное программирование. Она требует от вас неплохое знание Java (по крайней мере, вы должны понимать, что такое обобщенные типы и лямбда-выражения) и предполагает последовательное чтение, т.к. материал подается шаг за шагом. Мне кажется, в этой связности и последовательности подачи материала — основная прелесть книги. Внимательный читатель получит полное представление о RxJava. В этом главный профит издания.

Но, даже если уверены в своих знаниях Rx, книга наверняка откроет вам что-то новое. Тем более, если вы только начинаете изучать тему. Если это так, то можно дать вам еще один совет: закрепляйте на практике пройденные темы и изучайте open-source проекты. Так вы быстрее освоите Rx.

Недостатком книги можно считать тот факт, что она имеет в виду версию RxJava 1.1.6. Во второй версии RxJava претерпела некоторые существенные изменения (см. статьи на Хабре Исследуем RxJava 2 для Android и ReactiveX 2.0 с примерами, а также полный список изменений на wiki проекта What’s different in 2.0), и поэтому некоторые места в книге устарели. Однако эти изменения вытекали из общей логики развития RxJava и в книге о них идет речь. Думаю, второе издание должно поставить все на свои места, хотя к этому моменту, возможно, появиться RxJava 3.

Еще один небольшой недостаток, на мой взгляд: книга недостаточно развернуто объясняет теорию реактивного программирования и начинающему разработчику может быть нелегко войти в тему. Хорошее место для этой цели первая глава, но она (с учетом отличий от RxJava 2) выглядит запутанной.

Непосредственно работе RxJava в Android посвящена восьмая глава. Много прекрасно разобранных практических примеров. Но опять же, на сегодня охват возможностей Rx в Android неполон.

В целом, ни один из недостатков не перечеркивает достоинств книги. Она может быть рекомендована к чтению как начинающими разработчиками, так и опытными девелоперами.

Кроме прочего, всегда интересно посмотреть, каких на этот раз

животных поместило на обложку издательство O’Reilly.

Есть перевод на русский:

Нуркевич Т., Кристенсен Б. Реактивное программирование с применением RxJava. Разработка асинхронных событийно-ориентированных приложений. ДМК Пресс, 2017 год, 358 стр.
ISBN: 978-5-97060-496-0


обложка перевода



Efficient Android Threading: Asynchronous Processing Techniques for Android Applications. By Anders Goransson. O’Reilly Media; 1 edition June 13, 2014; 280 pages;
ISBN-13: 978-1449364137
Книга делится на две части. В первой вы узнаете, что находится под капотом операционной системы (ОС) Android: из каких компонентов состоит ОС, как организовано взаимодействие между потоками и между процессами, и как Android организует управление памятью. Во второй части вы научитесь управлять потоками и процессами, узнаете различные механизмы для этого, познакомитесь подробней

Service и фреймворком Loader.

Из минусов, на мой взгляд, можно назвать то, что в книге не слишком подробно объясняется взаимодействие между процессами (фрейворк Binder, AIDL), как с теоретической, так и с практической стороны. И, поскольку, книга написана до второй половины 2014 года, мы не найдем в ней то, что появилось с момента выхода Android Lollipop 5.0. Например, можно вспомнить планирование задач с использованием JobScheduler, Doze Mode, ограничения на запуск Service, которые мы получили в Android Oreo 8.0… etc.

То, что есть недостатки, можно отнести скорее к лаконичному стилю изложения (книга < 300 страниц) и ко времени написания. Но не смотря на них, книга must have для погружения в устройство OC Android. Знания, которые может дать книга, нужны любому серьезному разработчику под Android. Здесь они собраны воедино. И если вам не очень понятен доклад о AIDL и Binder, который вы услышали на очередной Android-конференции, то книга поможет вам в этом.

Есть перевод на русский:

Ёранссон А. Эффективное использование потоков в операционной системе Android / пер. с англ. А.В.Снастина. — М.: ДМК Пресс, 2015 год, 304 стр.
ISBN: 978-5-97060-168-6


обложка перевода



Android Programming: The Big Nerd Ranch Guide. By Bill Phillips, Chris Stewart & Kristin Marsicano. Big Nerd Ranch Guides; 3 edition February 9, 2017; 624 pages;
ISBN-13: 978-0134706054

Действительно неплохая книга, которую можно смело рекомендовать начинающим разработчикам или преподавателям, для составления программы обучения Android-разработке. Если вы начинающий разработчик, то в книге вы найдете множество приемов и примеров для программирования Android-приложений, к которым вы бы могли идти самостоятельно довольно долго. Книга начинает с «Hello world» и через теорию, упражнения и написание небольших приложений, обучает основному стеку технологий для создания Android-приложения. Требует среднего знания Java.

Из минусов я бы назвал неравномерную сложность, довольно большой объем. Думаю, если вы начнете проходить книгу от корки до корки, то для этого вам понадобится много терпения. Не факт, что такой способ не замедлит ваше развитие, как разработчика. Я бы рекомендовал использовать этот фолиант скорее как справочник по интересующей вас теме (теорию быстрее узнать, например, на каком-либо онлайн-курсе), а для скорейшего вхождения в тему Android-разработки — писать свои проекты и изучать, как пишут код другие разработчики.

Есть перевод на русский:

Филлипс Б., Стюарт К., Марсикано К.Android. Программирование для профессионалов. 3-е издание / пер. с англ. — СПб.: Издательский дом «Питер», 2017 год, 688 стр.
ISBN: 978-5-4461-0413-0

На Хабре есть заметка от издательства о книге.


обложка перевода



Kotlin in Action. By Dmitry Jemerov & Svetlana Isakova. Manning Publications; 1 edition February 19, 2017; 360 pages;
ISBN-13: 978-1617293290

«Kotlin в действии» — книга от создателей языка. Книга очень хорошо написана. Я имею в виду структуру материала, стиль повествования и оформление текста. Сложилось впечатление, что авторы взяли все лучшее из книг о языках программирования и воплотили это в своей работе. Главная их заслуга в том, что они сумели отойти от формализма документации и смогли показать особенности языка и историю его развития так, что мы получили своего рода «рассказ», связанное повествование, за развитием «сюжета» которого следишь с интересом.

Книга удачно разделена на главы, параграфы и разделы. Материал организован от простого к сложному. Книга предполагает, что читатель знает Java на достаточном уровне, поскольку язык Kotlin во многом опирается на Java. Если вы Android-разработчик, который пишет, или которому предстоит писать на Kotlin, тогда эта книга для вас. Но если вы начинающий девелопер и недостаточно сильны в Java, вы также можете читать эту книгу. Вам просто придется чуть больше поработать над ней. Даже теория (например, теория лямбда-выражений или обобщенных типов) объяснена в книге очень хорошо. И это здорово поможет войти в тему, если вы делаете первые шаги в программировании.

Книга имеет в виду Kotlin 1.0, поэтому, например, в ней отсутствует описание корутин (coroutine).

Книга не привязана к конкретной предметной области (например, Kotlin в Android), и может использоваться как отличное введение для всех, кто изучает Kotlin.

Есть перевод на русский:

Исакова С., Жемеров Д. Kotlin в действии / пер. с англ. Киселев А.Н. — М.: ДМК-Пресс, октябрь 2017 г., 402 стр.
ISBN: 978-5-97060-497-7

На Хабре есть заметка от автора о книге.


обложка перевода



Kotlin for Android Developers: Learn Kotlin the easy way while developing an Android App By Antonio Leiva. CreateSpace Independent Publishing Platform; 1 edition March 21, 2016; 212 pages;
ISBN-13: 978-1530075614
Это была первая книга, которая вышла о языке Kotlin. По сравнению с книгой «Kotlin in action» она проигрывает как введение в язык, но вместе с тем может служить примером использования языка в Android. В книге разрабатываются приложения, исходники которых лежат на GitHub.

Минусы: материал в книге довольно запутан, автор часто ссылается на репозиторий в GitHub, но при этом не всегда можно понять какую ветку он имеет в виду. Впечатление, что написанное в книге, лучше подходит для формата блога или серии статей о разработке приложения на Kotlin.

В книге можно найти пару-тройку интересных приемов программирования на Kotlin под Android.



Android Development with Kotlin By Marcin Moskala & Igor Wojda. Packt Publishing — ebooks Account, September 6, 2017; 440 pages;
ISBN-13: 978-1787123687
Книга по-сути является рассказом о языке Kotlin. Хотя и всегда имеет в виду разработку под Android. Но непосредственно создание небольшого приложения, происходит только в последней главе. Мне представляется, что в плане введения в язык эта книга проигрывает книге «Kotlin in action».

Главный минус, что эта книга никак не является введением в Android-разработку на Kotlin, так что название может путать читателя. Англоязычные читатели жалуются на плохой английский, но я не заметил, конечно.

Саму книгу не дочитал (книги «Kotlin in action» вполне хватает для введения в язык), поэтому не могу судить о ней с полной уверенностью.

В электронной версии книгу очень удобно читать на сайте издательства с помощью специальной читалки Mapt.

У одного из авторов есть занятные статьи: например, о кроссплатформенности на Kotlin.



Mastering Android Development with Kotlin: Deep dive into the world of Android to create robust applications with Kotlin By Milos Vasic. Packt Publishing — ebooks Account, November 8, 2017; 378 pages;
ISBN-13: 978-1788473699
Эту книгу можно считать полноценным введением в разработку под Android. Она начинает с установки Android Studio, проходит по многим аспектам Android, и заканчивает объяснением публикации приложения на Google Play. В этом смысле книга — некий аналог книге «Android Programming: The Big Nerd Ranch Guide», только на Kotlin. Поэтому книга может быть рекомендована начинающим разработчикам, которые решили освоить разработку под Android через Kotlin. Книга предполагает базовое знакомство с Kotlin.

Мне кажется, что книга не слишком глубоко говорит о разработке на Android, но объясняет нужные вещи. Например, работу с Git или использование библиотеки Retrofit. Что касается использования языка Kotlin для обучения разработке под Android, то сам автор предупреждает, что Kotlin лишь дополнительный инструмент для Android, и Java, как и С++ (для Native), еще никто не отменял.

Как я уже говорил, электронные книги данного издательства удобно читать, благодаря встроенной читалке Mapt.



Reactive Programming in Kotlin: Design and build non-blocking, asynchronous Kotlin applications with RXKotlin, Reactor-Kotlin, Android, and Spring By Rivu Chakraborty. Packt Publishing — ebooks Account, December 5, 2017; 322 pages;
ISBN-13: 978-1788473026
Эта книга появилась недавно, так что я не успел достаточно хорошо с ней познакомиться. Но, что сразу бросается в глаза — она начинается с пространного введения, объясняющего концепцию реактивного программирования, и, затем, плавно переходит на Rx (в данном случае, RxKotlin). Книга имеет в виду вторую версию Rx, что выгодно отличает ее (как и более полное введение) от первой книги («Reactive Programming with RxJava») в этом обзоре. Хотя само объяснение сущностей Rx, операторов, концепции backpressure и т.д. дается в гораздо более лаконичной форме. Этот факт, не позволяет считать данную книгу полноценной заменой первой.

Об RxKotlin в Android идет речь в последней главе. Читатель знакомится с возможностями RxKotlin в Android на примере небольшого приложения, в котором, кроме прочего, используется Retrofit вместе с адаптером от Джейка Вортона.

Книга хорошо оформлена и разбита на главы и разделы, читается быстро. Может быть рекомендована, в дополнение к первой книге об Rx в этом обзоре, особенно для девелоперов изучающих Kotlin. Предполагает знакомство с Kotlin на базовом уровне.

Остальные книги о Kotlin см. на этой странице оф. сайта языка и на сайте издательства Packt Publishing.

habr.com

Полезные книги о разработке мобильных игр на Android и iOS / Mail.ru Group corporate blog / Habr

Вы решили заняться разработкой мобильных игр. С чего начать? Большинство программистов в геймдеве не ходили в учебные заведения, специализирующие только на играх. Скорее, это был какой-нибудь аналог GeekUniversity с видеоуроками или самостоятельный путь, начавшийся с огромного количества любимых игр, разбора механики, курсов в целом по мобильной разработке, оттачивания найденных алгоритмов в простых игрушках, создаваемых для первого портфолио.

Вне зависимости от выбранного пути, рано или поздно появится необходимость подключить еще один источник знаний, и тут вы можете задуматься о книгах. Учитывайте, что ни одна книга по мобильной разработке не заменит практику. В больших статьях по геймдеву вы слово «книга» можете вообще не встретить. Однако книги имеют определенное преимущество по сравнению со статьями — легко отсортировать их по рейтингу и выбрать лучшие.

Итак, книги не заменят вам реальные боевые курсы, но они могут стать хорошим подспорьем и дополнительным источником знаний. Из книг выбираем лучшие, а далее сортируем по вашему языку и области применения.


Android

Hello, Android: Introducing Google’s Mobile Development Platform 4th Edition

C 2010 года живет и обновляется «Hello, Android», начинающая знакомить вас с азами мира этой мобильной платформы. С первой главы книга покажет, как с нулевым багажом знаний создать рабочее приложение: «Hello, World» для Android.

Далее последует пример простейшей мобильной игры Ultimate Tic-Tac-Toe — это симулятор игры в крестики-нолики с несколькими различными режимами. Постепенно добавляя в игру функции, вы научитесь основам разработки под Android: создадите пользовательский интерфейс, сделаете поддержку аудио и видео, добавите графику с использованием 2D и 3D OpenGL, научитесь хранить данные с помощью SQLite, а также узнаете, как публиковать готовое игровое приложение в Google Play.

Learning Java by Building Android Games — Explore Java Through Mobile Game Development

Эта книга также ориентирована на новичков, поэтому вы получите простое и доступное изложение материала о языке Java, его базовых API и ООП. «Learning Java by Building Android Games» ориентирована на то, чтобы научить вас Java по процессу создания игры. Вы будете создавать 4 игры для смартфона и планшета: математическую тестовую игру, игру с памятью в стиле «Саймон» и две игры в ретро-аркадном стиле.

Из книги вы узнаете, как настроить среду разработки Android Studio, создать собственный Android-интерфейс, ввести в игры пиксельную графику, клики, анимацию, звуковые эффекты и многое другое. Да, и еще с нуля выучите Java в степени, достаточной для создания собственных игр.

Beginning Android Games

Книга знакомит с принципами создания базового игрового движка и игр, которые будут работать на разных версиях смартфонов и планшетов. «Beginning Android Games» подойдет не только новичкам, но и опытным программистам — благо, что информации на 714 страницах вместилось много. Обратите внимание, что в примерах кода из книги могут встречаться ошибки — если учиться методом «копировать/вставить», не задумываясь над смыслом происходящего, ничего путного не выйдет.

Android NDK Game Development Cookbook

Относительно короткая (320 страниц) книга о пакете разработки Android NDK (native development kit). Android NDK — это набор инструментов, которые позволяют реализовать на языках С и С++ часть вашего приложения, требующего прямого доступа к ресурсам системы. Android NDK также используется для создания игр.

В книге изложены пошаговые рецепты, помогающие начать разработку мобильных игр, используя Android NDK, а также некоторые популярные библиотеки C++. Фактически, у вас получится создать полноценное мобильное игровое приложение на языке C++.

Вы узнаете, как писать переносимый многопоточный код на C++, использовать свои навыки языка в мобильной разработке, воспроизводить аудиофайлы, использовать OpenGL ES для рендеринга и распознавать жесты. Для книги нужно обязательно иметь хотя бы базовые знания по С/С++.

Книгу написали авторы из России — Сергей Косаревский, занимавшийся мобильной разработкой в SPB Software, Яндексе, Layar и Blippar, и Виктор Латыпов, обладающий опытом разработки компиляторов, драйверов, а также программирования для робототехники.

The Beginner’s Guide to Android Game Development

Вы знаете Java? Ответ на этот вопрос не так и важен. При чтении и изучении материалов этой книги не имеет значения, новичок вы или опытный Java-программист. «The Beginner’s Guide» предлагает достаточно информации, чтобы вы начали делать собственную игру с нуля.

В этом руководстве вы найдете теорию и практику отдельных фундаментальных концепций, изложенных поэтапно — по главе на базовые принципы Java и ООП. Книга предоставляет доступ к обширной библиотеке примеров Java-игр и Android-игр через свой веб-сайт, чтобы вы могли продолжить обучение самостоятельно. Все примеры кода из книги доступны под лицензией MIT на сайте автора.

Android Game Programming by Example

Эта книга в основном ориентирована на Java-программистов и любых других, уже имеющих опыт разработки под Android, которые хотели бы адаптировать свои навыки для создания мобильных игр.

Книга учит созданию простых игровых движков для различных типов игр, внедрению продвинутого AI персонажей, прорисовке игровых объектов, HUD, генерации и воспроизведению звука, бесшовной смене уровней и т.д. Для быстрой и плавной синхронизации кадров используется OpenGL ES 2. К концу книги вы по урокам сделаете три полноценные игры.

Android Design Patterns: Interaction Design Solutions for Developers

Если вы опытный разработчик мобильных игр, но хотите улучшить свои навыки, эта книга даст вам различные шаблоны программирования. Автор предлагает более 60 основных паттернов проектирования и обработки сложных аспектов, таких как главное меню, поиск, формы, сортировки, фильтры, навигации и так далее.

Книга также содержит 12 антипаттернов, включающих распространенные ошибки, которые программисты часто допускают в играх. Шаблоны охватывают наиболее сложные типы пользовательских взаимодействий, и каждый из них наглядно иллюстрируется в пошаговой инструкции.

Professional Android 4 Application Development 3rd Edition

Книга вышла 5 лет назад, но нельзя сказать, что она радикально устарела. Это издание и сейчас остается отличным дополнением к любым источникам знаний по основам программирования на Android. Некоторые идеи могли быть реализованы лучше с использованием современных технологий, но это небольшой минус.

Вы получите 850-страничное руководство, написанное Рето Майером, одним из ведущих разработчиков Google, которое наглядно демонстрирует возможности Android SDK. Если вы опытный разработчик, то сможете быстро создавать свои игры. Новички сначала освоят интерфейс Android-приложения, а затем пошагово изучат все возможности оси. Большой плюс книги в том, что можно выбрать тот раздел, который интересует больше всего, и читать сразу выбранный фрагмент.

Книга переведена на русский язык.

Mobile Game Development with Unity: Build Once, Deploy Anywhere 1st Edition

Практическое руководство, рассказывающее, как создать интерактивные приложения для iOS и Android-устройств на движке Unity. Авторы делают обзор возможностей Unity с ориентацией на примерах использования их в реальных игровых ситуациях. Собственную игру вы будете создавать на примере трехмерного симулятора боевого космического корабля.


iOS

Game Development with Swift

Книга начинается со знакомства с лучшими функциями Swift для разработки игр. Затем вы узнаете, как оживить спрайты и текстуры, интегрироваться с Apple Game Center, публиковать готовые игры в App Store и многое другое. Под конец вы сможете создавать свои собственные игры для iOS с помощью Swift и SpriteKit. Вы должны быть знакомы с базовыми концепциями программирования, однако не требуется знаний Swift или знакомства с экосистемой Apple — начинать можно с нуля.

Кроме этой книги можно начать изучение языка с руководства «Swift Programming: The Big Nerd Ranch Guide (Big Nerd Ranch Guides)» или «Swift Essentials — Second Edition». Оба издания дружелюбны к новичкам, и они научат вас основам Swift, вне зависимости от того, как вы будете использовать язык.

Но если вы хотите углубить свои знания в разработке под iOS и вам требуется полное справочное руководство, обратите внимание на книгу «iOS 11 Swift Programming Cookbook: Solutions and Examples for iOS Apps».

Swift 3 Game Development — Second Edition

В 2017 году книга «Swift 3 Game Development» получила обновление и начинается теперь с новых функций SpriteKit и Swift, которые можно использовать для разработки игр. После настройки первого проекта Swift вы научитесь рисовать, анимировать свою игру и добавлять физические симуляции.

Чтобы сделать вашу игру более увлекательной и интересной, вы должны уметь настраивать сцены и фон, добавлять персонажей, создавать меню и интегрироваться с Apple Game Center для использования рейтингов и достижений.

Весь код в книге объяснен или написан таким образом, что вы его хорошо понимаете и осознаете, как использовать схожие концепции в личных проектах.

iOS Swift Game Development Cookbook: Simple Solutions for Game Development Problems

Еще одно издание, получившее свежий апдейт. Книга содержит подробные рецепты для управления широким спектром общих проблем разработки игр iOS: от 2D и 3D-математики до SpriteKit и OpenGL — все они пересмотрены для Swift. Вы получаете простые, прямые примеры решений общих проблем, возникающих при программировании игр. Книга касается тем создания и настройки меню с помощью UIKit Detect, методов воспроизведения звуковых эффектов и музыки, различных способов хранения данных, математических сложностей физического моделирования, игрового ИИ, взаимодействия с игровыми контроллерами и внешними дисплеями.

Для этой книги вам потребуются начальные знания в областях iOS-программирования, Swift и Objective-C.

Beginning iOS Game Development

С книги Патрика Алесси многие начинали (и начинают) разработку под iOS. В «Beginning iOS Game Development» для новичков дается архитектура системы iOS, дизайн, анимация, звуки и многие другие элементы, представляющие собой универсальный конструктор, из которого вы соберете собственную игру.

Не требует никакого опыта создания игр для платформы iOS. Книга покажет, как работать со средой Xcode, рисовать с помощью Quartz 2D API, обрабатывать анимацию с Core Animation и звук с помощью Core Audio.

Swift Game Programming for Absolute Beginners

Название говорит само за себя. До начала этой книги Swift можно вообще в глаза не видеть. У вас будет множество уроков по созданию четырех разных игр, от аркады до паззла (Painter, Tut’s Tomb, Penguin Pairs, Tick Tick). В «Swift Game Programming for Absolute Beginners» следуют больше за структурой игры, чем за синтаксисом языка — вы сможете изучить Swift, но в контексте именно игр. Собственно, даже с играми особое знакомство не требуется — книга учит вас, как создавать игры для iOS без какого-либо предшествующего опыта с геймплеем.

Learning Unreal Engine iOS Game Development

Игры на движке Unreal Engine выполнены в самых различных жанрах и, конечно, их адаптировали под мобильную платформу. «Learning Unreal Engine iOS Game Development» учит основам разработки оптимизированных игр под iOS с использованием движка Unreal Engine 4. Книга не фокусируется на создании контента, и показывает возможности движка для 2D-игр, чтобы продемонстрировать концепцию скриптов, которую впоследствии можно применить к созданию собственных 2D или 3D-игр. Это не всеобъемлющий справочник, но если вы хотите с чего-то начать, возьмите на заметку несколько аспектов движка UE 4, которые вы точно будете использовать в дальнейшей работе.

Beginning Swift Games Development for iOS

Книга сфокусирована на работе с игровым 2D движком SpriteKit, оптимизированным для создания игр под устройства от компании Apple. Собственно, самой Apple движок и был представлен еще в iOS 7. Вторая половина книги касается темы разработки 3D-игр с использованием фреймворка SceneKit от Apple и языка Swift.

После изучения книги вы должны получить два готовых игровых приложения… Вот только для начала не лишним окажется знание Objective-C.

Заключение

Конечно, здесь собраны далеко не все хорошие книги по мобильной разработке. У каждого человека с опытом в геймдеве найдется свой особенный «топ книг», который лично он считает наиболее оптимальным. Если у вас есть примеры хороших изданий и вы считаете их подходящими для начинающих — поделитесь ссылками в комментариях. Приветствуются и примеры хороших адаптаций на русский язык — так получилось, что в сегодняшней подборке исчезающе мало примеров с переводами.

habr.com

Урок 1. Установка Android Studio, создание эмулятора, Hello World

Facebook

Twitter

Вконтакте

Google+

Какую IDE выбрать для Android?

Некоторое время назад официальной IDE для Android был Eclipse (как стандарт де-факто для Java) с плагином ADT. Некоторое время спустя среди Java-программистов начала набирать популярность IDE от JetBrains, потом для нее появился плагин для разработки под Android, и народ начал потихоньку переходить на нее с Eclipse.

Еще чуть позже Google объявляет о том, что будет делать Android Studio на базе IDEA. И вот на подходе уже вторая версия Android Studio, и Eclipse вспоминается разве что как страшный сон 🙂

Android Studio — официальная среда разработки под Android. По сути, Android Studio — это известная Java IDE IntelliJ IDEA с плагинами.

На данный момент существуют следующие опции при выборе IDE для Android:

  1. Eclipse. Самая популярная какое-то время назад IDE для Java, сейчас использовать ее для разработки под Android крайне не рекомендуется.
  2. IntelliJ IDEA. Отличная IDE, хорошо подходит для Android.
  3. Android Studio. Лучшая IDE для Android. От IDEA отличается мелочами, но эти мелочи очень-очень приятны и сильно облегчают наш труд 🙂 Именно на ней мы и остановимся.
Установка Android Studio

В первую очередь, нужно убедиться, что у вас установлен JDK (Java Development Kit). Это обязательный компонент для разработки на Java, а поскольку разработка под Android ведется на Java — то и для разработки под Android тоже.

Скачать JDK можно по этой ссылке (официальный сайт, само собой, JDK бесплатен :)) Выбирайте самый новый JDK, и именно JDK, а не JRE!

Теперь перейдем к установке Android Studio.

Для начала, Android Studio необходимо скачать. В одном установщике будет все необходимое — сама IDE, Android Emulator, Android SDK. То, чего нет в комплекте, инсталлятор докачает самостоятельно.

Перейдем непосредственно к установке. Ничего необычного в ней не будет — обычный диалог инсталлятора. В процессе нужно будет ответить лишь на один важный вопрос, и то это опционально:

 

Здесь, как следует из скриншота, установщик спрашивает, куда ставить студию, и куда ставить SDK. Если с самой студией все понятно, то SDK нужно быть внимательным. Как опять же следует из скриншота, для установки SDK нужно минимум 3.2 GB места на диске. Это минимум, на самом деле, места нужно больше, поскольку через какое-то время вам нужно будет докачивать обновленный SDK. так что, если вы не уверены, что места в будущем хватит — лучше измените местоположение на более вместительный диск.

После этого понадобится стандартно несколько раз нажать на кнопочку «далее», и на этом установка Android Studio завершена.

Настройка Android Studio

При первом запуске Android Studio задаст вам стандартный вопрос об импорте конфигурации:

 

По умолчанию будет выбран тот же чекбокс, просто нажмите на кнопку «ОК».

После этого Android Studio начнет качать Android SDK. Это может занять некоторое время. Если загрузка завершится неудачей, IDE предложит попробовать еще раз — обязательно нажмите «Retry».

 

После окончания загрузки нажмите «Finish».

В принципе, на этом установка закончена, но я бы порекомендовал произвести еще некоторые настройки.

Во-первых, я советую сменить тему на темную («Darcula»).

 

По началу раз светлый текст на темном фоне может показаться вам непривычным, но поверьте — для глаз так намного легче. Разве что в темное время суток при Alt-Tab’е на «светлый» браузер смена фона будет резать глаза, но для того, чтобы этого не было, я рекомендую поставить замечательную программку f.lux.

Во-вторых, поставьте галочки «show line numbers» и «show method separators»:

 

Первая будет отображать номера строк слева от текста, вторая — будет рисовать разделители между методами в коде.

Эти две опции невероятно важны, а особенно для новичков, и я не понимаю, почему они выключены по-умолчанию.

В-третьих, настройте автодополнение. Для этого в «Case sensitive completion» выберите «None»:

 

Поясню, почему именно так. Опция по-умолчанию подразумевает срабатывание автодополнения только в том случае, если первая буква набрана в правильном регистре. Опция None будет вызывать автодополнение независимо от того, в каком регистре вы начали набирать код.

Стандартное значение этой опции, как и прошлых двух, вызывает у меня недоумение.

Создание первого проекта

Что ж, с настройкой и установкой Android Studio мы разобрались, пришло время создать наш первый проект.

В главном окне Android Studio нажмите на «Start a new Android Studio project«:

 

Появится новое окно, в котором нам нужно выполнить несколько действий.

В первом нужно задать имя приложения, домен компании (из этих двух параметров будет создано имя пакета), и расположение проекта на диске:

 

В Android, как и в Java, основным идентификатором приложения является имя пакета. Если вы ранее работали с Java, вы знаете, что это такое. Тем же, кто не знает, рекомендую гугл, или, например, вот эту статью.

Далее Android Studio спросит нас, какие и каких версий SDK мы хотим использовать. Пока что нам хватит «Phone and Tablet» SDK, версию API поставьте 16 вместо рекомендуемой 15-й, поскольку API 15 уже неактуально и совсем не распространено:

 

На следующем экране нас спросят, какие компоненты приложения мы хотим создать. Выберите «Empty Activity»:

 

На следующем шаге просто нажмите «Finish», ничего не меняя.

Далее, нам придется подождать некоторое время (от минуты до пяти минут, в зависимости от мощности вашего компьютера), пока Android Studio создает проект.

По завершению этого процесса вы увидите, наконец-то, свой первый проект:

 

Он уже вполне работоспособен, но чтобы его запустить, нам понадобится эмулятор Android.

Создание эмулятора Android

Для создания эмулятора Android нам понадобится Android AVD Manager (AVD = Android Virtual Device). Не беспокойтесь, ставить больше ничего не потребуется. Просто нажмите на эту кнопочку:

 

Потом на эту кнопочку:

 

А потом просто несколько раз кликните «Next» и, наконец, «Finish»

Запуск Hello World

Пришло время запустить наш первый проект, созданный в Android Studio!

Нажмите на вот эту кнопку (или Shift-F10):

 

После этого вы увидите диалог, в котором вам будет предложено выбрать девайс, на котором IDE должна запустить собранное приложение:

 

Поставьте выделенную стрелкой галочку и нажмите «ОК». Начнется сборка проекта, запуск эмулятора, установка приложения на эмулятор, и запуск приложения.

На это уйдет некоторое время (чем мощнее ваш компьютер — тем меньше времени понадобится), поскольку эмулятор — вещь достаточно медлительная, несмотря на колоссальные улучшения в последние пару лет.

И вот, по прошествии 1-10 минут (после запуска эмулятора проекты, конечно же, будут собираться и запускаться быстрее), вы, наконец, увидите свой Hello World на экране эмулятора!

 

На этом все, а в следующем уроке мы рассмотрим структуру Android-проекта и систему сборки Gradle.


Новые уроки добавляются каждый день! Чтобы ничего не пропустить, подпишитесь на нашу группу ВКонтакте, или на рассылку по e-mail (обещаем, спама не будет. честно.)

Facebook

Twitter

Вконтакте

Google+

android-school.ru

Подборка материалов по разработке под Android

Если вы давно хотели начать разработку под под эту популярную операционную систему, то эта подборка значительно облегчит вам процесс обучения.





Закончились идеи для Android-приложения? Мы поможем!

Список содержит в себе книги, видеоуроки и прочие материалы, обеспечивающие легкий старт в столь интересном деле.
Итак, для того чтобы вообще понять, что же такое разработка под Android и какие возможности она дает, предлагаем Вам прочесть официальную документацию.
Теперь, если вы уверены в том, что хотите продолжать, но не знаете, с чего начинать, советуем подтянуть знания по Java, так как в основном именно на нем и пишут приложения под эту операционную систему.
Книги по Java вы найдете тут и тут, а если вам больше нравится видео уроки, то вам сюда.
Теперь у вас некоторые навыки в Java, и вы готовы к труду и обороне, можно приступать к делу:
Видеокурс по мобильной разработке от технопарка,

следующий курс также поможет вам на старте.

В дальнейшем вам могут пригодиться следующие книги:

После прочтения второго издания этой книги вы будете знакомы с интегрированной средой разработки Android Studio, которая легко и быстро поможет создавать приложения для этой популярной операционной системы. Изучив основы программирования, вы также узнаете о возможностях Lollipop, новых инструментах библиотек, некоторых главных инструментах стандартной библиотеки такой как SoundPool. Благодаря учебным приложениям вам будут продемонстрированы важные приемы и принципы программирования под Android, которые вы сможете использовать на практике.

Эта книга погрузит вас в динамичный мир разработки приложений для устройств Android с использованием Software Development Kit (SDK) и уже упомянутой среды разработки. Ориентированный на приложения подход обеспечит вас подробным описанием каждой технологии на примере полностью протестированных приложений. Благодаря этой книге у вас будет база, необходимая для разработки приложений и быстрой публикации их в Google Play. Издание полностью обновлено и познакомит вас с возможностями 6 версии этой ОС и Android Studio.

proglib.io

Android-разработка для начинающих: план изучения

Если вы только начинаете свою карьеру в качестве Android-разработчика или только планируете это сделать, следуйте этим шагам. Но этот список подойдет и для более опытных разработчиков, которые хотят освежить в памяти ключевые концепции. Наш план “Android-разработка для начинающих” поможет вам в любом случае!

0. Изучите Java

Да, я отметил этот шаг как нулевой, потому что перед изучением Android-разработки у вас должно быть знание Java. Вы можете сказать: “Но ведь Kotlin гораздо лучше подходит для Android-разработки, чем Java? И Google сделал его официальным языком для создания Android-приложений. Тогда зачем мне сначала изучать Java?”

Я не говорю, что вы не должны учить Kotlin. Я советую сначала изучить Java, потому что вы только начинаете заниматься Android-разработкой, а Java по-прежнему является важной частью Android. Ресурсов для обучения Android API на Kotlin пока недостаточно. Многие из уроков для начинающих написаны на Java. Поэтому для вас будет полезно понимать код на Java, не прогоняя его через конвертер.

Я посоветую для обучения Java книгу Head First Java. Она так интересно написана, что вам покажется, будто вы изучаете Java по комиксу. Другой хороший вариант — Thinking in Java.

1. Купите книгу по Android-разработке или пройдите онлайн-курс

После изучения Java приходит время начать обучаться Android-разработке. Я советую книгу Android Programming: The Big Nerd Ranch Guide для начала. Она основана на популярных буткэмпах Big Nerd Ranch. Вы можете использовать эту книгу в качестве практического руководства по Android-разработке, так как в ней много примеров кода с отличными пояснениями по ключевым концепциям.

Также я рекомендую Head First Android Development. Хотя эта книга немного устарела, она объясняет ключевые концепции очень интересным способом. Если вам понравился стиль Head First, вам будет приятно читать эту книгу.

Если вы предпочитаете видеоуроки, то советую вам пройти эти курсы:

Если вы хотите стать сертифицированным Android-разработчиком и у вас есть средства, я советую вам записаться на программу Android Developer Nanodegree от Udacity совместно с Google.


Google предлагает бесплатный курс Android Basics Nanodegree для незнакомых с программированием

Не забудьте добавить в закладки официальный обучающий гид для Android-разработчиков от Google. Этот гид затрагивает все базовые вещи и образцы кода, которые будут полезны для любого Android-разработчика.

Android-разработка для начинающих это не просто читать книги и смотреть видео. Если вы изучаете новую концепцию, нужно создавать пробные приложения на основе этих концепций.

Другие курсы:

2. Убедитесь, что понимаете эти концепции очень хорошо

Activity LifeCycle

Service, IntentService и их жизненный цикл

Broadcast Receivers

Content Providers

Tasks и Back Stack

Устранение багов в приложении

Context в Android

Android Views и Layouts

Темы и стили в Android

Fragments

ViewPager

RecyclerView

Shared Preferences

SQLite

Threading

ThreadPoolExecutor

Looper, Handler, HandlerThread

HTTP и REST

Организация сетей в приложениях Android

Уведомления

Локация и карты

Сенсоры Android

Локализация

Разрешения

App Standby и Doze Mode

Библиотеки поддержки в Android

Материальный дизайн

Система сборки в Android

3. Другое рекомендуемое чтение

Android-разработка для начинающих – это просто. Попробуйте начать и уже скоро вы сделаете свое первое приложение!

Если вы нашли опечатку — выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать [email protected]

apptractor.ru

Разработка в Android Studio приложений для андроид с нуля для чайников на языке java (видеоуроки)

Программирование под android: с чего начать?

  • Как научиться программировать на андроид с нуля?
  • Как создать андроид приложение, как сделать самому приложение для android смартфона и планшета?
  • На каком языке программирования пишут мобильные приложения?

Наши видеоуроки для начинающих по разработке приложений для операционной системы Андроид помогут вам найти ответы на эти и другие вопросы, связанные с разработкой андроид-приложений. Вы узнаете:

1. Как скачать, установить и настроить среду разработки Android Studio и пакет Android SDK
2. Как создать простое приложение для android
3. Что такое эмулятор андроид-устройства (AVD) для запуска и тестирования android-приложений

По нашим урокам вы научитесь создавать элементы экранов, кнопки и менять их свойства.

Также вы узнаете внутреннюю структуру android-проекта и создадите свое первое приложение.
На нашем канале — видео уроки по программированию и разработке android приложений для смартфонов и планшетов, работающих под мобильной операционной системой Андроид.

Уроки выполняются в среде разработки Android Studio, которую создали совместно специалисты Google и команда JetBrains, авторы популярной среды разработки IntelliJ IDEA.

Android Studio объявлена официальной средой и рекомендуется для разработки мобильных приложений для андроид.
Уроки предназначены для начинающих разработчиков, не имеющих опыта разработки мобильных приложений, однако обладающих базовыми знаниями основ языка программирования java.

В уроках последовательно, от простого к сложному, отражены основные принципы и технологии разработки android приложений, начиная с установки и настройки среды разработки.

Уроки постоянно обновляются и добавляются.

Весь список видеоуроков по основам создания андроид-приложений

Для тех, кто плохо знаком с языком программирования JAVA предлагаем Туториал по основам языка программирования JAVA для начинающих

Также предлагаем Продвинутые курсы:

Продвинутые курсы по созданию приложений и игр для андроид помогут вам за очень короткий срок создать реальное работающее android-приложение или игру, внедрить в него рекламные баннеры и загрузить в маркет Google Play.

Скачать видео уроки по android-программированию и разработке мобильных приложений для андроид смартфонов и планшетов

список уроков      следующий урок>>

www.fandroid.info

Подборка материалов по разработке под Android

Если вы давно хотели начать разработку под под эту популярную операционную систему, то эта подборка значительно облегчит вам процесс обучения.





Закончились идеи для Android-приложения? Мы поможем!

Список содержит в себе книги, видеоуроки и прочие материалы, обеспечивающие легкий старт в столь интересном деле.
Итак, для того чтобы вообще понять, что же такое разработка под Android и какие возможности она дает, предлагаем Вам прочесть официальную документацию.
Теперь, если вы уверены в том, что хотите продолжать, но не знаете, с чего начинать, советуем подтянуть знания по Java, так как в основном именно на нем и пишут приложения под эту операционную систему.
Книги по Java вы найдете тут и тут, а если вам больше нравится видео уроки, то вам сюда.
Теперь у вас некоторые навыки в Java, и вы готовы к труду и обороне, можно приступать к делу:
Видеокурс по мобильной разработке от технопарка,

следующий курс также поможет вам на старте.

В дальнейшем вам могут пригодиться следующие книги:

После прочтения второго издания этой книги вы будете знакомы с интегрированной средой разработки Android Studio, которая легко и быстро поможет создавать приложения для этой популярной операционной системы. Изучив основы программирования, вы также узнаете о возможностях Lollipop, новых инструментах библиотек, некоторых главных инструментах стандартной библиотеки такой как SoundPool. Благодаря учебным приложениям вам будут продемонстрированы важные приемы и принципы программирования под Android, которые вы сможете использовать на практике.

Эта книга погрузит вас в динамичный мир разработки приложений для устройств Android с использованием Software Development Kit (SDK) и уже упомянутой среды разработки. Ориентированный на приложения подход обеспечит вас подробным описанием каждой технологии на примере полностью протестированных приложений. Благодаря этой книге у вас будет база, необходимая для разработки приложений и быстрой публикации их в Google Play. Издание полностью обновлено и познакомит вас с возможностями 6 версии этой ОС и Android Studio.

proglib.io