Есть ли какое-либо правило именования переменных или функций? Например, как назвать эту функцию?
function KillUnit takes unit target, unit hurter returns boolean
        return UnitDamageTarget(hurter, target, (GetUnitState(target, UNIT_STATE_MAX_LIFE) * 2), true, false, null, null, null)
    endfunction

Принятый ответ

название KillUnit не совсем подходит
я бы назвал killUnitFromUnit или просто killFromUnit
Пушистый, а можно проще
define KillUnit(a) = KillUnit2(a)
по поводу правил
название должны соответствовать выполняемой функции
например если логическая переменная хранит жив юнит или нет то называться она должна isAlive или как то так
+ различные правила написания для различных языков
например в java первое слово в названии функции/переменной пишется с маленькой буквы а остальные с большой, а в названиях классов все слова с большой
в jass официальных соглашений нету но близы писали в функциях каждое слово с большой а константы большими буквами разделяя слова _

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
28
7 лет назад
0
DracoL1ch, бывает так что когда что то делаешь вспоминаешь что нечто похожее делал несколько месяцев назад и можно просто скопипастить оттуда кусок но для этого нужно понять какой кусок копипастить и что в нём поменять чтобы всё работало
давным давно когда я называл переменные в алфавитном порядке у меня была с этим куча проблем
0
16
7 лет назад
0
ну у меня стиль сильно скакал, в зависимости от года, но прочитать старое обычно не было проблемой. А локалки - однобуквенный алиас, unit -> u, trigger -> t, timer (if trigger exists) -> tt, integer i, eventid eid, etc
2
30
7 лет назад
2
На хайве на основе naming convention, принятого в гугле (по С++) и того, как писали код сами близы признан общим стандартом следующий подход к именованию:
ModuleName
StructName
LibraryName
ScopeName
FunctionName
methodName
variableName		// Любые, использование цифр допускается везде, кроме первого символа.
CONSTANT_NAME		// Использование цифр допускается везде, кроме первого символа.
DEFINED_VALUE		// Кроме перехвата функций.

// Знаки "=", "+" и "-" выделяются с обеих сторон пробелами, "*" и "/" не выделяются.
x = 1 + 1*3 - 6/2*6

// Скобки всегда ставятся максимально близко к содержащемуся в них выражению.
y = num1*((num2 - CONSTANT_1)/num3) + num2/num1

// Отступ при увеличении вложенности - 4 пробела.

// Операторы сравнения выделяются пробелами с обеих сторон.
// Пробелами отделяются "if"/"elseif" и "then" от условия между ними.
// Логические операторы "not", "and" и "or" также обособляются с обеих сторон.
// Каждое условное ветвление размещается на новой строке.
if (num1 == num2) and not (num2 < num3) then
	// ...
elseif (num1 != num2) or (num2 > num3) then
	// ...
else
	// ...
endif
return (num1 == num2) and not (num2 < num3)
0
16
7 лет назад
0
ох и ярость берет за эти "правила", писанные как для взрослых. особенно умиляют 4 пробела. Хоспади, когда же наступит будущее, где табы будут во всех редакторах одинаковыми.
0
28
7 лет назад
0
где табы будут во всех редакторах одинаковыми.
мечтай
бывают даже пробелы разного размера
боюсь даже представить что лет через 10 придумают
0
15
7 лет назад
0
Так как по работе приходиться придерживаться naming conventions от Майкрософта, то обычно использую их и в Жассе.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.