Размещение объявлений переменной экземпляра

Ошибка, которую я сделал, заключалась в том, что я пропустил несколько предварительных условий python3.7. Загрузка пакетов, перечисленных в: Python3: ImportError: Ни один модуль с именем '_ctypes' при использовании значения из многопроцессорной обработки модуля и последующей переустановке python 3.7 не получил установленный pip. Теперь, когда я вхожу в pip3.7 -V, я получаю «pip 18.1 из /usr/local/lib/python3.7/site-packages/pip (python 3.7), который мне нужен.

10
задан osp70 20 October 2008 в 15:18
поделиться

4 ответа

Из-за "Программы к 'интерфейсу', не 'реализации'". (Банда Четыре 1995:18) (http://en.wikipedia.org/wiki/Design_Patterns#Introduction.2C_Chapter_1), некоторые люди предпочитают объявлять переменные экземпляра у основания класса. причем теория состоит в том, что пользователь класса больше интересуется тем, что они могут сделать с классом (методы) в противоположность тому, как что-то сделано (переменные). Размещение методов наверху класса выставляет их сначала пользователю, когда они смотрят на код.

17
ответ дан 3 December 2019 в 14:26
поделиться

Нет никакой особенно "хорошей" причины того, чтобы сделать его так или иначе. Единственная вещь, которая действительно имеет значение, состоит в том, что все на том же проекте делают это тот же путь.

Однако размещение их наверху намного более распространено, по моему опыту, и является практикой, рекомендуемой инструкциями по стилю Java, таким образом, это - то, с чем я пошел бы.

Можно осуществить выбранную конвенцию с автоматическим средством форматирования исходного кода, таким как Драндулет или то, что идет с Eclipse.

14
ответ дан 3 December 2019 в 14:26
поделиться

Это - главным образом (если не полностью) персональное предпочтение. Мне нравятся они наверху, но я не мог действительно привести лучшую причину для него затем, что это - способ, к которому я привык.

1
ответ дан 3 December 2019 в 14:26
поделиться

Большинство переменных экземпляра закрытые , поэтому я стараюсь помещать их внизу, потому что я объявляю элементы в порядке уменьшения видимости. Если бы я объявил их в порядке увеличения видимости, они были бы наверху, что тоже разумно.

Что мне не нравится, так это наличие частных полей, за которыми следуют общие поля, за которыми следуют частные методы. Если я разрабатываю клиентский класс, мне нужны все общедоступные части вместе (поскольку это все, что меня интересует)

1
ответ дан 3 December 2019 в 14:26
поделиться
Другие вопросы по тегам:

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