JavaScript. Оптимизация производительности

sku: 136187197
ACCORDING TO OUR RECORDS THIS PRODUCT IS NOT AVAILABLE NOW
845.00 грн.
Shipping from: Ukraine
Description
[html]Все, что Вы хотели знать об оптимизации производительности, но не знали, где спросить - в новой книге "JavaScript. Оптимизация производительности" от O'Reilly!Если вы относитесь к подавляющему большинству веб-разработчиков, то наверняка широко применяете JavaScript для создания интерактивных веб-приложений с малым временем отклика. Проблема состоит в том, что строки с программным кодом на языке JavaScript могут замедлять работу приложений. Эта книга откроет вам приемы и стратегии, которые помогут в ходе разработки устранить узкие места, влекущие за собой снижение производительности. Вы узнаете, как ускорить выполнение, загрузку, операции с деревом DOM, работу страницы в целом и многое другое.Николас Закас (Nicholas C. Zakas), программист из компании Yahoo!, специализирующийся на разработке пользовательских интерфейсов веб-приложений, и пять других экспертов в области использования JavaScript - Росс Хармс (Ross Harmes), Жюльен Лекомте (Julien Lecomte), Стивен Левитан (Steven Levithan), Стоян Стефанов (Stoyan Stefanov) и Мэтт Суини (Matt Sweeney) - представят оптимальные способы загрузки сценариев и другие приемы программирования, которые помогут вам обеспечить наиболее эффективное и быстрое выполнение программного кода на JavaScript. Вы познакомитесь с наиболее передовыми приемами сборки и развертывания файлов в действующем окружении и с инструментами, которые помогут вам в поиске проблем.Приемы и подходы, обсуждаемые в этой книге, охватывают самые разные аспекты программирования на языке JavaScript, такие как время выполнения, загрузка, взаимодействие с DOM, жизненный цикл страниц и многие другие. Из рассматриваемых проблем лишь малая часть, связанная с производительностью ядра (ECMAScript), может быть устранена за счет усовершенствования интерпретаторов JavaScript, но это еще только должно произойти.В решении остальных рассмотренных проблем увеличение производительности интерпретаторов JavaScript не решает проблему быстродействия. Это взаимодействие с деревом DOM, сетевые задержки, блокировка и параллельная загрузка сценариев JavaScript и многое другое. Эти вопросы не только не будут сняты в будущем, но станут основным предметом исследований по мере повышения производительности интерпретаторов JavaScript.Главы в этой книге организованы в соответствии с обычным циклом разработки сценариев на языке JavaScript. Сначала в главе 1 "Загрузка и выполнение" рассказывается о параллельной загрузке JavaScript-файлов одновременно с другими ресурсами.Плохо написанный программный код, использование неэффективных алгоритмов и утилит являются существенным фактором снижения производительности JavaScript. В главах 2-8 представлены конкретные приемы программирования, которые позволяют максимально увеличить скорость выполнения программного кода.В главе 2 "Доступ к данным" описывается, как JavaScript-сценарии сохраняют и извлекают данные. Важно не только решить, какие данные хранить, но и где их хранить, и эта глава демонстрирует, как такие понятия, как цепочки областей видимости и цепочки прототипов, могут влиять на производительность сценариев. Здесь рассказывается об ускорении доступа к данным и разрешении идентификаторов, об управлении областями видимости, о динамических областях видимости, об использовании цепочек областей видимости и сохранении данных в замыканиях. Этот материал позволит глубже понять особенности работы областей видимости в языке JavaScript.В главе 3 "Работа с деревом DOM" объясняется, что из-за особенностей реализации операции с деревом DOM являются самыми медленными в JavaScript. Рассматриваются все аспекты, касающиеся DOM, включая описание того, как перерисовка и реорганизация элементов страниц могут уменьшить скорость выполнения программного кода.Предлагаются удобные и эффективные приемы чтения и изменения элементов DOM, способы изменения стилей элементов DOM, позволяющие избежать лишних операций перерисовывания и перекомпоновки.Глава 4 "Алгоритмы и управление потоком выполнения" описывает, как распространенные приемы программирования, такие как циклы и рекурсия, могут работать против вас, снижая производительность во время выполнения. Здесь рассматриваются такие методы оптимизации, как мемоизация, а также некоторые ограничения, накладываемые браузерами.Многие веб-приложения выполняют сложные операции со строками, обсуждение которых в главе 5 "Строки и регулярные выражения" ведет Стивен Левитан, эксперт по обработке текстовых данных. На протяжении многих лет вебразработчики боролись с неэффективной реализацией строковых операций в браузерах, и Стивен объясняет, почему некоторые операции выполняются слишком медленно и как обходить это при разработке.Глава 6 "Отзывчивые интерфейсы" концентрируется на ощущениях пользователей. В процессе выполнения JavaScript-сценарий может "подвешивать" броузер, вызывая неудовольствие у пользователей. Здесь обсуждаются некоторые приемы, гарантирующие сохранение отзывчивости пользовательского интерфейса в любых условиях. Рассказывается, как решаются проблемы, обусловленные тем фактом, что выполнение JavaScript-сценариев и обновление пользовательского интерфейса производится в одном потоке выполнения. Демонстрируются такие приемы, как применение таймеров, разделение задач и использование фоновых потоков для выполнения программного кода за рамками главного потока управления.В главе 7 "Ajax" обсуждаются способы реализации быстрых взаимодействий между клиентом и сервером, показывается, как различные форматы представления данных могут влиять на производительность механизмов Ajax и почему применение объекта XMLHttpRequest не всегда является лучшим выбором.Глава 8 "Приемы программирования" представляет собой коллекцию наиболее эффективных приемов программирования, уникальных для языка JavaScript.После того как JavaScript-сценарий будет написан и отлажен, наступает момент сделать внесенные изменения доступными всем желающим. Однако недостаточно просто скопировать исходные файлы на действующий сервер. В главе 9 "Сборка и развертывание высокопроизводительных приложений на JavaScript" демонстрируется, как повысить производительность сценариев при развертывании, обсуждаются особенности использования систем сборки, автоматически минимизирующих файлы, и применение функции сжатия в протоколе HTTP при отправке этих файлов броузерам.Следующий шаг после развертывания JavaScript-сценариев - тестирование их производительности. Глава 10 "Инструменты" охватывает инструменты исследования производительности, способные помочь в поиске проблем, которые могут появиться после развертывания сценариев. Рассказывается об инструментах для профилирования JavaScript-сценариев и анализа сетевого трафика, таких как Firebug, инструменты разработчика в Chrome, dynaTrace, Fiddler, Page Speed, YSlow, веб-инспектор в Safari, инструменты разработчика в IE.Книга "JavaScript. Оптимизация производительности" адресована вебразработчикам со средним и высоким уровнем владения языком JavaScript, желающим повысить производительность интерфейсов веб-приложений.Оглавление книги "JavaScript. Оптимизация производительности"ПредисловиеГлава 1. Загрузка и выполнениеМестоположение сценарияГруппировка сценариевНеблокирующая загрузка сценариевОтложенные сценарииДинамические элементы scriptИнъекция сценариев с помощью XMLHttpRequestРекомендуемые способы неблокирующей загрузкиВ заключениеГлава 2. Доступ к даннымУправление областью видимостиЦепочки областей видимости и разрешение идентификаторовПроизводительность разрешения идентификаторовУвеличение цепочки областей видимостиДинамические области видимостиЗамыкания, области видимости и памятьЧлены объектовПрототипыЦепочки прототиповВложенные членыКэширование значений членов объектовВ заключениеГлава 3. Работа с деревом DOMМодель DOM в мире броузеровВрожденная медлительностьДоступ к дереву DOM и его модификацияСвойство innerHTML в сравнении с методами DOMКопирование узловHTML-коллекцииОбход дерева DOMПерерисовывание и перекомпоновкаКогда происходит перекомпоновка?Буферизация и применение изменений в дереве отображенияУменьшение количества операций перерисовывания и перекомпоновкиКэширование информации о размещенииИсключение элементов из потока отображения для внесения измененийIE и :hoverДелегирование обработки событийВ заключениеГлава 4. Алгоритмы и управление потоком выполненияЦиклыТипы цикловПроизводительность циклаИтерации на основе функцийУсловные инструкцииСравнение if-else и switchОптимизация инструкций if-elseПоисковые таблицыРекурсияОграниченность размера стека вызововШаблоны реализации рекурсииИтерацииМемоизацияВ заключениеГлава 5. Строки и регулярные выраженияКонкатенация строкОператоры плюс (+) и плюсравно (+=)Слияние элементов массиваString.prototype.concat()Оптимизация регулярных выраженийКак работают регулярные выраженияВозвратыИсключение возвратовПримечание к измерению производительностиДополнительные пути повышения производительности регулярных выраженийКогда не следует использовать регулярные выраженияУсечение строкУсечение с применением регулярных выраженийУсечение без применения регулярных выраженийСмешанное решениеВ заключениеГлава 6. Отзывчивые интерфейсыПоток выполнения пользовательского интерфейса броузераОграничения броузеровСлишком долго - это сколько?Использование таймеровОсновы таймеровТочность таймераОбработка массивов с помощью таймеровДеление заданийХронометраж выполнения программного кодаТаймеры и производительностьФоновые потоки выполненияОкружение фонового потока выполненияВзаимодействие с фоновыми потоками выполненияЗагрузка внешних файловПрактическое использованиеВ заключениеГлава 7. AjaxПередача данныхЗапрос данныхОтправка данныхФорматы данныхXMLJSONHTMLНестандартное форматированиеЗаключительные выводы о форматах данныхРекомендации по повышению производительности AjaxКэширование данныхИзвестные ограничения библиотек поддержки AjaxВ заключениеГлава 8. Приемы программированияПредотвращение повторной интерпретацииИспользование литералов объектов/массивовПредотвращение повторного выполнения работыОтложенная загрузкаПредварительная условная загрузкаИспользование сильных сторонБитовые операторыВстроенные методыВ заключениеГлава 9. Сборка и развертывание высокопроизводительных приложений на JavaScriptApache AntОбъединение JavaScript-файловПредварительная обработка JavaScript-файловМинификация JavaScript-файловСборка в виде отдельного этапа или во время выполненияСжатие JavaScript-сценариевКэширование JavaScript-файловРешение проблем, связанных с кэшированиемИспользование сети распространения содержимогоРазвертывание JavaScript-ресурсовГибкий процесс сборки JavaScript-файловВ заключениеГлава 10. ИнструментыПрофилирование JavaScript-сценариевYUI ProfilerАнонимные функцииFirebugПанель профилировщика в консолиПрикладной интерфейс консолиПанель NetИнструменты разработчика в Internet ExplorerВеб-инспектор в броузере SafariПанель ProfilesПанель ResourcesИнструменты разработчика в ChromeБлокирование отображения страницы сценариямиPage SpeedFiddlerYSlowdynaTrace Ajax EditionВ заключениеАлфавитный указатель[/html]
Technical Details
| categoryTitle: | Научная и техническая литература |
| rating: | 0 |
Price history chart & currency exchange rate
Customers also viewed

