SlideShare a Scribd company logo
1 of 23
Download to read offline
Использование сторонних
библиотек в веб-
приложении
Курс Frontend-разработки на Javascript + Vue/React
Сторонние библиотеки
• Сторонними библиотеками (3D-party libs) называются чужие
скрипты, которые подключаются к приложению и позволяют
использовать определенный функционал.
• Сторонние библиотеки условно делятся на две группы: библиотеки
функций и предметные библиотеки.
Зачем используются 3D-party libs
• Основная причина – сокращение времени разработки, дабы не
писать уже существующий функционал.
• Кроме того, сторонние библиотеки более устойчивые – они уже
были протестированы и, значит, работают без багов и их не нужно
тестировать самому.
• Некоторые библиотеки используются для объединения и
упрощения написания кода для разных сред исполнения.
Как работать с 3D-party lib
• Найти гайд по установке
• Внедрить библиотеку в свой проект и запустить базовый пример
• Сверяясь с документацией, решить свою задачу
• В случае проблем - обращаться к документации или сообществу
Библиотека jQuery
• jQuery – библиотека, инкапсулирующая большинство DOM-
операций в более простой, лаконичный синтаксис
• Использовалась, когда в разных браузерах были разные подходы к
решению одних и тех же DOM-задач и позволяла одинаково делать
всё в разных браузерах.
• Сегодня в новых проектах используется редко – отдаётся
предпочтение стандартным возможностям DOM.
jQuery
• Среди возможностей jQuery:
• Интеллектуальные выборки в дереве, навигация по дереву
• Установка обработчиков событий
• Расширенная работа со стилями
• Простые AJAX-запросы
• Анимации
• Ценность jQuery в том числе в том, что для неё сегодня существует
множество сторонних плагинов, позволяющих внедрить специфичные
элементы интерфейса в своё приложение (Bootstrap, slick, jQuery UI, …)
• jQuery не задействует возможности ES6+ и потому плохо интегрируется в
новый код.
jQuery
• Сайт библиотеки - https://jquery.com/
• Документация по возможностям - https://api.jquery.com/
Задача 1.
• Создать JSON-документ со списком вопросов. У каждого вопроса
есть текст вопроса и текст ответа.
• Загрузить JSON-документ на страницу, вывести на базе этого
набора данных аккордеон и настроить его работоспособность.
• Переписать код приложения под использование jQuery, jQuery +
сторонний плагин.
Lodash (underscore)
• Lodash – библиотека для унификации механизмов обработки
данных в Javascript.
• Используется для работы с массивами, объектами, числами,
строками и т.д., предлагает множество дополнительных способов
обработки массивов без необходимости писать свои методы
обхода.
• Для написания читабельного кода желательно применять lodash,
поскольку её методы наглядно говорят о том, какие
преобразования осуществляются с данными.
Lodash (underscore)
• Сайт библиотеки - https://lodash.com/
• Документация по возможностям - https://lodash.com/docs/
Задача 2.
Yandex Maps API
• Yandex Maps API – открытая технология Яндекса, позволяющая
встраивать карту в веб-приложение и далее работать с картой.
• Аналог от Google – Google Maps API, но на данный момент
технологии Яндекс не требуют привязки банковской карты и
использование карт бесплатно (в ограниченных объемах)
Возможности API карт
• Установка карты в приложение
• Управление картой (масштаб, тип и т.д.)
• Нанесение на карту объектов и установка взаимодействия с ними
• Отображение сферических панорам
• Геокодинг
Yandex Maps API
• Сайт проекта - https://tech.yandex.ru/maps/
• Документация по библиотеке -
https://tech.yandex.ru/maps/jsapi/doc/2.1/quick-start/index-docpage/
Задача 3.
• Загрузить из сервиса https://www.openbrewerydb.org/ список
пивоварен, разместить их на карте мира и при клике на пивоварню
– рядом с картой отображать детали выбранной пивоварни.
Youtube API
• Youtube API – библиотека для работы со встраиваемыми в веб-
приложение видеофреймами из YouTube.
• К возможностям библиотеки относится:
• Управление воспроизведением видео во фрейме
• Получение информации о видео
• Управление очередью воспроизведения видео
Youtube iFrame API
• Документация по библиотеке:
https://developers.google.com/youtube/iframe_api_reference
Задача 4.
• Загрузить в приложение видеофрейм с YouTube и создать на
странице кнопку для воспроизведения/паузы, а также список
закладок для видео.
CKEditor
• CKEditor – плагин для установки в приложение редактора
форматируемого текста.
• Среди существующих – он самый популярный, условно бесплатный
и обладает наибольшим перечнем возможностей.
• Сайт плагина: https://ckeditor.com/ , http://cdn.ckeditor.com/
• Ссылка на документацию:
https://ckeditor.com/docs/ckeditor4/latest/guide/index.html
Задача 5.
• Создать приложение, которое позволит создавать, удалять
документы и редактировать каждый как форматированный текст.
Сохранять перечень документов в локальное хранилище.
Highcharts
• Highcharts – библиотека для отрисовки в приложении
разнообразных графиков, диаграмм и прочих элементов
графической визуализации данных.
• На сегодняшний день в этой библиотеке собрано больше всего
различных возможностей по отображению графиков и эта
библиотека наиболее часто применяется для подобных целей.
• Сайт проекта - https://www.highcharts.com/
• Документация - https://www.highcharts.com/docs/index
Задача 6.
• Создать форму для построения графика полинома 4-й степени.
Самостоятельно:
• Создать JSON-документ со списком стран. У каждой страны –
название и численность за 2010 и 2015 год. Загрузить эти данные и
построить гистограмму численности для каждой страны (два
столбика для каждой страны).
Подходы к работе с
библиотеками
• Существует два источника информации по решению проблем со
сторонними библиотеками:
• Официальная документация
• Часто в документации перечисляются самые популярные пути использования
библиотеки и начинать работу с библиотекой всегда стоит с документации.
• Google и сообщества
• При работе с библиотекой всегда рано или поздно появляются проблемы,
решение которых не описано в основной документации. В таких случаях стоит
гуглить.
• Эффективный запрос в Google выглядит так: « [название библиотеки]
[название модуля библиотеки] [описание проблемы]» на английском языке
(кроме Yandex Maps API).

