Стркутура приложения, помогите разобраться

Интерфейс, диалоги, темы, стили, меню
Ответить
парень
Сообщения: 223
Зарегистрирован: 30 мар 2013, 22:52

Стркутура приложения, помогите разобраться

Сообщение парень » 06 янв 2014, 10:09

Здравствуйте форумчане. (извините если раздел не правильный выбрал)

Немного о структуре приложения.
MainActivity - Содержит DrawerLayout и распределяет выбранный раздел-фрагмент. (Иными словами скопипастил с гуглдевелопа и добавил распределение на фрагменты-файлы).

В каждом фрагменте Свое окно, я хз как называть правильно. Иными словами эти фрагменты они как активити чтоли, ну в каждом свой функционал приложения. В каждом есть ссылки(intent?) на новое активити(добавление/удаление данных приложения -из них только "назад","отмена","ок") или диалог фрагменты(фильтр, дата,ввод чисел). - всего три файла с параметрами на вход в зависимости от id разный текст и т.д. нажатие на ту или иную кнопку уходит в вызывающий фрагмент через onSomeListener(данные возвращаю) .
один диалог вызывается из 4 фрагментов и 4 активити (будет больше) - просто диалог с выводом текста по id и кнопочками Ок,Отмена.
еще один вызывается из 2 фрагментов и трех активити (ввод чисел красивой клавиатурой).
и один пока только из одного - выбор "периода": день,неделя,месяц,год - хотел через спиннер, но в диалоге отображается так : "день Сегодня", "Неделя 06.01 - 13.01", "Месяц Январь","Год 2014", а на экране надо так : "День","Неделя","Месяц","Год", а через спиннер не смог "урезать" выбранный вариант.

Добавлю другими словами. Есть активити - оно своего рода как селектор фрагментов. В каждом фрагменте множество методов для работы приложения в данном "окне". Из каждого фрагмента есть направление на "свое"(отдельный файл) активити с целью "добавить","редактировать" информацию в БД и этого "окна(раздела)" соответственно. И диалог-фрагменты - что-то выбрать, или что-то ввести.

Все все операции с базой данных в отдельном классе DB. (около 30 методов, в основном SELECT)
Есть запросы с 2-5 inner join, некоторые и с подзапросами на подсчет суммы по столбцу всей базы с группировкой. При 100000 записях тормозит - буду еще как то оптимизировать... - но здесь я уже не темный лес :)

Как то так. И что-то мне подсказывает что подобная схема приложения не совсем верна... Поделитесь своими примерами ПРАВИЛЬНОЙ на ВАШ взгляд структуры.

Спасибо.
Мой первенец: MyMoney. Менеджер расходов

Бьем рекорды русских топов :)

Могу ответить на любые вопросы по маркетингу и развитию.

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Стркутура приложения, помогите разобраться

Сообщение altwin » 06 янв 2014, 12:45

Попробуйте сделать так, как написали. Походу разберетесь, что это такое и возможно сформулируете свой вопрос. По сути - никакой структуры в том, что вы написали нет. Вы не понимаете того, о чем пишете и потому ответить вам почти не возможно. Начните делать то о чем пишете не важно как, но доведите до работающего состояния. Из того, что получится -составите диаграмму классов и UI, тогда будет о чем говорить.
Изображение

парень
Сообщения: 223
Зарегистрирован: 30 мар 2013, 22:52

Re: Стркутура приложения, помогите разобраться

Сообщение парень » 06 янв 2014, 13:47

все таки криво написал ;) не умею доносить инфу ;)

Я так как написал уже сделал, все работает как и надо.
Структура не структура, возможно я не совсем верное определение использую, ну суть вопроса то разве не ясна?

Напишите структуру правильную на Ваш взгляд. Ткните в ссылку на правильное на Ваш взгляд структурирование приложений.

У меня вот например все "тело" данного раздела (в нем список, обработчики, при нажатии один скрывается, другой открывается(их несколько), добавление в актионбар "своих кнопок") и т.д. все в одном классе типа SherlockFragmet. я не знаю правильно ли это?
Мой первенец: MyMoney. Менеджер расходов

Бьем рекорды русских топов :)

Могу ответить на любые вопросы по маркетингу и развитию.

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Стркутура приложения, помогите разобраться

Сообщение altwin » 06 янв 2014, 14:03

парень писал(а):все таки криво написал ;) не умею доносить инфу ;)

Я так как написал уже сделал, все работает как и надо.
Структура не структура, возможно я не совсем верное определение использую, ну суть вопроса то разве не ясна?

Напишите структуру правильную на Ваш взгляд. Ткните в ссылку на правильное на Ваш взгляд структурирование приложений.

У меня вот например все "тело" данного раздела (в нем список, обработчики, при нажатии один скрывается, другой открывается(их несколько), добавление в актионбар "своих кнопок") и т.д. все в одном классе типа SherlockFragmet. я не знаю правильно ли это?
нет суть вопроса не ясна. о каком приложении вообще речь? а какую задачу? Сферический конь в вакууме вами описанный построен не так, как на мой взгляд должен был бы... мой взгляд видит его зеленым с крылышками... Вы не слова не говорили о конечной цели. В google сотни книг на тему архитектуры и в каждой из них по 1000+ страниц, как вы предполагаете вам тут в ответе изложить теорию? То, что вы пишете, у меня ответ один - работает - значит правильно. С точки зрения архитектуры помещать все в один класс - нет. Но каким образом вам конкретно сказать почему нет и что можно изменить, если я не имею экстрасенсорных способностей? для этого придумали UML. Глядя на это я могу видеть "структуру" и сказать о своих впечатлениях, а то о чем говорите вы не подразумевает ответа - только рассуждения.

P.S. по сути - каждую задачу нужно выделять в отдельный класс, но это такая очевидная мелочь с точки зрения архитектуры приложения, что я не совсем уверен нужно ли говорить об этом.
Изображение

voven
Сообщения: 1
Зарегистрирован: 10 янв 2014, 22:57

Re: Стркутура приложения, помогите разобраться

Сообщение voven » 10 янв 2014, 23:38

Доброго времени суток. Я пока что новичок в этом деле, и вот пока прохожу уроки на одном из сайтов, и изучаю урок: "Контексное меню". В уроке сказано, ну нужно создать два элемента TextView, и код к ним в MainActivity, вот такой
public static final int IDM_OPEN = 101;
public static final int IDM_SAVE = 102;

final TextView textview = (TextView)findViewById(R.id.textView);
registerForContextMenu(textview);

@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo)
{
super.onCreateContextMenu(menu, v, menuInfo);
menu.add(Menu.NONE, IDM_OPEN, Menu.NONE, "Открыть");
menu.add(Menu.NONE, IDM_SAVE, Menu.NONE, "Сохранить");
}
меню такое:
Изображение

а в Eclipse строчка registerForContextMenu(textview); выделяется красным, значит что то не так, только вот что? Помогите пожалуйста ...

парень
Сообщения: 223
Зарегистрирован: 30 мар 2013, 22:52

Re: Стркутура приложения, помогите разобраться

Сообщение парень » 12 янв 2014, 20:33

А ты навели мышку на красную строчку, всплывет всплывающая подсказка, там все написано. Можно загуглить если не понятно что там написано.

Пс. Сам новичек 2 уровня ))
Мой первенец: MyMoney. Менеджер расходов

Бьем рекорды русских топов :)

Могу ответить на любые вопросы по маркетингу и развитию.

Ответить