Как правильно выделить объект и класс в ООП? Везде классы и объекты объясняются через простые примеры, но что если у меня стоит задача разработать для автопарка систему учета выхода автобусов на линии, где будет осуществлена запись в файл данных. Куда входят: дата выхода на линию, время выхода, марка автобуса, его городской номер, номер маршрута, ФИО водителя и т.д. На простых примерах все ясно и понятно, но как быть вот с этим, что здесь будет являться классом? Я предполагаю, что это будет просто объект под названием Info, который содержит в себе все эти данные(поля), но не совсем уверен в этом.

21 Авг 2019 в 06:58
144 +1
0
Ответы
1

В данной задаче классом будет объект "Автобус", который будет содержать все необходимые поля (дата выхода на линию, время выхода, марка автобуса, городской номер, номер маршрута, ФИО водителя и т.д.) и методы для работы с этими данными.
Таким образом, у вас будет класс "Автобус", а объекты этого класса будут представлять конкретные автобусы вашего автопарка. Кроме того, возможно, вам потребуется класс "Система учета", который будет отвечать за запись данных в файл.

Примерный код может выглядеть примерно так:

class Bus:
def __init__(self, date, time, brand, number, route, driver):
self.date = date
self.time = time
self.brand = brand
self.number = number
self.route = route
self.driver = driver
class AccountingSystem:
def __init__(self, file_name):
self.file_name = file_name
def write_to_file(self, bus):
with open(self.file_name, 'a') as f:
f.write(f"{bus.date}, {bus.time}, {bus.brand}, {bus.number}, {bus.route}, {bus.driver}\n")
# Пример использования
bus1 = Bus("2022-03-01", "10:00", "Mercedes-Benz", "123", "15", "Иванов Иван Иванович")
accounting_system = AccountingSystem("bus_events.txt")
accounting_system.write_to_file(bus1)

Каждый объект класса "Автобус" представляет конкретный автобус, а объект класса "Система учета" отвечает за запись информации о выходе автобусов на линию.

20 Апр в 13:10
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 84 727 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир