> Хотелось бы что-то похожее на MVC. Чтобы все было логично. Правильно ли будет так?
MVC не подходит для мобила и десктопа. Ибо там не может быть C, такого, как на вебе.
> как вы организуете структуру вашего проекта. Какие пакеты классов вы создаете?
Прежде всего, я создаю обертки для стандартного API. Можно сказать - фреймворк.
На винде выглядит дико писать под голое API ОС и так давным-давно никто не делает, пишут под .NET или хотя бы VCL. На Android это в порядке вещей. Линукс же.
Так как разрабы самой ОС не позаботились об этом, то заботиться приходится самому.
И даже на уровне хелловорлда чувствуется польза от этого, я не пишу
Toast.makeText(this.getActivity(), "Blablabla", 500).show();
Я просто пишу:
MessageBox.show("Blablabla");
А все остальное делает самописный класс MessageBox. Время показа Toast рассчитывается автоматом по длине текста, при этом метод show имеет и гибкие перегрузки с кучей параметров, все те же, что и в нативном Toast.
Для удобства re-use, все подобные классы лучше вынести в отдельный проект, отдельный jarник. А собственно код под этот фреймворк - писать прямо в своем проекте.
В остальном архитектура зависит от задачи, скажем HTTP-библиотека должна иметь классы GetRequest и PostRequest, и высокоуровневый класс HttpClient с контейнером куков, и т.д.
Чтобы быть хорошим архитектором, однозначно нужно рассмотреть максимум готовых фреймворков, чтобы извлечь из них лучшее.