Переменная экземпляра: сам по сравнению с

я сфокусировался бы сначала на Ваших индексах, чем сделали, чтобы администратор сервера посмотрел на Вашу ОС, и если все, что не помогает ей, могло бы быть время для основной/ведомой конфигурации.

Это правда. Другая вещь, которая обычно работает, состоит в том, чтобы просто уменьшить количество данных, с которыми это неоднократно работало. Если у Вас есть "старые данные" и "новые данные" и 99% Вашей работы запросов с новыми данными, просто переместите все старые данные в другую таблицу - и не смотрите на него;)

-> Взглянули на разделение .

175
задан evuez 13 September 2015 в 13:18
поделиться

3 ответа

Запись @age напрямую обращается к переменной экземпляра @age . Запись self.age указывает объекту на отправку себе сообщения age , которое обычно возвращает переменную экземпляра @age , но может делать любое количество других вещей. в зависимости от того, как метод age реализован в данном подклассе. Например, у вас может быть класс MiddleAgedSocialite, который всегда сообщает свой возраст на 10 лет моложе, чем он есть на самом деле. Или, что более практично, класс PersistentPerson может лениво читать эти данные из постоянного хранилища, кэшировать все свои постоянные данные в хэше.

255
ответ дан 23 November 2019 в 20:27
поделиться

Разница в том, что он изолирует использование метода из его реализации. Если реализация свойства должна была измениться - скажем, сохранить дату рождения, а затем вычислить возраст на основе разницы во времени между настоящим моментом и датой рождения - тогда код в зависимости от метода не нужно изменять. Если он использовал свойство напрямую, то изменение необходимо было бы распространить на другие области кода. В этом смысле использование свойства напрямую более хрупко, чем использование интерфейса, предоставляемого классом.

23
ответ дан 23 November 2019 в 20:27
поделиться

Нет никакой разницы. Я подозреваю, что это было сделано только для документальной ценности того, что self.age и other_person.age рядом друг с другом.

Я полагаю, что использование действительно позволяет фактическому получателю получить быть написанным в будущем, что может делать что-то более сложное, чем просто возвращать переменную экземпляра,

2
ответ дан 23 November 2019 в 20:27
поделиться
Другие вопросы по тегам:

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