Введение
Прежде всего, это очень просто то, что вы нам написали. Вы должны начать указывать эти вещи и получить более подробную информацию. Например, для плана диеты вы можете подумать о свойствах такого плана. Свойства, например, длина плана, необходимое вам питание и, возможно, некоторые спортивные упражнения. Просто несколько образцов. Затем вы можете разделить питание на один стол и так далее. Теперь вы можете подумать о том, хотите ли вы выполнять всю работу с базами данных самостоятельно или использовать фреймворк. На самом деле вся работа с базами данных в MySQL и т. Д. Выполняется на веб-сервере из-за утечек в безопасности клиента (декомпиляция, чтение трафика, ...). Если вы хотите сохранить данные в локальном хранилище или в локальной базе данных (SQLite будет вашим выбором), вам также следует подумать, хотите ли вы использовать для этого API (например, RoomAPI от Android Jetpack )
Общая вещь
Вы должны получить четкое представление о том, какую архитектуру вы хотите использовать. Вы можете хранить данные на веб-сервере и передавать их через веб-интерфейсы, например, REST с JSON или XML. Вы также можете хранить данные на локальном устройстве в файле или в базе данных (в основном это также файл с конкретными требованиями к интерфейсу). Вы должны решить, что вам требуется обмен на нескольких устройствах или только на одно устройство самостоятельно.
Планирование структур
После того, как вы знаете, какую архитектуру вы хотите использовать, вы можете начатьпланирование. Прежде всего, я бы предложил вам получить абстрактное представление о вашем проекте. Это означает, что вы просто записываете то, что хотите иметь, а затем начинаете записывать соответствующие свойства. Для плана диеты это может быть название плана, продолжительность, необходимое питание и так далее ... После этого вы можете знать, о, ладно, мне также нужен стол с едой, и вы увидите (автоматически), чтобудет связь. Если вы видите связь, просто нарисуйте линию, соединяющую их. В идеальной ситуации вы уже знаете отношение этой связи (Один ко многим, Много к одному, Много ко многим, Один к одному, см. Статью stackoverflow: Разница между один ко многим, многие к одномуи многие ко многим? ).
Реализация ваших структур
Все, что я делаю, изготавливается вручную
В случае, если вы хотите сделать все самостоятельно, вы можете использовать графический инструмент для баз данных для проектирования вашей базы данных. Вы также можете использовать команды, чтобы сделать это, что требует гораздо больше усилий. Вы можете принять решение самостоятельно и по своему усмотрению.
Pro для графического интерфейса пользователя
- Простота в использовании
- Быстрое создание таблиц
Contra для графического интерфейса
- Может использовать некоторые загадочные имена для индексов и ключей
- "Может не позволить вам заглянуть за кулисы"
Я полагаюсь на API
Вы также можете положиться на API. Это часто означает, что вы можете запрограммировать класс в соответствии с вашим планом, затем аннотировать его, и соединения / отношения будут управляться API. Такой уровень абстракции - Room for Android или Doctrine для PHP, это всего лишь примеры, и их гораздо больше. Заключение Как вы получаете данные в базу данных и из базы данных - ваша вещь. Вы можете положиться на простое использование API или сделать все самостоятельно. Это должно быть небольшое руководство для понимания дизайна базы данных.
PS: Если у кого-то есть что-то для редактирования, сделайте это! Буду признателен за это!
Ура Тарик.