[Книга] Stoyan Stefanov, Javascript Patterns
Могу рекомендовать и ручаться за JavaScript Patterns Stoyan Stefanov'a. Главным ревьювером этой книги являюсь я (раздел Acknowledgments). Книга не отличается какими-то новаторскими подходами, однако, как минимум, не содержит технических ошибок (хотя, в принципе, возможна та незначительная часть, которую мы упустили). Есть много сносок к деталям, что делает её более точной.
Книга является обзором общих методик программирования на JavaScript, рассматривает шаблоны повторного использования кода (code reuse), шаблоны проектирования (хотя, некоторые из них больше теоретические и к JS мало отношения имеют, например Singleton), code conventions, функции, некоторые аспекты функционального программирования и методики работы с DOM. Я подробно читал драфт. Финальную версию тоже просканировал. Книга не для (совсем) новичков, но имея небольшой опыт в программировании можно извлечь из неё что-то интересное. Просматривал бегло High Performance JavaScript Nicholas C. Zakas'a -- возможно тоже неплохая книга. Читал в электронном виде главу 2, "Data Access". В принципе, описано неплохо, хотя есть пара технических ошибок. javascript: The Definitive Guide, Sixth Edition David Flanagan -- не читал 6-ое издание, но 5-ое -- неплохое. Думаю, есть смысл прочесть (т.к. 5-ое издание считалось очень хорошей книгой по JS, да и Flanagan знает JavaScript хорошо). |
удалено.
|
Цитата:
Особых проблем с чтением пока не ощущаю (хотя английский далек от совершенства), так что не могу согласиться с тем, что читать ее непросто. Впрочем, быть может я еще не дошел до самых сложных глав т.к. не могу уделять много времени чтению. |
Хорошая книга, полезно прочесть для закрепления собственных представлений о полезных методиках программирования на javascript. Покупал на сайте издательства, делал отчет по прочтении
|
удалено.
|
а какие главы самые интересные/стоит почитать?
|
Стр. 65,
var myapp = {};
myapp.color = "green";
myapp.paint = function (node) {
node.style.color = this.color;
};
//...
var findNodes = function (callback) {
// ...
if (typeof callback === "function") {
callback(found);
}
// ...
};
Цитата:
var myapp = {};
myapp.color = "green";
myapp.paint = function (node) {
alert(this);
};
//...
var obj = {
property : 1,
findNodes: function (callback) {
if (typeof callback === "function") {
callback();
}
}
};
obj.findNodes(myapp.paint)
this, как и положено, внутри callback указывает на window, т.к. контекст не указан. Но автор книги обещает нам привязку callback'а к текущему контексту. |
Цитата:
P.S.: В изначальном черновике было много ошибок. И опечаток, и технических. Цитата:
|
кстати книгу перевели С+
|
Ага, это хорошо. Я видел еще на несколько языков перевели.
|
| Часовой пояс GMT +3, время: 05:56. |