![]() |
Модераторы: javastic |
![]() ![]() ![]() |
|
spyswamp |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 349 Регистрация: 18.8.2006 Репутация: 4 Всего: 7 |
День добрый.
Задача творческая. Есть, скажем, некоторый список данных. Пусть это будем map. Есть программа с несколькими Activity, которым в тот или иной момент времени требуется доступ к этому map'у: получение данных, изменение данных. Режим работы синхронный, т.е. особо можно не париться насчет многопоточности. Так вот. Как вы организовываете подобные вещи? Для начала я использовал обычный singleton, который предоставлял интерфейс для работы с этим самым map'ом. А все Activity хватали instance и работали с объектом когда им требуется (в частности, когда я тыкал по кнопкам в программе). Но мне кажется, это немного моветон. Была еще идея хранить данные в главной Activity, но это немного противоречит понятиям разделения данных и проекции для отображения. Плюс, в этом случае, кидаться данными между Activity тоже выглядит подозрительным. Поэтому на таком простом примере хочу поучиться. Ибо на практике я пока видел только адовые решения Java-"программистов", которые по криворукости сравнимы разве что с безрукими. А в особенности java-приложений, само-собой, надо вникать. Спасибо за внимание. -------------------- - why you call it beta? - cuz it's betta then nothin' |
|||
|
||||
spyswamp |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 349 Регистрация: 18.8.2006 Репутация: 4 Всего: 7 |
60 просмотров и ни одного ответа. Признаться, я удивлен. Тут есть вообще программисты?
![]() -------------------- - why you call it beta? - cuz it's betta then nothin' |
|||
|
||||
ivanovpv |
|
|||
![]() Варвар ![]() ![]() Профиль Группа: Участник Сообщений: 639 Регистрация: 26.1.2005 Где: Москва Репутация: 9 Всего: 28 |
Здесь нет программистов - сплошь и рядом developer'ы
![]() Я организовываю подобное безобразие следующим образом: 1) Объявляю собственный объект Application (требуется его декларация в AndroidManifest.xml) 2) Далее, по сути уже полагаюсь на ось, которая мне гарантирует, что объект Application всегда один - фактически получается паттерн Singleton 3) Ну а коли так, то уж дальше дело техники как организовать Небольшое уточнение - в Android очень удобно хранить данные в объекте типа Bundle - а в него уже можно вкладывать все что угодно, то есть в классе который будет хранить данные достаточно держать ссылку на Bundle и ложить туда то что нужно (особенно если это всякая короткоживущая мелочь) -------------------- Aut viam inveniam aut faciam |
|||
|
||||
spyswamp |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 349 Регистрация: 18.8.2006 Репутация: 4 Всего: 7 |
ivanovpv, понятно, суть та же - singleton. Кстати, спасибо за наводку, почитаю про этот Application.
![]() Про Bundle я в курсе. Это как раз между Activity (грубо говоря) ими кидаться хорошо. -------------------- - why you call it beta? - cuz it's betta then nothin' |
|||
|
||||
APXEOLOG |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 12.4.2007 Где: Мурманск Репутация: нет Всего: 1 |
А чем плох Singleton? Не вижу смысла городить тонны оберточного кода если есть проверенный способ.
--------------------
Ученые долго не знали как назвать частоту.Потом так и назвали Hz. |
|||
|
||||
spyswamp |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 349 Регистрация: 18.8.2006 Репутация: 4 Всего: 7 |
APXEOLOG, а ничем. Вот тот же Application - такой же синглтон, только к нему есть базовые функции доступа в остальных классах.
-------------------- - why you call it beta? - cuz it's betta then nothin' |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Android | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |