xam1816
У объекта есть границы, отделяющее его внутреннее состояние от всего другого, что не является этим же объектом. Соответственно объект занимает какое-то пространство.
У объекта есть поведение - способность изменять свое состояние. Под состоянием подразумевается его характеристики, свойства, данные
Объект сообщается с внешним миром. Он получает сообщения, реагирует, отправляет сообщения.
Вот с этого момента и начались все мои приключения.
Как я понимаю объект:
Объект: Телевизор(42 дюйма, 10кг, черный, выключен)
Свойства:
размер диагонали (число),
вес (число),
цвет (строка),
состояние (включен, выключен - логический),
кнопка вкл/выкл (объект типа Кнопка),
кнопка громкости (тише, громче, объект типа Кнопка)
Функции:
1. Включить,
2. Выключить
3. Переключить канал вперед
4. Переключить канал назад
5. Повысить громкость
6. Понизить громкость
Объект: Менеджер_Работы_С_Записями_Базы_Данных(…)
Свойства:
данные для формирования записи (словарь)
айди записи (число)
фильтр для получения разного набора записей (строка, число, дата и тд)
Функции:
1. Создать запись на основе “данные для формирования записи”
2. Получить запись на основе “айди записи”
3. Обновить данные записи на основе “айди записи” и “данные для формирования записи”
4. Получить набор записей на основе “фильтр для получения разного набора записей”
3. Удалить запись на основе “айди записи”
xam1816
Скажите, какие объекты вы можете выделить в вашей программе?
Я выделяю следующие объекты:
1. Объекты моделей sqlalchemy - описывают таблицу БД как объект, состоящий из полей таблицы с описанием ограничений и значений по умолчанию, связей и внешних ключей.
2. Объект - хранилища библиотеки pydantic, которые используются для валидации данных. В моем случае не имеют собственных методов, только встроенные.
Эти объекты, по сути, хранят необходимый для работы набор полей из объектов моделей sqlalchemy. Служат для создания нужной кей-велью структуры для сохранения в БД.
3. Объекты - менеджеры, как в описанном “Менеджер_Работы_С_Записями_Базы_Данных”. Являются менеджером, который получает те или иные данные в свое состояние и производит работу с БД, на основе этих данных. Каждый менеджер отвечает за раздел данных, например менеджер работы с разделом “Серверы” или разделом “Договоры с интернет провайдером”. Некоторые являются менеджером работы со связанными по смыслу менеджерами. Например менеджер, который составляет список доступов к серверу, на основе указанных в разделе “Договоры с интернет провайдером” IP адресов.
4. Объект - сессия работы с базой данных. Является частью sqlalchemy
5. Объекты - отчеты. Формируют отечты в разных форматах, на основе переданных в них данных из БД.
Примерно так.