Как организовать классы? На сайте есть страницы:Страница 1Страница 2 В обоих нужно доставать данные из базы, но всегда разными способами. Т.е. методы будут всегда разные и их обобщение создаст громоздкий код И тут 2 идеи:Создавать нэймспейс mysql и туда добавлять классы Создавать нэймспейс с названием страниц и добавлять класс mysql Но оба варианта плохо выглядят. Как можно с минимум подключений к бд и минимальными костылями организовать это?
Один из способов организации классов в данной ситуации может быть использование паттерна проектирования Repository. Этот паттерн позволяет абстрагировать доступ к данным из базы данных и создать единый интерфейс для работы с данными на разных страницах.
Вы можете создать отдельный класс репозитория для каждой страницы, в котором будет реализована логика доступа к данным из базы данных. Таким образом, каждая страница будет иметь свой собственный класс репозитория, который будет содержать только необходимые методы для работы с данными на этой странице.
Примерно так может выглядеть организация классов:
Класс RepositoryPage1 для работы с данными на странице 1Класс RepositoryPage2 для работы с данными на странице 2
Эти классы могут быть объединены в одном неймспейсе, чтобы сделать структуру проекта более организованной.
Такой подход позволит минимизировать количество подключений к базе данных и избежать громоздкого кода. При необходимости, вы также сможете использовать интерфейсы и наследование для дальнейшей структуризации и расширения кода.
Один из способов организации классов в данной ситуации может быть использование паттерна проектирования Repository. Этот паттерн позволяет абстрагировать доступ к данным из базы данных и создать единый интерфейс для работы с данными на разных страницах.
Вы можете создать отдельный класс репозитория для каждой страницы, в котором будет реализована логика доступа к данным из базы данных. Таким образом, каждая страница будет иметь свой собственный класс репозитория, который будет содержать только необходимые методы для работы с данными на этой странице.
Примерно так может выглядеть организация классов:
Класс RepositoryPage1 для работы с данными на странице 1Класс RepositoryPage2 для работы с данными на странице 2Эти классы могут быть объединены в одном неймспейсе, чтобы сделать структуру проекта более организованной.
Такой подход позволит минимизировать количество подключений к базе данных и избежать громоздкого кода. При необходимости, вы также сможете использовать интерфейсы и наследование для дальнейшей структуризации и расширения кода.