More Related Content

What's hot

Конструктор карточек Docsvision 5: конструктор состояний
Конструктор карточек Docsvision 5: конструктор состоянийКонструктор карточек Docsvision 5: конструктор состояний
Конструктор карточек Docsvision 5: конструктор состоянийDocsvision
 
Лёгкий клиент Docsvision
Лёгкий клиент DocsvisionЛёгкий клиент Docsvision
Лёгкий клиент DocsvisionDocsvision
 
Легкий клиент Docsvision 5
Легкий клиент Docsvision 5Легкий клиент Docsvision 5
Легкий клиент Docsvision 5Docsvision
 
Webpack integration
Webpack integrationWebpack integration
Webpack integrationIllia Zub
 
Использование SOA для построения сложных веб проектов - Виталий Глибин, PyCon...
Использование SOA для построения сложных веб проектов - Виталий Глибин, PyCon...Использование SOA для построения сложных веб проектов - Виталий Глибин, PyCon...
Использование SOA для построения сложных веб проектов - Виталий Глибин, PyCon...it-people
 
Фронтенд в Яндексе
Фронтенд в ЯндексеФронтенд в Яндексе
Фронтенд в ЯндексеYandex
 
Docsvision 5 Почтовый клиент
Docsvision 5 Почтовый клиентDocsvision 5 Почтовый клиент
Docsvision 5 Почтовый клиентDocsvision
 
Делопроизводство для Docsvision 5
Делопроизводство для Docsvision 5Делопроизводство для Docsvision 5
Делопроизводство для Docsvision 5Docsvision
 
Модуль межфилиального обмена
Модуль межфилиального обменаМодуль межфилиального обмена
Модуль межфилиального обменаDocsvision
 
Платформа Docsvision
Платформа DocsvisionПлатформа Docsvision
Платформа DocsvisionDocsvision
 
