Статьи

Интервью с разработчиком: Шейн Кондер и Лорен Дарси

Эксперты по Android SDK и обозреватели Mobiletuts + Шейн Кондер и Лорен Дарси рассказывают о своем опыте разработки мобильных приложений и дают советы для тех, кто врывается в индустрию. Необходимо прочитать для начинающих разработчиков Android!


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

SAC: Действительно, мое первое программирование было очень рано с Logo, а затем с BASIC. В старшей школе, где у меня было несколько занятий по Паскалю, я учил себя сборке x86 и Си дома. Это сделало информатику очевидным выбором в колледже. Мне всегда нравились небольшие электронные гаджеты, поэтому разработка мобильных приложений была для меня очевидным выбором, хотя это не оградило меня от большого количества серверной и корпоративной работы.

LED: Наш первый настоящий опыт разработки мобильных приложений был с BREW. Позже мы расширились на другие платформы. Шейн точно гаджет, но я больше одержим идеями приложений. Я более десяти лет веду журнал идей приложений, и этот список продолжает увеличиваться. Просто не хватает времени на их разработку!

LED: Разработав для крупных мобильных платформ в прошлом, мы оба осознали новые возможности, которые должен был предложить Android. Синергия между Android и Google как ее покровителем была слишком хороша, чтобы от нее отказаться.

SAC: Тот факт, что это была Java вместо Objective-C и инструменты могли работать на Windows, Mac или Linux, также не повредил. Я следил за мобильными новостями уже довольно давно. Я слышал об Android в основном, когда Google объявил об этом. Наша первая книга по разработке под Android была написана еще до того, как появилось какое-либо Android-устройство, — задолго до выхода Android 1.0 SDK.

Потратьте время, чтобы освоиться с платформой.

LED: не стоит недооценивать, что нужно, чтобы написать приложение-убийцу. Конечно, есть такие истории о том, как ребенок в выходные выходил из своего гаража (или манежа?), Но это не тот способ, которым разрабатывается 99,99% приложений. Остальные из нас тратят много времени и усилий на разработку, разработку, тестирование и публикацию приложений — таким образом, это мало чем отличается от написания приложений для настольных компьютеров или серверов.

SAC: Вам нужно хорошее понимание языка программирования (Java, если вы разрабатываете для Android). Потратьте время, чтобы освоиться с платформой. Узнайте о жизненном цикле приложения. Жаргон Если вы не разработчик, я рекомендую, по крайней мере, изучить некоторые основы программирования. Как говорит Лори, есть эти истории … Это истории, потому что они просто не норма.

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

LED: часто разработчики уже написали приложение для другой платформы, такой как iOS, и сейчас изучают Android, чтобы перенести приложение на новую платформу. Мой совет здесь: уважайте различия платформы. Если вы пишете приложение для Android, напишите приложение для Android. Если вы пишете приложение для iPhone, напишите приложение для iOS. Если вы нацелены на обе платформы, поймите, что базовая архитектура платформы, парадигмы пользовательского интерфейса и сами пользователи слегка различаются и ожидают разного взаимодействия с пользователем.

SAC: У каждой мобильной платформы есть свой язык. Соблазнительно просто перейти к примерам и воплотить идею вашего приложения в жизнь. Но это обычно возвращается, чтобы преследовать вас позже. Потратьте время, чтобы выучить жаргон на платформе. Поймите, что такое Деятельность, что такое Намерение. Мы говорим об этих понятиях в наших книгах, а также в наших онлайн-учебниках и статьях.

Любопытно, как Google сделал некоторые живые обои? Все источники доступны для просмотра, изучения и даже использования.

SAC: Самым очевидным наиболее полезным проектом с открытым исходным кодом является Android Open Source Project (обычно его называют AOSP). Просмотр различных частей Android может быть полезен для разработки ваших собственных приложений. Любопытно, как Google сделал некоторые живые обои? Все источники доступны для просмотра, изучения и даже использования.

Если вы создаете HTML5-приложения для мобильных устройств, проект PhoneGap является бесценным как для использования, так и для обучения. Мне также нравится просто искать на платформах хостинга с открытым исходным кодом, таких как Google Code , для проектов, связанных с Android.

