Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Java Мобильная разработка (Android)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.09.2019, 17:44   #1
Yury609
Новичок
Джуниор
 
Регистрация: 24.09.2019
Сообщений: 2
По умолчанию Совет по архитектуре приложения

Добрый день!
Прошу совет по архитектуре Android приложения.
Итак, есть веб-служба (сервер), которая получает запросы и отсылает ответы в виде XML. XML содержит информацию в виде документа: заголовок + строки. Формат таких документов не стандартизирован, т.к. каждый раз может быть разный набор полей. Поэтому сделать универсальный layout на android нельзя. Плюс приложение должно работать как на планшете (landscape), так и на смартфоне (portrait).
Некоторые поля возможны для редактирования, после изменения поля android должен отослать ответ на сервер и получить обратно обновлённую информацию. Соответственно получается что один и тот же документ может отображаться динамически на одном и том же frame.
Получается, что приложение должно на лету уметь правильно\красиво\оптимально отображать передаваемую информацию.
Как такое можно реализовать? В какую сторону смотреть?
Особенно интересует компонент для представления таблицы (строки документа), чтобы можно было прокручивать информацию вправо-влево, вверх-вниз, и при этом оставались заголовки полей.
Если кто может навести на правильные идеи - welcome!
Спасибо!
На любые наводящие\уточняющие вопросы - с удовольствием отвечу.
Yury609 вне форума Ответить с цитированием
Старый 24.09.2019, 23:47   #2
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Сообщение от Yury609 Посмотреть сообщение
так, есть веб-служба (сервер), которая получает запросы и отсылает ответы в виде XML. XML содержит информацию в виде документа: заголовок + строки. Формат таких документов не стандартизирован, т.к. каждый раз может быть разный набор полей.
Обычно для серьёзных XML данных делают схему, которая описывает их возможную структуру. Иначе могут быть неприятные сюрпризы при работе.
Цитата:
Сообщение от Yury609 Посмотреть сообщение
Прошу совет по архитектуре Android приложения.
Читая Ваш топик складывается впечатление, что читаешь вводние перед предпроектным анализом. Но, если вкратце, нужно определиться:
  • С протоколом обмена (что Вы получаете с сервера и ,что отправляете ему);
  • Что должно делать при ложение с полученными данными и не только перед тем, как выгрузить результат на сервер.

После этого уже можно будет говорить о каких-то архитектурных или технических деталях.

Цитата:
Сообщение от Yury609 Посмотреть сообщение
Особенно интересует компонент для представления таблицы (строки документа), чтобы можно было прокручивать информацию вправо-влево, вверх-вниз, и при этом оставались заголовки полей.
Такие вещи при желании можно легко найти на GitHub или другом подобном ресурсе.

P.S. Только без обид. Если у Вас возникают подобные вопросы, то лучше хорошо подумать, прежде чем заняться самостоятельной разработкой.
Streletz вне форума Ответить с цитированием
Старый 25.09.2019, 11:19   #3
Yury609
Новичок
Джуниор
 
Регистрация: 24.09.2019
Сообщений: 2
По умолчанию

Streletz, попробую ответить:
Цитата:
Сообщение от Streletz Посмотреть сообщение
Обычно для серьёзных XML данных делают схему, которая описывает их возможную структуру. Иначе могут быть неприятные сюрпризы при работе.
Структура XML просто определяет поля, которые должны быть отражены в приложении. Часть полей будет в секции header, часть в lines. Т.к. данные могут переданы из разных таблиц БД, то о какой-то заранее определённой структуре речи быть не может.

Цитата:
Сообщение от Streletz Посмотреть сообщение
  • С протоколом обмена (что Вы получаете с сервера и ,что отправляете ему);
  • Что должно делать при ложение с полученными данными и не только перед тем, как выгрузить результат на сервер.
С сервера приходит XML с названиями полей, со значениями полей + какая-то техническая информация.
Обратно уходит новый XML с названием поля и новым значением. Т.е. изменили поле - отправили обратно на сервер и получили от сервера уже новую порцию данных.
В качестве примера: приходит в приложение заказ продажи. Исправляем дату отгрузки - и с сервера приходит тот же заказ, только уже с изменёнными полями исходя из новой даты отгрузки.
По сути приложение - это "клиент" БД, в которой зашита вся логика обработки данных.

Цитата:
Сообщение от Streletz Посмотреть сообщение
Такие вещи при желании можно легко найти на GitHub или другом подобном ресурсе.
Цитата:
Сообщение от Streletz Посмотреть сообщение
P.S. Только без обид. Если у Вас возникают подобные вопросы, то лучше хорошо подумать, прежде чем заняться самостоятельной разработкой.
Я не обижаюсь. Если бы я был силён в Android разработке - то наверно не обращался бы сюда )))
Ранее я сам реализовывал приложение терминал сбора данных, которое по сути уже делает все что я описал ранее (кроме отображения таблицы. Точнее я её реализовывал на основе TableLayout, что честно говоря не комильфо...). Просто сейчас задача несколько усложнена, требуется "хорошая" дизайнерская составляющая. Как уместить много полей на малом экране при сохранении юзабилити.

Спасибо большое за наводящие вопросы-ответы! ))
Yury609 вне форума Ответить с цитированием
Старый 26.09.2019, 00:20   #4
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Сообщение от Yury609 Посмотреть сообщение
Т.к. данные могут переданы из разных таблиц БД, то о какой-то заранее определённой структуре речи быть не может.
Ну, не надо ля-ля. В XML схемах могут быть описаны структуры данных практически любой сложности. Тем более структура таблиц Вам наверняка известна. Было бы желание разобраться и привести протокол обмена данными в надлежащий вид.
Цитата:
Сообщение от Yury609 Посмотреть сообщение
По сути приложение - это "клиент" БД, в которой зашита вся логика обработки данных.
Читайте теорию про тонкий и толстый клиенты.
Цитата:
Сообщение от Yury609 Посмотреть сообщение
Если бы я был силён в Android разработке - то наверно не обращался бы сюда )))
Ваша главная проблема не в Android. Ваша главная проблема - знание (точнее, незнание) как минимум азов разработки сетевых приложений и ряда смежных областей. Иначе объем топика был бы меньше в разы.

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


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нуждаюсь в актуальных книгах по аппаратной архитектуре и по программной архитектуре Kenny Fox Общие вопросы по программированию, компьютерный форум 1 10.07.2017 01:32
Задача по архитектуре ЭВМ ДаняР Помощь студентам 1 30.10.2016 17:52
нужен совет в проектировании приложения usrjava Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC) 25 16.03.2015 10:29
Приложения для ios. Совет. Heming Помощь студентам 2 10.02.2012 20:03
Дайте совет по разработке приложения step-93 Общие вопросы Delphi 11 18.04.2011 23:48