1,040.68 грн.
100%Original 20V 12.0Ah For Dewalt DCB180 DCB181 DCB182 DCB201 DCB206 Lin-ion Battery Directly supplied by the manufacturer
aliexpress.ru
461.12 грн.
10 Pieces TL4051CQDCKR TL4051CIDCKR TL4051BQDCKR TL4051AQDCKR TL4051AIDCKR TL4051C12QDCKR SOT23-5 Chip IC New Original
aliexpress.ru
6,913.02 грн.
Traditional Santa Claus with Teddy Bear and Gift Bag Standing Christmas Figure
aliexpress.ru
1,120.35 грн.
Игра RDR2 Arthur Morgan, куртка в одном стиле, джинсовые костюмы в стиле вестерн, коричневая куртка и синяя рубашка для мужчин
aliexpress.ru
115.49 грн.
Dragon Mask Costume Prop Mask Dress-up Accessory for Halloween Masquerade Cosply Costume Party Carnival Performance (Yellow)
aliexpress.ru
392.84 грн.
Guitar Gamer Heartbeat Mens Designer Clothes Youth Polyester Hoodie Men Thanksgiving Man Sweatshirts
aliexpress.ru
1,651.44 грн.
USB HUB TypeC Docking Station Enhances with 4K60hz Display PD100W 5Gbps Fast Data Transfer RJ45 1000M Card Slot
aliexpress.ru
1,057.97 грн.
WM180V WM210V Mini Lathe Center Frame Tool Holder Household Stable Woodworking Metal Lathe Bracket Accessories Tool
aliexpress.ru
500.32 грн.
RGB светодиодная строка USB приложение мечтающая вспышка занавеска гирлянда огни на Рождество светодиодное новогоднее вечерние украшение для дома
aliexpress.ru
1,107.70 грн.
Female underwear sexy transparent ice silk small waist and chip non-trace ladies thong shorts lingerie
aliexpress.com346.89 грн.
Ready...Ready...Ready...] Timurasa Dark Cocoa Powder 500gr - Bubuk Kakao Hitam - Coklat Bubuk
shopee.co.id
520.13 грн.
Осенний наряд, женский комбинезон, осенняя одежда 2022, наряды на день рождения для женщин, Клубные наряды, цельный комбинезон, зимняя одежда ...
aliexpress.ru
510.44 грн.
Цветной косплейер Аниме K-On Адзуса Накано дакимакура 2 с боковым принтом милая девушка аниме подушка для тела мягкое постельное белье Подушк...
aliexpress.ru
545.42 грн.
Без рукавов, влажный вид, ПВХ костюм кошки, блестящая женская молния, трико, горячий сексуальный косплей Sukumizu, боди, топы, клубная одежда
aliexpress.ru
2,311.38 грн.
luxury women's fashion evening bags brand ch handbags pearl tote canvas beach bag designers female portable shoulder large capacity big, Black;red
dhgate.com
772.61 грн.
Задний велофонасветильник, зарядка через USB, светодиодная подсветка для горного велосипеда, подседельного штыря, велосипедные аксессуары
aliexpress.ru
393.68 грн.
Baby Milestone Rainbow Blanket Baby Month Photography Background Cloth Newborn Photography Props Photograph Mat
aliexpress.com
5,460.53 грн.
SKYFAME Android Автомобильная Навигация Радио мультимедийный плеер для CHEVROLET cruze 2015-2018 автомобильная стереосистема
aliexpress.ru
205.27 грн.
24 шт./лот бумажная подкладка с рисунком для рукоделия карточки для самостоятельного изготовления открыток бумажная подкладка для рукодели...
aliexpress.com
2,373.89 грн.
Женские ботильоны в стиле «панк» на резиновой подошве, из натуральной коровьей спилковой кожи
aliexpress.ru
254.00 грн.
Босоножки детские для девочки летние C-T9084-B (29-34) "TOM.M" купить оптом на 7км, Розовый
prom.ua
1,390.00 грн.
Женские зимние ботинки, ботинки на толстом каблуке, замшевые женские ботинки, черные ботинки, натуральный лак, Зима, Черный
prom.ua
100.00 грн.
Мужские черные непромокаемые туфли оксфорды из пены, размеры 40, 42 (маломерные), Черный
prom.ua
463.65 грн.
2 Pieces Brass 8mm to 1/2" BSP Elbow Compression Connector Fitting Fuel Air Gas Water Hose Connector Coupler
aliexpress.com
1,179.78 грн.
huij 003815 3pc Set 7-8mm Pearl Necklace Bracelet Earring Freshwater Genuine
aliexpress.com![Настенные часы в детскую "День и ночь" (300мм) коричневые PraGMart-708-300 [Стекло, Открытые]
Настенные часы в детскую "День и ночь" (300мм) коричневые PraGMart-708-300 [Стекло, Открытые]](http://i2.rozetka.ua/goods/10605027/67487762_images_10605027422.jpg)
532.00 грн.
Настенные часы в детскую "День и ночь" (300мм) коричневые PraGMart-708-300 [Стекло, Открытые]
rozetka.com.ua


