What do you MEAN? или введение в Fullstack JavaScript
What do you MEAN? или введение в Fullstack JavaScriptWhat do you MEAN? или введение в Fullstack JavaScript
What do you MEAN? или введение в Fullstack JavaScriptVasiliy Teliatnikov
 
Преимущества системы Docsvision (наше видение)
Преимущества системы Docsvision (наше видение)Преимущества системы Docsvision (наше видение)
Преимущества системы Docsvision (наше видение)Mayliyeva Katira
 
SharePoint клиент Docsvision 5
SharePoint клиент Docsvision 5SharePoint клиент Docsvision 5
SharePoint клиент Docsvision 5Docsvision
 
Прикладное решение «Расширенное согласование для Docsvision 5»
Прикладное решение «Расширенное согласование для Docsvision 5»Прикладное решение «Расширенное согласование для Docsvision 5»
Прикладное решение «Расширенное согласование для Docsvision 5»Docsvision
 
"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17
"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17
"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17MoscowJS
 
Многофункциональный сервер приложений, обеспечивающий среду запуска, и дающий...
Многофункциональный сервер приложений, обеспечивающий среду запуска, и дающий...Многофункциональный сервер приложений, обеспечивающий среду запуска, и дающий...
Многофункциональный сервер приложений, обеспечивающий среду запуска, и дающий...GeeksLab Odessa
 
Docsvision Online Demo
Docsvision Online DemoDocsvision Online Demo
Docsvision Online DemoDocsvision
 
Yaremchuk - Drupal CodeLobster
Yaremchuk - Drupal CodeLobsterYaremchuk - Drupal CodeLobster
Yaremchuk - Drupal CodeLobsterAndrii Podanenko
 

What's hot (20)

Конструктор карточек Docsvision 5: конструктор состояний
Конструктор карточек Docsvision 5: конструктор состоянийКонструктор карточек Docsvision 5: конструктор состояний
Конструктор карточек Docsvision 5: конструктор состояний
 
Лёгкий клиент Docsvision
Лёгкий клиент DocsvisionЛёгкий клиент Docsvision
Лёгкий клиент Docsvision
 
Легкий клиент Docsvision 5
Легкий клиент Docsvision 5Легкий клиент Docsvision 5
Легкий клиент Docsvision 5
 
Web tehn
Web tehnWeb tehn
Web tehn
 
Webpack integration
Webpack integrationWebpack integration
Webpack integration
 
Использование SOA для построения сложных веб проектов - Виталий Глибин, PyCon...
Использование SOA для построения сложных веб проектов - Виталий Глибин, PyCon...Использование SOA для построения сложных веб проектов - Виталий Глибин, PyCon...
Использование SOA для построения сложных веб проектов - Виталий Глибин, PyCon...
 
Фронтенд в Яндексе
Фронтенд в ЯндексеФронтенд в Яндексе
Фронтенд в Яндексе
 
Docsvision 5 Почтовый клиент
Docsvision 5 Почтовый клиентDocsvision 5 Почтовый клиент
Docsvision 5 Почтовый клиент
 
Делопроизводство для Docsvision 5
Делопроизводство для Docsvision 5Делопроизводство для Docsvision 5
Делопроизводство для Docsvision 5
 
Модуль межфилиального обмена
Модуль межфилиального обменаМодуль межфилиального обмена
Модуль межфилиального обмена
 
Платформа Docsvision
Платформа DocsvisionПлатформа Docsvision
Платформа Docsvision
 
What do you MEAN? или введение в Fullstack JavaScript
What do you MEAN? или введение в Fullstack JavaScriptWhat do you MEAN? или введение в Fullstack JavaScript
What do you MEAN? или введение в Fullstack JavaScript
 
Преимущества системы Docsvision (наше видение)
Преимущества системы Docsvision (наше видение)Преимущества системы Docsvision (наше видение)
Преимущества системы Docsvision (наше видение)
 
SharePoint клиент Docsvision 5
SharePoint клиент Docsvision 5SharePoint клиент Docsvision 5
SharePoint клиент Docsvision 5
 
