[БЕЗ_ЗВУКА] [БЕЗ_ЗВУКА] Давайте поговорим с вами о выборе идентификаторов. Выбор имён для тех сущностей, которые порождает программист, очень важен, именно здесь проявляется его творческая натура, его искусство программирования. Тем не менее, нужно следовать определённым соглашениям. Во‐первых, модуль должен называться коротко, записываться только маленькими буквами и без подчёркиваний желательно. Классы называются пространно, это много слов, каждое слово пишется с большой буквы. Исключения — это тоже класс, для них следует такое же соглашение. Функции‐идентификаторы записываются одинаково: несколькими словами, каждое слово разделяется знаком подчёркивания. При этом иногда используют трудночитаемые наименования, когда каждое слово с большой буквы, но первая буква обязательно маленькая. Далее, глобальные константы модуля пишутся большими буквами, чтобы их чётко отличать, что это — глобальное имя. Следом, символ подчёркивания. Если у вас символ подчёркивания в начале, то значит, что это функция или некий атрибут для внутренних нужд. Если вы увидели символ подчёркивания в конце имени, это говорит о том, что программист попытался избежать конфликта с каким‐то зарезервированным словом. Вы можете использовать это точно так же. Если у вас два символа подчёркивания в начале, то это — скрываемая функция или атрибут, и если два символа подчёркивания и в начале, и в конце, то это особенная функция с особенным использованием, так называемый «магический метод». Самим изобретать магические методы не следует. Глобальные переменные, про них нельзя не сказать отдельно. Это плохой стиль, их нужно избегать везде, где это только возможно. Они не только мешают воспринимать функции, потому что у функций возникают какие‐то побочные эффекты, они начинают зависеть от непредсказуемых обстоятельств. А ещё они мешают распараллеливать код. Давайте посмотрим на пример красивого кода. Ну вот, можете посмотреть на то, как наименован класс, как в конструкторе init слово class_ с символом подчёркивания избегает конфликта с зарезервированным словом, внутренняя переменная с символом подчёркивания в начале, публичный метод — он с символом подчёркивания между двух слов, слова записаны маленькими буквами. Ну всё очень просто и привычно, и читабельно. Давайте рассмотрим ещё некоторые замечания. Во‐первых, иногда бывают конфликты стиля. Например, у вас есть модуль, и есть некая функция, которую вы хотите в этот модуль вставить. Но ваша функция внутри отличается по стилю. Вы должны согласовать это как минимум так, чтобы API выглядел согласованно, чтобы пользователь этого программного кода видел все имена в одном стиле. Ну и последнее: имена должны содержать только символы ASCII и означать только английские слова. На этом всё. [БЕЗ_ЗВУКА] [БЕЗ_ЗВУКА]