Автор, видимо, ещё не получал каждый месяц письмо всё-таки проимпортировать адресную книгу, потому что «80% людей находят работу через людей, которых они знают».
Статья годная, спасибо. На мой взгляд есть проблема over engineering и перекос в сторону strong consistency. Как результат «Обработчик команды может возвращать значение.» и маштабирование через async/await. Если есть опыт работы с eventual consistency реализацией, то будет интересно прочитать аналогичную квинтэссенцию.
А есть ли необходимость сверяться с Environment в любой точке решения? Может просто задать начальные зависимости и абстрагировать остальные компоненты?
Извините, но чем не подошёл WCF Data Services, реализация OData для NHibernate? Я вижу как преимущества хорошо описанный протокол, контроль над тем, какие запросы допускается использовать клиенту, возможность простого вызова через любой http client, нет протекающих абстракций вида PostQuery.
Странно, что никто не упомянул алгоритм генерации ObjectId из MongoDB:
ObjectId is a 12-byte BSON type, constructed using:
a 4-byte value representing the seconds since the Unix epoch,
a 3-byte machine identifier,
a 2-byte process id, and
a 3-byte counter, starting with a random value.
В своё время для C# перешёл с Doxygen на Sandcastle. Сейчас проверил развитие Sandcastle на Codeplex остановилось в 2010, но нашёлся добрый человек, который сделал форк, выложил на GitHub и даже выпустил Help File Builder and Tools v2015.1.12.0.
Когда-то давно прочитал в одной из статей о jQuery, зачем в функцию вставляется аргумент с названием undefined.
Потому что undefined, который на самом деле переменная window.undefined, может быть перекрыт. А в вашем примере self-invoking function, код внутри начинает использовать undefined параметр, переданный в функцию, который неожиданно без инициализации имеет значение примитивного типа undefined.
Примеры хорошие, но на мой взгляд есть небольшая подмена понятий в Deferred Object и Promise Object (который я бы переводил как промис). Последний получается из первого путём вызова метода promise на объекте jQuery.Deferred:
function example() {
var dfd = new jQuery.Deferred();
// Resolve
// Reject
// Notify
// Return the Promise so caller can't change the Deferred
return dfd.promise();
}
Сам Promise Object согласно справке:
This object provides a subset of the methods of the Deferred object (then, done, fail, always, pipe, and state) to prevent users from changing the state of the Deferred.
Т.е., в моём понимании, Promise Object это результат работы, а Deferred Object — способ повлиять на неё.
По моему опыту могу сказать что если компания переходит на TFS, то это означает, что она уже давно и плотно сидит на продуктах Microsoft и никуда не собирается мигрировать.
Со словом приют больше Hostel ассоциируется :)
Потому что undefined, который на самом деле переменная window.undefined, может быть перекрыт. А в вашем примере self-invoking function, код внутри начинает использовать undefined параметр, переданный в функцию, который неожиданно без инициализации имеет значение примитивного типа undefined.
Сам Promise Object согласно справке:
Т.е., в моём понимании, Promise Object это результат работы, а Deferred Object — способ повлиять на неё.