Прикладное решение «Расширенное согласование для Docsvision 5»
Прикладное решение «Расширенное согласование для Docsvision 5»Прикладное решение «Расширенное согласование для Docsvision 5»
Прикладное решение «Расширенное согласование для Docsvision 5»
 
"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17
"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17
"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17
 
Многофункциональный сервер приложений, обеспечивающий среду запуска, и дающий...
Многофункциональный сервер приложений, обеспечивающий среду запуска, и дающий...Многофункциональный сервер приложений, обеспечивающий среду запуска, и дающий...
Многофункциональный сервер приложений, обеспечивающий среду запуска, и дающий...
 
Docsvision Online Demo
Docsvision Online DemoDocsvision Online Demo
Docsvision Online Demo
 
Yaremchuk - Drupal CodeLobster
Yaremchuk - Drupal CodeLobsterYaremchuk - Drupal CodeLobster
Yaremchuk - Drupal CodeLobster
 
Sky drive
Sky driveSky drive
Sky drive
 

Similar to Использование сторонних библиотек в веб-приложении

Фронтенд в Яндексе
Фронтенд в ЯндексеФронтенд в Яндексе
Фронтенд в ЯндексеYandex
 
Фронтенд в Яндексе
Фронтенд в ЯндексеФронтенд в Яндексе
Фронтенд в ЯндексеYandex
 
Краткое описание библиотеки анализа кода VivaCore
Краткое описание библиотеки анализа кода VivaCoreКраткое описание библиотеки анализа кода VivaCore
Краткое описание библиотеки анализа кода VivaCoreTatyanazaxarova
 
Экскурс в мир WEB разработки
Экскурс в мир WEB разработкиЭкскурс в мир WEB разработки
Экскурс в мир WEB разработкиIT-Доминанта
 
Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++Denis Vasilyev
 
InterSystems Community and Projects in CIS November 2015
InterSystems Community and Projects in CIS November 2015InterSystems Community and Projects in CIS November 2015
InterSystems Community and Projects in CIS November 2015InterSystems
 
webpack: 7 бед - один ответ
webpack: 7 бед - один ответwebpack: 7 бед - один ответ
webpack: 7 бед - один ответDenis Izmaylov
 
JavaScript Базовый. Занятие 09.
JavaScript Базовый. Занятие 09.JavaScript Базовый. Занятие 09.
JavaScript Базовый. Занятие 09.Igor Shkulipa
 
RDSDataSource: Автогенерация документации для SDK
RDSDataSource: Автогенерация документации для SDKRDSDataSource: Автогенерация документации для SDK
RDSDataSource: Автогенерация документации для SDKRAMBLER&Co
 
Protrarctor and Angular
Protrarctor and AngularProtrarctor and Angular
Protrarctor and AngularSQALab
 
Введение во фронтенд-разработку
Введение во фронтенд-разработкуВведение во фронтенд-разработку
Введение во фронтенд-разработкуDenis Latushkin
 
What's new in Visual Studio 2012
What's new in Visual Studio 2012What's new in Visual Studio 2012
What's new in Visual Studio 2012InTRUEdeR
 
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)Pavel Tsukanov
 
Workflow: работа над проектом в Яндексе
Workflow: работа над проектом в ЯндексеWorkflow: работа над проектом в Яндексе
Workflow: работа над проектом в ЯндексеDenis Chistyakov
 
Отладка веб-приложений на Javascript
Отладка веб-приложений на JavascriptОтладка веб-приложений на Javascript
Отладка веб-приложений на JavascriptDenis Latushkin
 

Similar to Использование сторонних библиотек в веб-приложении (20)

Фронтенд в Яндексе
Фронтенд в ЯндексеФронтенд в Яндексе
Фронтенд в Яндексе
 
Фронтенд в Яндексе
Фронтенд в ЯндексеФронтенд в Яндексе
Фронтенд в Яндексе
 
Краткое описание библиотеки анализа кода VivaCore
Краткое описание библиотеки анализа кода VivaCoreКраткое описание библиотеки анализа кода VivaCore
Краткое описание библиотеки анализа кода VivaCore
 
