Как объяснить атрибуты класса и атрибуты экземпляра?

PythonJunior+ООП и Data ModelТеорияpythonoopdata-modeldunderооп-и-data-modelклассы

Что хотят услышать интервьюеры:

Ответ для уровня Junior+: объяснение должно включать не только что такое атрибуты класса и атрибуты экземпляра, но и когда его использовать, когда не использовать и как проверить корректность.

Ответ:

Ситуация: нужно спроектировать класс, DTO, доменную модель или расширить поведение объекта без хака. В такой ситуации нужно найти источник проблемы, измерить эффект и выбрать минимально достаточное решение.

Пример:

class User:<br>&nbsp;
&nbsp;
def __init__(self, name):<br>&nbsp;
&nbsp;
&nbsp;
&nbsp;
self.name = name<br>&nbsp;
&nbsp;
def __repr__(self):<br>&nbsp;
&nbsp;
&nbsp;
&nbsp;
return f"User({
  self.name!r
}
)"

Хороший ответ: звучит через практику: ограничение, пример, типичная ошибка, тест или production-последствие.

Источники

Похожие вопросы