LED: я согласен с Шейном. В дополнение к проектам с открытым исходным кодом, не забудьте интернет-сообщество Android. В Интернете есть процветающая группа разработчиков, которые с радостью помогут, если у вас возникнут проблемы или у вас возникнут вопросы.

LED: мы определенно предпочитаем использовать отличные бесплатные инструменты, доступные для разработки под Android, такие как Eclipse и инструменты Android SDK. Тем не менее, некоторые вещи могут стоить того, чтобы заплатить за них, например, за хорошую систему отслеживания ошибок, за хорошую систему контроля версий и т. Д. Что касается других сборов, которые вы можете взять на себя, как разработчик Android, вы можете рассмотреть вопрос об Amazon App Developer. Программа , которая имеет ежегодную плату.

SAC: Большая часть вашего бюджета на разработку Android, вероятно, пойдет на устройства и сервисы, связанные с ними. Если ваши приложения включают в себя специальные функции или фондовый код / ​​услуги, которые вы не хотите писать самостоятельно, вы можете использовать и лицензировать код из репозитория, такого как Code Canyon (https://codecanyon.net/category/mobile/android). ). У нас даже есть код для продажи там! 🙂

Я надеюсь увидеть больше функциональности между устройствами. Таблетки, соединяющиеся с телефонами. Телефоны, соединяющиеся с телевизорами.

Светодиод: новое оборудование никогда не заканчивается Android. Там всегда есть какое-то новое устройство. Нам нравится работать с Kindle Fire от Amazon, и Galaxy Nexus довольно хорош. Мне интересно, что будет с Google TV в этом году.

SAC: Мне любопытно, что люди будут делать с Android ADK (Accessory Development Kit). Он доступен со времен Google IO 2010, но с тех пор о нем почти ничего не видели и не слышали.

Я ожидаю четырехъядерные устройства с лучшей графикой и (надеюсь) более длительным временем автономной работы. Возможно, Asus Transformer Prime к концу года не будет чувствовать себя старым и неуклюжим, но это никоим образом не должно быть лучшим устройством. Я надеюсь увидеть больше функциональности между устройствами. Таблетки, соединяющиеся с телефонами. Телефоны, соединяющиеся с телевизорами. Другие кроссоверы, такие как планшеты Motorola Atrix и Asus Transformer, становятся нетбуками. С более быстрыми процессорами такого рода устройства начнут вытеснять ноутбуки низкого уровня.

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

LED: у нас есть большой опыт разработки приложений коммерческого уровня, от антивирусных решений для корпоративных серверов до клиентов MMS и десятков мобильных приложений. Мы написали приложения для iOS, BlackBerry, Palm, BREW, J2ME, Windows Mobile и других, не говоря уже о мобильных веб-приложениях. Разработка для Android похожа на другие платформы и по-своему уникальна. Разработка приложения для Android по-прежнему требует такого же программного процесса и организации, что и любая другая платформа, мобильная или иная. И, в конце концов, самые важные функции доступны на всех конкурирующих мобильных платформах … «лучших» нет. В эти дни вы должны поддерживать их всех, чтобы охватить ваших пользователей.

Конечно, Android рекламируется как открытый и бесплатный, но моя любимая вещь об Android — это то, что он доступен. Вы пишете код на устоявшемся языке программирования (например, Java) и используете знакомые инструменты, такие как Eclipse. Инструменты и SDK бесплатны и их легко приобрести. Доступная информация (например, книги, учебные пособия, форумы и т. Д.) Широко доступна и постоянно совершенствуется. И, возможно, то, что особенно отличает Android от конкурирующих платформ, действительно становится ясным во время публикации: нет огороженных садов, вы можете разрабатывать и публиковать любое приложение для Android, которое захотите. Вам не нужно обслуживать или получать одобрение от кого-либо, кроме ваших пользователей. Вы можете взаимодействовать с ними напрямую.

LED: Мы проводим большую мобильную консультационную работу. Наши клиенты имеют разные цели и определения успеха, когда дело доходит до их мобильных приложений. Это действительно сводится к тому, почему вы разрабатываете приложение.

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

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

С точки зрения разработки традиционных приложений, мы видим, что freemium работает очень хорошо сейчас, когда он хорошо зарекомендовал себя среди пользователей и торговых площадок, особенно для игр, использующих API биллинга приложений в Android Market. Захвати пользователей, заставив их потратить некоторое время на игру, и тогда они будут рады заплатить немного больше за премиум-функции. Успех таких приложений, как FarmVille, привел к тому, что в последние дни все больше и больше клиентов идут по этому пути.

SAC: Freemium, безусловно, отличная модель. Он доказал, что действительно хорошо работает со всеми формами игр. Однако некоторые приложения либо плохо подходят для многих новых покупок, либо содержат контент, который традиционно является бесплатным. Эти приложения лучше всего монетизируются с помощью рекламы. Тем не менее, это действительно хорошо работает, если реклама хорошо ориентирована на аудиторию и ненавязчива.

Все колонки фантастические

LED: Собрать эту конференцию было захватывающим опытом. Все выступающие великолепны, и я рад, что мы идем с одним треком, поэтому мне не нужно выбирать, какие доклады посещать — я могу посетить их все! Я могу сказать, что выступления Дэна Гэлпина всегда очень интересны — он естественный болтун (и адвокат разработчика в Google).

SAC: Я согласен с Лорен. Опыт одного трека означает, что мне не придется ничего пропустить. Мне всегда интересно узнать, что другие могут сказать о темах, которые меня интересуют, таких как программирование игр для Android с Риком Роджерсом, графика Android в действии с Четом Хаасом и Романом Гаем, и дополненная реальность с Крисом Хасеманом.

LED: Это верно! Конференция VTM ориентирована на более опытных и опытных разработчиков мобильных приложений, но мы хотели бы иметь возможность привлечь и тех, кто заинтересован в начале работы с платформой. Вот почему мы решили добавить bootcamp как раз перед конференцией. Мы начнем с нуля — установим новейшие инструменты, напишем несколько простых приложений и научим людей пользоваться языком платформы.

SAC: Там будут удобные раздаточные материалы, раздача книг и никаких домашних заданий! Наша цель состоит в том, чтобы к концу сессии все разработанные ноутбуки были настроены и работали для разработки под Android. Мы также поможем всем написать свое первое приложение и загрузить его на устройство. Итак, да, идите с ноутбуком, устройством и кабелем для их подключения. Да, и об этой части «без домашней работы» … ваша домашняя работа, если вы решите ее принять, будет писать классное приложение, публиковать его и рассказывать нам об этом. У вас столько времени, сколько вам нужно. 🙂

LED: Ну и дела. Посмотрим.

Первая остановка: загрузите и установите Android SDK и инструменты с http://developer.android.com .

Следующий шаг: начать!

Узнайте больше о Java: ознакомьтесь с нашей серией Learn Java for Android на сайте MobileTuts https://mobile.tutsplus.com/series/learn-java-android-development/

Готовы к урокам? Ознакомьтесь со многими учебниками по Android для Mobiletuts +, разделенными на уровни начального, среднего и продвинутого уровня: https://mobile.tutsplus.com/category/tutorials/android/ .

Нужен более структурированный опыт обучения? Ознакомьтесь с нашими книгами « Самс научи себя Android за 24 часа» и разработкой беспроводных приложений для Android

Застрять? Проверьте переполнение стека, чтобы увидеть, если кто-то уже решил вашу проблему. Если нет, напишите вопрос.

НКК:

Команда разработчиков Android собрала несколько отличных видеороликов для учеников .

Вы можете найти наш полный список публикаций книг и статей по разработке приложений для Android здесь: http://androidbook.blogspot.com/p/full-publication-list.html .


Вы разработчик с интересным мобильным приложением или компанией? Интервью с Mobiletuts + — отличный способ рассказать о ваших приложениях, предоставляя при этом ценные знания нашему сообществу. Если вы являетесь разработчиком, который заинтересован в том, чтобы пройти собеседование с Mobiletuts +, свяжитесь с нами через Интернет или через Twitter (@envatomobile).