Вы updateDatabaseFields()
или udDBFields()
? Это Open Mike, серия дискуссионных сообщений, чтобы бросить кота среди голубей. Эти сообщения все о вас — мы хотим услышать ваши мнения, идеи и мысли. Мы говорили о префиксах раньше; Теперь давайте поговорим о реальных словах, которые вы используете для именования объектов AS3.
Вы сокращаете?
Вы произносите полные слова имен ваших переменных и функций или используете какие-то сокращения?
checkAllOptionsHaveBeenEntered()
против chkOptsEntd()
Возможно, вы используете смесь: сокращение для обычных кодирующих слов (например, num вместо числа) и сокращение для других.
numberOfTrophies
против numTrophies
против numTrophies
Как вы называете Booleans?
Booleans: так как они всегда либо истинны, либо ложны, мне нравится произносить их так, чтобы на них всегда можно было ответить «да» или «нет».
Примеры: hero.hasTheSword
, hero.hasTheSword
Соглашения о кодировании UrbanSquall идут дальше и настаивают на том, что логические имена всегда начинаются с is
, has
или can
.
А что насчет тебя?
Как вы называете свои функции?
Функции и методы обычно предполагают выполнение чего-либо, поэтому обычно имеет смысл давать им имена, которые являются глаголами (или парами глагол-субъект).
Примеры: refresh()
, undo()
, restartGame()
, checkFormDataIsComplete()
Соблюдаете ли вы это как соглашение, или есть случаи, когда вы не можете использовать глагол в имени вашей функции?
Когда функция требует аргументов, вы пытаетесь прояснить из названия, какие аргументы вы ожидаете?
Например: pingPongBall.move(x, y)
против pingPongBall.moveTo(x, y)
Иногда функция требует совершенно разных аргументов, что может привести к путанице. Например, предположим, у нас есть объект gun
который стреляет данной bullet
в заданную target
. Есть несколько вариантов того, что мы могли бы назвать этот метод, в том числе:
1
2
3
4
|
gun.fire(bullet, target);
gun.fireAt(target, bullet);
gun.fireAtTarget(target, bullet);
gun.fireBulletAtTarget(bullet, target);
|
Что лучше?