Должен ли я отказаться от грамматической правильности, называя мои функции, чтобы предложить регулярность?

Я знаю, что уже есть много решений, но я предполагаю, что этот небольшой и простой скрипт может быть полезен для демонстрации концепции:

// makeSequencer will return a "sequencer" function
var makeSequencer = function() {
    var _count = 0; // not accessible outside this function
    var sequencer = function () {
        return _count++;
    }
    return sequencer;
}

var fnext = makeSequencer();
var v0 = fnext();     // v0 = 0;
var v1 = fnext();     // v1 = 1;
var vz = fnext._count // vz = undefined
3
задан Stack Danny 22 March 2019 в 10:58
поделиться

2 ответа

На мой взгляд, переменная - это единое целое. Может быть, эта сущность является совокупностью других сущностей, таких как массив или коллекция, и в этом случае имеет смысл дать ей имя во множественном числе, например, набор из Shape объектов можно назвать shapes. Несмотря на это, это все еще один объект. Глядя на это таким образом, грамматически приемлемо называть его единственным. В конце концов, is_shapes_initialized на самом деле означает «инициализируется ли переменная« формы »?»

По той же причине мы говорим « Багамские острова » или « Нидерланды - [ 115] ", потому что мы имеем в виду единственную страну, а не какую-либо множественную единицу, из которой она состоит. Так что да, is_shapes_initialized можно считать грамматически правильным.

0
ответ дан Leo Aso 22 March 2019 в 10:58
поделиться

Это скорее вопрос личного вкуса. Я бы порекомендовал поставить "is" перед функциями, которые возвращают логическое значение. Это будет выглядеть примерно так:

bool is_time_initialized();
bool is_random_initialized();
bool is_shapes_initialized();

Это облегчает их поиск и поиск, даже если они не являются грамматически правильными.

Вы можете найти функции, используя «are», чтобы показать их множественное число в таких местах, как приложение DuckDuckGo, с:

areItemsTheSame(...)
areContentsTheSame(...)

В приложении DuckDuckGo также используется «is», чтобы показать возвращаемые функции логические и логические переменные:

val isFullScreen: Boolean = false
isAssignableFrom(...)

В OpenTK, графической библиотеке C #, я также нашел использование «are»:

AreTexturesResident(...)
AreProgramsResident(...)

В том же LibT OpenTK они используют » «исключительно для функций, которые возвращают логические и логические переменные:

IsEnabledGenlock(...)
bool isControl = false;

Любое использование может работать. Использование «are» во множественном числе имело бы больше смысла грамматически, а использование «if» во множественном числе могло бы иметь больше смысла для эффективности или упрощения булевых функций.

0
ответ дан DataDeer.net 22 March 2019 в 10:58
поделиться
Другие вопросы по тегам:

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