Экскурс в мир WEB разработки
Экскурс в мир WEB разработкиЭкскурс в мир WEB разработки
Экскурс в мир WEB разработки
 
Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++
 
InterSystems Community and Projects in CIS November 2015
InterSystems Community and Projects in CIS November 2015InterSystems Community and Projects in CIS November 2015
InterSystems Community and Projects in CIS November 2015
 
YaC 2013 Notes
YaC 2013 NotesYaC 2013 Notes
YaC 2013 Notes
 
JavaScript
JavaScriptJavaScript
JavaScript
 
webpack: 7 бед - один ответ
webpack: 7 бед - один ответwebpack: 7 бед - один ответ
webpack: 7 бед - один ответ
 
JavaScript Базовый. Занятие 09.
JavaScript Базовый. Занятие 09.JavaScript Базовый. Занятие 09.
JavaScript Базовый. Занятие 09.
 
RDSDataSource: Автогенерация документации для SDK
RDSDataSource: Автогенерация документации для SDKRDSDataSource: Автогенерация документации для SDK
RDSDataSource: Автогенерация документации для SDK
 
Protrarctor and Angular
Protrarctor and AngularProtrarctor and Angular
Protrarctor and Angular
 
Errors Tracker
Errors TrackerErrors Tracker
Errors Tracker
 
Введение во фронтенд-разработку
Введение во фронтенд-разработкуВведение во фронтенд-разработку
Введение во фронтенд-разработку
 
What's new in Visual Studio 2012
What's new in Visual Studio 2012What's new in Visual Studio 2012
What's new in Visual Studio 2012
 
.NET Development
.NET Development.NET Development
.NET Development
 
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
 
Workflow: работа над проектом в Яндексе
Workflow: работа над проектом в ЯндексеWorkflow: работа над проектом в Яндексе
Workflow: работа над проектом в Яндексе
 
Отладка веб-приложений на Javascript
Отладка веб-приложений на JavascriptОтладка веб-приложений на Javascript
Отладка веб-приложений на Javascript
 
Marrow
MarrowMarrow
Marrow
 

More from Denis Latushkin

Дополнительные возможности Javascript
Дополнительные возможности JavascriptДополнительные возможности Javascript
Дополнительные возможности JavascriptDenis Latushkin
 
Дополнительные приёмы работы в DOM
Дополнительные приёмы работы в DOMДополнительные приёмы работы в DOM
Дополнительные приёмы работы в DOMDenis Latushkin
 
Нестатичное позиционирование и верстка форм
Нестатичное позиционирование и верстка формНестатичное позиционирование и верстка форм
Нестатичное позиционирование и верстка формDenis Latushkin
 
Приёмы верстки страниц с использованием HTML + CSS
Приёмы верстки страниц с использованием HTML + CSSПриёмы верстки страниц с использованием HTML + CSS
Приёмы верстки страниц с использованием HTML + CSSDenis Latushkin
 
Габаритные свойства, блочная модель и псевдоэлементы CSS
Габаритные свойства, блочная модель и псевдоэлементы CSSГабаритные свойства, блочная модель и псевдоэлементы CSS
Габаритные свойства, блочная модель и псевдоэлементы CSSDenis Latushkin
 
Основы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSSОсновы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSSDenis Latushkin
 
Продвинутый HTML
Продвинутый HTMLПродвинутый HTML
Продвинутый HTMLDenis Latushkin
 
Основы работы с Git
Основы работы с GitОсновы работы с Git
Основы работы с GitDenis Latushkin
 
NPM и модульная архитектура приложения
NPM и модульная архитектура приложенияNPM и модульная архитектура приложения
NPM и модульная архитектура приложенияDenis Latushkin
 
Основы языка HTML
Основы языка HTMLОсновы языка HTML
Основы языка HTMLDenis Latushkin
 
Объектное и прототипное программирование в Javascript
Объектное и прототипное программирование в JavascriptОбъектное и прототипное программирование в Javascript
Объектное и прототипное программирование в JavascriptDenis Latushkin
 
