JavaScript. Оптимізація продуктивності

Паперова книга
8239
JavaScript. Оптимізація продуктивності - фото 1
JavaScript. Оптимізація продуктивності - фото 2
JavaScript. Оптимізація продуктивності - фото 3
JavaScript. Оптимізація продуктивності - фото 4
11.04
600
19 людей

Все про “JavaScript. Оптимізація продуктивності”

Від видавця

Шосте видання JavaScript. Докладне керівництво від Девіда Фленаган стало супер бестселером і самим надійним помічником всіх JavaScript-програмістів. Але один аспект теми 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. Оптимізація продуктивності

Рецензії

0

Всі характеристики

Товар входить до категорії

  • Самовивіз з відділень поштових операторів від 45 ₴ - 80 ₴
  • Доставка поштовими сервісами - тарифи перевізника