Согласен, со временем я пришел к такого вида конструкции (видимо Java аннотации перед объявлением классов и методов оказали на меня влияние):
(function () {
angular.module('myModule').directive('myDirective', MyDirective)
MyDirective.$inject = ['$scope', '$http']
function MyDirective ($scope, $http) {
// bla bla bla
}
})()
Раньше имел дело только с ant, maven, ivy и немного gradle с xsbt. После них GruntJS мне очень понравился. Думаю, не только тем что он удобен и под него масса плагинов, но еще и самой платформой nodejs.
Я понял вашу точку зрения. Но не могу согласиться с тем, что наличие или отсутствие точек с запятой (про with и eval я не говорю) является признаком говнокодерства. Есть прекрасные примеры из open source, с очень большим количеством коммиттеров, где в style guidelines точки с запятой убраны.
Я веду к тому, что в книгах и рекомендациях лучше объяснять, как работает на самом деле, а не как нравится лектору или писателю учебника. Ставить или не ставить точку с запятой это вопрос сугубо холиварный и не более. Правильно написанная программа работает и так и этак. Поэтому точкам с запятой место в coding style guidelines и я не согласен с вашей фразой:
Это не должно относиться к coding style, это должно быть обязательным.
Оно будет обязательным только тогда, когда будут (хотя маловероятно) внесены в спецификацию соответствующие изменения.
Ваше «ой, если мы введём обязательные точки с запятыми, бедные веб-мастера удавятся от столь сложного синтаксиса», конечно же, убедительнее спецификации языка :)
17-й совет звучит неубедительно. Есть же ASI, являющейся частью спецификации ECMAScript. Слепо надеяться на точки с запятой тоже опасно.
Код ниже:
function sum (a, b) {
return
a + b;
}
Ничего не вернет, ибо вступает в дело ASI.
Вместо того что-бы давать необоснованные, а порой, и вредные советы, лучше бы разжевали как работает ASI.
Я считаю что наличие точек с запятой или их отсутствие должно относиться к coding style guidelines в рамках проекта или компании, но не более. Это не правило языка программирования.
Дока: www.ecma-international.org/ecma-262/5.1/#sec-7.9
Врятли это голосование за самую лучшую игру это скорее статистика «кто во что играл и его зацепило». Потому что есть в списке игры, которые я вообще не играл, но, может быть, они бы мне сильно понравились.
2. Разгрузка сервера, отсекая лишние запросы
Валидация на клиенте не означает отсутствие валидации на сервере.
Оно будет обязательным только тогда, когда будут (хотя маловероятно) внесены в спецификацию соответствующие изменения.
17-й совет звучит неубедительно. Есть же ASI, являющейся частью спецификации ECMAScript. Слепо надеяться на точки с запятой тоже опасно.
Код ниже:
Ничего не вернет, ибо вступает в дело ASI.
Вместо того что-бы давать необоснованные, а порой, и вредные советы, лучше бы разжевали как работает ASI.
Я считаю что наличие точек с запятой или их отсутствие должно относиться к coding style guidelines в рамках проекта или компании, но не более. Это не правило языка программирования.
Дока: www.ecma-international.org/ecma-262/5.1/#sec-7.9
Автору еще раз спасибо!