Приемы верстки страниц
Приемы верстки страницПриемы верстки страниц
Приемы верстки страницDenis Latushkin
 

More from Denis Latushkin (12)

Дополнительные возможности Javascript
Дополнительные возможности JavascriptДополнительные возможности Javascript
Дополнительные возможности Javascript
 
Дополнительные приёмы работы в DOM
Дополнительные приёмы работы в DOMДополнительные приёмы работы в DOM
Дополнительные приёмы работы в DOM
 
Нестатичное позиционирование и верстка форм
Нестатичное позиционирование и верстка формНестатичное позиционирование и верстка форм
Нестатичное позиционирование и верстка форм
 
Приёмы верстки страниц с использованием HTML + CSS
Приёмы верстки страниц с использованием HTML + CSSПриёмы верстки страниц с использованием HTML + CSS
Приёмы верстки страниц с использованием HTML + CSS
 
Габаритные свойства, блочная модель и псевдоэлементы CSS
Габаритные свойства, блочная модель и псевдоэлементы CSSГабаритные свойства, блочная модель и псевдоэлементы CSS
Габаритные свойства, блочная модель и псевдоэлементы CSS
 
Основы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSSОсновы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSS
 
Продвинутый HTML
Продвинутый HTMLПродвинутый HTML
Продвинутый HTML
 
Основы работы с Git
Основы работы с GitОсновы работы с Git
Основы работы с Git
 
NPM и модульная архитектура приложения
NPM и модульная архитектура приложенияNPM и модульная архитектура приложения
NPM и модульная архитектура приложения
 
Основы языка HTML
Основы языка HTMLОсновы языка HTML
Основы языка HTML
 
Объектное и прототипное программирование в Javascript
Объектное и прототипное программирование в JavascriptОбъектное и прототипное программирование в Javascript
Объектное и прототипное программирование в Javascript
 
Приемы верстки страниц
Приемы верстки страницПриемы верстки страниц
Приемы верстки страниц
 

