Примеры отдельных обязанностей Android - PullRequest
2 голосов
/ 16 октября 2010

Привет всем Одна вещь, касающаяся разработки под Android, я хотел бы увидеть несколько примеров: разделение обязанностей в Android, сейчас у меня есть «Деятельности», и я чувствую, что это довольно неприятно, как я делаю всю свою обработку событий, создание / обновление пользовательского интерфейса иобщение с моими данными постоянства в единую активность.Это делает мои Деятельности чрезвычайно «толстыми», также из-за того, как реализованы обработчики событий, у меня много классов внутри других классов (я привык к идее один файл => один класс).Я пытался разделить некоторые коммуникации с внешним веб-сервисом на Сервисы, но теперь совершенно уверен, что это лучший способ сделать это.

Какие шаблоны хорошо подходят при разработке Android, и вы хотите разделить обязанности.Я много работал с паттерном Silverlight MVVM, я ищу что-то похожее, что хорошо подходит для среды Android.

Ответы [ 3 ]

0 голосов
/ 16 февраля 2011

Я являюсь разработчиком Android-Binding , Open Source Framework помогает реализовать MVVM в Android.Это очень новый проект, но я надеюсь получить больше опыта и опыта, чтобы его можно было улучшить.Возвращаясь к вашему вопросу, я написал несколько простых вводных / учебных пособий по MVVM с привязкой Android:

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

== Обновление ==

Статья о применении шаблона MVVM в Android:размещено в Code Project:

0 голосов
/ 16 февраля 2011

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

Убедитесь, что в xml помещено как можно больше элементов макета, например, отображаемые состояния для включенных, нажатые отключенные изображения или списки состояний цветов для включенных отключенных цветов.

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

Если вам не нравится, как создаются специальные слушатели onlick (множество анонимных классов), посмотрите на ndroid: onclick , который позволяет вам указать, какой метод следует вызывать, если пользователь нажимает просматривать прямо в файле макета XML, как это делается в некоторых веб-инструментах.

0 голосов
/ 16 октября 2010

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

В общем, деятельность должна просто обрабатывать / создавать интерфейс и делегировать бизнес-логику или другие действия другим классам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...