Pull to refresh

Книга «Android. Программирование для профессионалов»

Reading time 6 min
Views 42K
Привет, Хаброжители! У нас вышла новая книга:

image Авторы: Б. Харди, Б. Филлипс, К. Стюарт, К. Марсикано

Второе издание познакомит вас с интегрированной средой разработки 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
Tags:
Hubs:
+6
Comments 12
Comments Comments 12

Articles

Information

Website
piter.com
Registered
Founded
Employees
201–500 employees
Location
Россия