Использование сторонних библиотек в веб-приложении

  • 1. Использование сторонних библиотек в веб- приложении Курс Frontend-разработки на Javascript + Vue/React
  • 2. Сторонние библиотеки • Сторонними библиотеками (3D-party libs) называются чужие скрипты, которые подключаются к приложению и позволяют использовать определенный функционал. • Сторонние библиотеки условно делятся на две группы: библиотеки функций и предметные библиотеки.
  • 3. Зачем используются 3D-party libs • Основная причина – сокращение времени разработки, дабы не писать уже существующий функционал. • Кроме того, сторонние библиотеки более устойчивые – они уже были протестированы и, значит, работают без багов и их не нужно тестировать самому. • Некоторые библиотеки используются для объединения и упрощения написания кода для разных сред исполнения.
  • 4. Как работать с 3D-party lib • Найти гайд по установке • Внедрить библиотеку в свой проект и запустить базовый пример • Сверяясь с документацией, решить свою задачу • В случае проблем - обращаться к документации или сообществу
  • 5. Библиотека jQuery • jQuery – библиотека, инкапсулирующая большинство DOM- операций в более простой, лаконичный синтаксис • Использовалась, когда в разных браузерах были разные подходы к решению одних и тех же DOM-задач и позволяла одинаково делать всё в разных браузерах. • Сегодня в новых проектах используется редко – отдаётся предпочтение стандартным возможностям DOM.
  • 6. jQuery • Среди возможностей jQuery: • Интеллектуальные выборки в дереве, навигация по дереву • Установка обработчиков событий • Расширенная работа со стилями • Простые AJAX-запросы • Анимации • Ценность jQuery в том числе в том, что для неё сегодня существует множество сторонних плагинов, позволяющих внедрить специфичные элементы интерфейса в своё приложение (Bootstrap, slick, jQuery UI, …) • jQuery не задействует возможности ES6+ и потому плохо интегрируется в новый код.
  • 7. jQuery • Сайт библиотеки - https://jquery.com/ • Документация по возможностям - https://api.jquery.com/
  • 8. Задача 1. • Создать JSON-документ со списком вопросов. У каждого вопроса есть текст вопроса и текст ответа. • Загрузить JSON-документ на страницу, вывести на базе этого набора данных аккордеон и настроить его работоспособность. • Переписать код приложения под использование jQuery, jQuery + сторонний плагин.
  • 9. Lodash (underscore) • Lodash – библиотека для унификации механизмов обработки данных в Javascript. • Используется для работы с массивами, объектами, числами, строками и т.д., предлагает множество дополнительных способов обработки массивов без необходимости писать свои методы обхода. • Для написания читабельного кода желательно применять lodash, поскольку её методы наглядно говорят о том, какие преобразования осуществляются с данными.
  • 10. Lodash (underscore) • Сайт библиотеки - https://lodash.com/ • Документация по возможностям - https://lodash.com/docs/
  • 12. Yandex Maps API • Yandex Maps API – открытая технология Яндекса, позволяющая встраивать карту в веб-приложение и далее работать с картой. • Аналог от Google – Google Maps API, но на данный момент технологии Яндекс не требуют привязки банковской карты и использование карт бесплатно (в ограниченных объемах)
  • 13. Возможности API карт • Установка карты в приложение • Управление картой (масштаб, тип и т.д.) • Нанесение на карту объектов и установка взаимодействия с ними • Отображение сферических панорам • Геокодинг
  • 14. Yandex Maps API • Сайт проекта - https://tech.yandex.ru/maps/ • Документация по библиотеке - https://tech.yandex.ru/maps/jsapi/doc/2.1/quick-start/index-docpage/
  • 15. Задача 3. • Загрузить из сервиса https://www.openbrewerydb.org/ список пивоварен, разместить их на карте мира и при клике на пивоварню – рядом с картой отображать детали выбранной пивоварни.
  • 16. Youtube API • Youtube API – библиотека для работы со встраиваемыми в веб- приложение видеофреймами из YouTube. • К возможностям библиотеки относится: • Управление воспроизведением видео во фрейме • Получение информации о видео • Управление очередью воспроизведения видео
  • 17. Youtube iFrame API • Документация по библиотеке: https://developers.google.com/youtube/iframe_api_reference
  • 18. Задача 4. • Загрузить в приложение видеофрейм с YouTube и создать на странице кнопку для воспроизведения/паузы, а также список закладок для видео.
  • 19. CKEditor • CKEditor – плагин для установки в приложение редактора форматируемого текста. • Среди существующих – он самый популярный, условно бесплатный и обладает наибольшим перечнем возможностей. • Сайт плагина: https://ckeditor.com/ , http://cdn.ckeditor.com/ • Ссылка на документацию: https://ckeditor.com/docs/ckeditor4/latest/guide/index.html
  • 20. Задача 5. • Создать приложение, которое позволит создавать, удалять документы и редактировать каждый как форматированный текст. Сохранять перечень документов в локальное хранилище.
  • 21. Highcharts • Highcharts – библиотека для отрисовки в приложении разнообразных графиков, диаграмм и прочих элементов графической визуализации данных. • На сегодняшний день в этой библиотеке собрано больше всего различных возможностей по отображению графиков и эта библиотека наиболее часто применяется для подобных целей. • Сайт проекта - https://www.highcharts.com/ • Документация - https://www.highcharts.com/docs/index
  • 22. Задача 6. • Создать форму для построения графика полинома 4-й степени. Самостоятельно: • Создать JSON-документ со списком стран. У каждой страны – название и численность за 2010 и 2015 год. Загрузить эти данные и построить гистограмму численности для каждой страны (два столбика для каждой страны).
  • 23. Подходы к работе с библиотеками • Существует два источника информации по решению проблем со сторонними библиотеками: • Официальная документация • Часто в документации перечисляются самые популярные пути использования библиотеки и начинать работу с библиотекой всегда стоит с документации. • Google и сообщества • При работе с библиотекой всегда рано или поздно появляются проблемы, решение которых не описано в основной документации. В таких случаях стоит гуглить. • Эффективный запрос в Google выглядит так: « [название библиотеки] [название модуля библиотеки] [описание проблемы]» на английском языке (кроме Yandex Maps API).