Является ли установка нескольких переменных с помощью установщика свойств плохой практикой кодирования? - PullRequest
0 голосов
/ 05 декабря 2018

Во время проверки кода для моего модуля поиска электронной почты сотрудник предложил адрес электронной почты в качестве свойства, а не атрибута экземпляра.Поскольку в установщике необходимо обновить 2 переменные, мне интересно, не может ли использование свойства быть плохой практикой кодирования.

Расширение этого ответа на другой вопрос.https://stackoverflow.com/a/18714545/7476434

Текущий код:

def __init__(self):
    # Get an initial email address and mailbox.
    self.mailbox_name = f'pytest{str(self.timestamp.get_timestamp_years())}'
    self.email_address = f'{self.mailbox_name}@xxxx.mail'

def set_custom_email_address(self, email_address):
    """Updates the variables self.email_address and self.mailbox_name so user can retrieve email for a custom email address.

    :param email_address: An email address ending in @xxxx.mail.
    """

    self.email_address = email_address
    self.mailbox_name = (email_address.split('@xxxx.email'))[0]

Все остальные методы этого класса используют атрибут экземпляра self.email_address для возврата содержимого почтового ящика.Пользователям никогда не нужно извлекать или передавать self.email_address методам класса.

...