Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

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

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

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

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

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

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

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

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

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

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

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

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

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

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


09:53.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.