Tehnografi.com - Технологические новости, обзоры и советы
[adinserter block="67"]

Особенности Android-разработки. Полезные советы от разработчиков.

Следующая статья поможет вам: Особенности Android-разработки. Полезные советы от разработчиков.

— самая динамичная платформа для мобильной разработки. О чем должен помнить разработчик при программировании под Android? Есть ли узкие места?

Мы попросили нашу команду мобильного отдела ответить на несколько вопросов, касающихся программирования для Android, его настоящих советов и будущего.

Надеюсь, это поможет вам лучше понять эту ОС. Вы можете задать любые вопросы, если вам нужна наша помощь.

Существует ли понятие архитектуры в программировании под Android и как его выбрать?

Google использует Далвик виртуальная машина для запуска своих приложений. Это накладывает определенные ограничения на архитектуру приложения. Google SDK позволяет писать хорошо структурированную программу с точки зрения архитектуры и предоставляет богатый набор классов для различных архитектурных моделей.

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

Самые распространенные специальные фреймворки и даже более правильные мультиплатформенные фреймворки используются для разработки приложений под несколько мобильных платформ одновременно, например Android, iPhone, Windows и т.д. Для создания демо-версии продукта мы можем выиграть в скорости разработки при хорошем знании самого фреймворка. Однако при разработке серьезных мультисервисных приложений описанное выше преимущество теряется, так как приходится учитывать и знать специфику каждой платформы, а иногда и SDK и язык пишется для того, чтобы добавить нативную функциональность в продукт. для различных платформ и прототипов для демонстрации. Остальные фреймворки для сложных приложений увеличивают скорость разработки приложений на 90%, но остальные 10% кастомизации решаются настолько жестко, что сводят на нет преимущества кроссплатформенной разработки. Поэтому используйте фреймворки только там, где это уместно.

API: подводные камни использования. На что должен обращать внимание человек, когда дается API? И обязательно ли писать его самому?

Для клиентской стороны обычно используется Android SDK. Что касается серверной стороны, обычно используется URL-адрес, в котором используются параметры POST или GET; в ответ получаем Json или Xml. Большим плюсом является знание только одного языка, обычно JavaScript.
В процессе работы над различными проектами серверная часть API достаточно серьезно менялась при написании клиентской части. Основная проблема здесь — убедить разработчиков серверной части в том, что обмен информацией должен идти в формате запрос-ответ на один функционал и избегать многократных запросов информации главы.

Какие методы используются при программировании для Android?

Мы используем и автоматизированное тестирование. Это позволяет мгновенно реагировать на изменения сервера и проводить непрерывное тестирование всего функционала в каждом релизе приложения.

Есть ли решения для оптимизации разработки под несколько платформ одновременно?

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

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

Для iPad — отдельная специфика, в основном связанная с разрешением экрана. Для Android — это не только разрешение экрана, но и 3.0 и 4.0 с учетом специфики построения приложений.

Что будет со сферой разработки для Android в будущем?

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