SlideShare uma empresa Scribd logo
1 de 32
Baixar para ler offline
ОБО МНЕ
Работаю в Avito
Делаю большое SPA
Преподаю JS в LoftSchool
Учу создавать веб-приложения
Люблю жену и JS
Но больше жену
Распространяю basis.js
Верю, что basis.js захватит мир
Сергей Мелюков
1
@smelukov
SINGLE
PAGE
APPLICATION
СОВРЕМЕННЫЕ
2
ПЛАН
3
• история развития
• проблемы разработки
• решение проблем
• демонстрация
• Q&A
О ЧЕМ ПОГОВОРИМ
ХАОС И УНЫНИЕ
ДО 2005 ГОДА
• Internet Explorer 6
• IFrame
• ActiveX
• Java Applet
• Flash
4
РЫВОК В СТОРОНУ ИНТЕРАКТИВНОСТИ
2005-2008 ГОДА
• AJAX
• SSE
• JSON-P
• jQuery
• Internet Explorer 6 

всё еще жив
5
СТРЕМИТЕЛЬНОЕ РАЗВИТИЕ ТЕХГОЛОГИЙ
2008-НАШИ ДНИ
• HTML 5
• Angular
• Backbone
• Knockout
• React
6
ОДНОСТРАНИЧНОЕ ПРИЛОЖЕНИЕ
SPA
«Нет» - перезагрузкам
страниц!
• уменьшение общего
времени ожидания
• ощущение целостности
• стирание границ web -
desktop
7
ДЕЛАТЬ КРУТЫЕ ВЕБ-ПРИЛОЖЕНИЯ
ТЕПЕРЬ-ТО МЫ МОЖЕМ
Правда…?
8
АРХИТЕКТУРА
ПРОБЛЕМА #1
• расширяемость без
костылей
• работоспособность
с течением времени
• переиспользование
9
ИСПОЛНИТЕЛИ
ПРИЛОЖЕНИЕ-КАТАЛОГ
• список
исполнителей
• количество
альбомов
• пагинация
10
ЖАНРЫ
ПРИЛОЖЕНИЕ-КАТАЛОГ
• список жанров
• количество
альбомов
• пагинация
11
ИСПОЛНИТЕЛЬ
ПРИЛОЖЕНИЕ-КАТАЛОГ
• жанры
• альбомы
• треки
• длительность
• пагинация
12
АЛЬБОМ
ПРИЛОЖЕНИЕ-КАТАЛОГ
• треки
• длительность
• пагинация
• реакция на
изменения
13
ПЕРЕИСПОЛЬЗОВАНИЕ
14
ОДИН ИСТОЧНИК - МНОГО ОТОБРАЖЕНИЙ
СПИСОК
ИСПОЛНИТЕЛЕЙ
ЖАНРЫ И
АЛЬБОМЫ
ИСПОЛНИТЕЛЬ
АЛЬБОМ
ВИДЖЕТЫ
СТАТИСТИКА
ОБЛАКО ТЕГОВ
ГРАФИКИ
ИСПОЛНИТЕЛИ
АЛЬБОМЫ
ПЕСНИ
ЖАНРЫ
ГЛАВНЫЙ ВОПРОС
ПЕРЕИСПОЛЬЗОВАНИЕ
- Надо ли постоянно
запрашивать с
сервера новые
данные?
- Нет! Храните всё
на клиенте.
15
КАКОЙ ОБЪЕМ ДАННЫХ МОЖНО ОБРАБОТАТЬ НА КЛИЕНТЕ?
ПЕРЕИСПОЛЬЗОВАНИЕ
• 1 000 записей?
• 5 000 записей?
• 10 000 записей?
• 50 000 записей?
Всё упирается в ресурсы,
алгоритмы и архитектуру!
16
МНОГО ДАННЫХ
ПРОБЛЕМА #2
• как получать?
• как хранить?
• как обрабатывать?
• как отображать?
17
DATA FLOW
ЖИЗНЕННЫЙ ЦИКЛ НЕ SPA
БРАУЗЕРСЕРВЕР ПОЛЬЗОВАТЕЛЬ
HTML DOM
действияредирект
18
DATA FLOW
ЖИЗНЕННЫЙ ЦИКЛ SPA
SPA
ПРИЛОЖЕНИЕ
СЕРВЕР
статика/JSON
get/post
ОТОБРАЖЕНИЕ
?
ПОЛЬЗОВАТЕЛЬ
DOM
действия
19
ШАБЛОН
<DIV>{NAME}</DIV>
<DIV>{LAST_NAME}</DIV>
ОТОБРАЖЕНИЕ
СТРОКОВЫЕ ШАБЛОНИЗАТОРЫ
ДАННЫЕСЕРВЕР БРАУЗЕР
полная
перерисовка
узлов
20
ШАБЛОН
<DIV>{NAME}</DIV>
<DIV>{LAST_NAME}</DIV>
ОТОБРАЖЕНИЕ
DOM-ШАБЛОНИЗАТОРЫ
ДАННЫЕ
СЕРВЕР БРАУЗЕР
перерисовка
изменившихся
узлов
ИМЕЮЩИЕСЯ
ДАННЫЕ
РАЗНИЦА
21
ИНСТРУМЕНТЫ РАЗРАБОТКИ
ПРОБЛЕМА #3
Найти и исправить:
• компонент
• шаблон
• словарь
Data flow
22
КОДОВАЯ БАЗА
23
ПРОСТОЕ ПРИЛОЖЕНИЕ
КОДОВАЯ БАЗА
24
СЛОЖНОЕ ПРИЛОЖЕНИЕ
DATA FLOW
25
ОТКУДА БЕРУТСЯ ДАННЫЕ?
DATA FLOW
26
КАКОЙ ПУТЬ ПРОХОДЯТ ДАННЫЕ?
27
BASIS.JS
ПЛАТФОРМА ДЛЯ ПОСТРОЕНИЯ SPA
BASIS.JS РЕШАЕТ ПРОБЛЕМЫ
28
• модульность (js, tmpl, css)
• компонентный подход
• структуры данных
• DOM-шаблонизация
• поддержка FRP
• инструменты разработки
BASIS.JS
ОСНОВНЫЕ ВЕХИ
• НАЧАЛО РАЗВИТИЯ
• ПЕРВОЕ SPA
2006 - 2007
• V 1.0
• ИЗОЛЯЦИЯ СТИЛЕЙ
• ЛОКАЛИЗАЦИЯ
• LIVE UPDATE
• INSPECTOR
• ПЛАГИН ДЛЯ CHROME
2008 - 2011 2012 - 2014 2015 - …
• ИНСТРУМЕНТИРОВАНИЕ
• REMOTE INSPECTOR
• РАЗВИТИЕ FRP• МОДЕЛИ
• ИНДЕКСЫ
• МОДУЛЬНОСТЬ
• ШАБЛОНИЗАТОР
• DEV TOOLS
29
DEMO
SPA НА BASIS.JS
30
DEMO
СТАТИСТИКА
31
Исполнители: 300 (0.8 мб)
Альбомы: 15 600 (13.6 мб)
Композиции: 156 096 (62.5 мб)
Индексы, DOM: 85.1 мб
Занято памяти: 162 мб
Самая долгая операция: запуск (2 сек)
»
«
задавайте ваши вопросы
СПАСИБО ЗА ВНИМАНИЕ
32
http://basisjs.com - официальный сайт
http://bit.ly/2blnRaj - цикл статей

Mais conteúdo relacionado

Mais procurados

Асинхронные запросы в MySQL или когда PDO становится мало (Максим Попов, Mail...
Асинхронные запросы в MySQL или когда PDO становится мало (Максим Попов, Mail...Асинхронные запросы в MySQL или когда PDO становится мало (Максим Попов, Mail...
Асинхронные запросы в MySQL или когда PDO становится мало (Максим Попов, Mail...Symfoniacs
 
Ложка дёгтя – Александр Лэйн, QIWI, Zabbix Moscow Meetup 2016
Ложка дёгтя – Александр Лэйн, QIWI, Zabbix Moscow Meetup 2016Ложка дёгтя – Александр Лэйн, QIWI, Zabbix Moscow Meetup 2016
Ложка дёгтя – Александр Лэйн, QIWI, Zabbix Moscow Meetup 2016Alexander Leyn
 
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...yaevents
 
Какой фреймворк нам нужен для Web? Денис Цыплаков
Какой фреймворк нам нужен для Web? Денис ЦыплаковКакой фреймворк нам нужен для Web? Денис Цыплаков
Какой фреймворк нам нужен для Web? Денис ЦыплаковAlex Tumanoff
 
Иван Бибилов "От Ванкувера до Азиады: как мы делаем спортивные проекты"
Иван Бибилов "От Ванкувера до Азиады: как мы делаем спортивные проекты"Иван Бибилов "От Ванкувера до Азиады: как мы делаем спортивные проекты"
Иван Бибилов "От Ванкувера до Азиады: как мы делаем спортивные проекты"Yandex
 
От больших к очень большим данным — зачем нужна нормализация в Big Data / Гол...
От больших к очень большим данным — зачем нужна нормализация в Big Data / Гол...От больших к очень большим данным — зачем нужна нормализация в Big Data / Гол...
От больших к очень большим данным — зачем нужна нормализация в Big Data / Гол...Ontico
 
Макс Волошин: Php + shell = ♥
Макс Волошин: Php + shell = ♥Макс Волошин: Php + shell = ♥
Макс Волошин: Php + shell = ♥Oleg Poludnenko
 
Chrome push notifications. Анатомия и разработка
Chrome push notifications. Анатомия и разработкаChrome push notifications. Анатомия и разработка
Chrome push notifications. Анатомия и разработкаAlexandr Mikhaylenko
 
Маштабирование веб-приложений
Маштабирование веб-приложенийМаштабирование веб-приложений
Маштабирование веб-приложенийYandex
 
Алексей Иванкин: Highload + PHP
Алексей Иванкин: Highload + PHPАлексей Иванкин: Highload + PHP
Алексей Иванкин: Highload + PHPOleg Poludnenko
 
Бекэнд для push-уведомлений своими руками
Бекэнд для push-уведомлений своими рукамиБекэнд для push-уведомлений своими руками
Бекэнд для push-уведомлений своими рукамиAlexandr Mikhaylenko
 
MySQLの文字コード事情 2017版
MySQLの文字コード事情 2017版MySQLの文字コード事情 2017版
MySQLの文字コード事情 2017版Masahiro Tomita
 
Tech Success: Web/2.0 startup HOWTO
Tech Success: Web/2.0 startup HOWTOTech Success: Web/2.0 startup HOWTO
Tech Success: Web/2.0 startup HOWTOlyncis
 
Tech Success: Web/2.0 startup HOWTO
Tech Success: Web/2.0 startup HOWTOTech Success: Web/2.0 startup HOWTO
Tech Success: Web/2.0 startup HOWTOlyncis
 
Владимир Русинов, Алексей Капранов "Яндекс.Диск: архитектура, синхронизация и...
Владимир Русинов, Алексей Капранов "Яндекс.Диск: архитектура, синхронизация и...Владимир Русинов, Алексей Капранов "Яндекс.Диск: архитектура, синхронизация и...
Владимир Русинов, Алексей Капранов "Яндекс.Диск: архитектура, синхронизация и...Yandex
 
А.Горбов, А.Фефелов. Секреты АБАК-ПРЕСС
А.Горбов, А.Фефелов. Секреты АБАК-ПРЕССА.Горбов, А.Фефелов. Секреты АБАК-ПРЕСС
А.Горбов, А.Фефелов. Секреты АБАК-ПРЕССit-people
 
Организация надежного резервного копирования веб-проекта. Практика и подводны...
Организация надежного резервного копирования веб-проекта. Практика и подводны...Организация надежного резервного копирования веб-проекта. Практика и подводны...
Организация надежного резервного копирования веб-проекта. Практика и подводны...Anton Baranov
 

Mais procurados (20)

мир без Jsp. thymeleaf 2.0
мир без Jsp. thymeleaf 2.0мир без Jsp. thymeleaf 2.0
мир без Jsp. thymeleaf 2.0
 
Асинхронные запросы в MySQL или когда PDO становится мало (Максим Попов, Mail...
Асинхронные запросы в MySQL или когда PDO становится мало (Максим Попов, Mail...Асинхронные запросы в MySQL или когда PDO становится мало (Максим Попов, Mail...
Асинхронные запросы в MySQL или когда PDO становится мало (Максим Попов, Mail...
 
Ложка дёгтя – Александр Лэйн, QIWI, Zabbix Moscow Meetup 2016
Ложка дёгтя – Александр Лэйн, QIWI, Zabbix Moscow Meetup 2016Ложка дёгтя – Александр Лэйн, QIWI, Zabbix Moscow Meetup 2016
Ложка дёгтя – Александр Лэйн, QIWI, Zabbix Moscow Meetup 2016
 
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
 
Какой фреймворк нам нужен для Web? Денис Цыплаков
Какой фреймворк нам нужен для Web? Денис ЦыплаковКакой фреймворк нам нужен для Web? Денис Цыплаков
Какой фреймворк нам нужен для Web? Денис Цыплаков
 
Иван Бибилов "От Ванкувера до Азиады: как мы делаем спортивные проекты"
Иван Бибилов "От Ванкувера до Азиады: как мы делаем спортивные проекты"Иван Бибилов "От Ванкувера до Азиады: как мы делаем спортивные проекты"
Иван Бибилов "От Ванкувера до Азиады: как мы делаем спортивные проекты"
 
633942
633942633942
633942
 
От больших к очень большим данным — зачем нужна нормализация в Big Data / Гол...
От больших к очень большим данным — зачем нужна нормализация в Big Data / Гол...От больших к очень большим данным — зачем нужна нормализация в Big Data / Гол...
От больших к очень большим данным — зачем нужна нормализация в Big Data / Гол...
 
Макс Волошин: Php + shell = ♥
Макс Волошин: Php + shell = ♥Макс Волошин: Php + shell = ♥
Макс Волошин: Php + shell = ♥
 
Drupal and NodeJS.
Drupal and NodeJS.Drupal and NodeJS.
Drupal and NodeJS.
 
Chrome push notifications. Анатомия и разработка
Chrome push notifications. Анатомия и разработкаChrome push notifications. Анатомия и разработка
Chrome push notifications. Анатомия и разработка
 
Маштабирование веб-приложений
Маштабирование веб-приложенийМаштабирование веб-приложений
Маштабирование веб-приложений
 
Алексей Иванкин: Highload + PHP
Алексей Иванкин: Highload + PHPАлексей Иванкин: Highload + PHP
Алексей Иванкин: Highload + PHP
 
Бекэнд для push-уведомлений своими руками
Бекэнд для push-уведомлений своими рукамиБекэнд для push-уведомлений своими руками
Бекэнд для push-уведомлений своими руками
 
MySQLの文字コード事情 2017版
MySQLの文字コード事情 2017版MySQLの文字コード事情 2017版
MySQLの文字コード事情 2017版
 
Tech Success: Web/2.0 startup HOWTO
Tech Success: Web/2.0 startup HOWTOTech Success: Web/2.0 startup HOWTO
Tech Success: Web/2.0 startup HOWTO
 
Tech Success: Web/2.0 startup HOWTO
Tech Success: Web/2.0 startup HOWTOTech Success: Web/2.0 startup HOWTO
Tech Success: Web/2.0 startup HOWTO
 
Владимир Русинов, Алексей Капранов "Яндекс.Диск: архитектура, синхронизация и...
Владимир Русинов, Алексей Капранов "Яндекс.Диск: архитектура, синхронизация и...Владимир Русинов, Алексей Капранов "Яндекс.Диск: архитектура, синхронизация и...
Владимир Русинов, Алексей Капранов "Яндекс.Диск: архитектура, синхронизация и...
 
А.Горбов, А.Фефелов. Секреты АБАК-ПРЕСС
А.Горбов, А.Фефелов. Секреты АБАК-ПРЕССА.Горбов, А.Фефелов. Секреты АБАК-ПРЕСС
А.Горбов, А.Фефелов. Секреты АБАК-ПРЕСС
 
Организация надежного резервного копирования веб-проекта. Практика и подводны...
Организация надежного резервного копирования веб-проекта. Практика и подводны...Организация надежного резервного копирования веб-проекта. Практика и подводны...
Организация надежного резервного копирования веб-проекта. Практика и подводны...
 

Destaque

Crooz meet fusion io3 open
Crooz meet fusion io3 openCrooz meet fusion io3 open
Crooz meet fusion io3 opentakaoka susumu
 
How Facebook's Technologies can define the future of VistA and Health IT
How Facebook's Technologies can define the future of VistA and Health ITHow Facebook's Technologies can define the future of VistA and Health IT
How Facebook's Technologies can define the future of VistA and Health ITRob Tweed
 
1st period jackson presidential campaign information and research graphic org...
1st period jackson presidential campaign information and research graphic org...1st period jackson presidential campaign information and research graphic org...
1st period jackson presidential campaign information and research graphic org...The Unquiet Library: Student Work
 
Edible insect in Thailand
Edible insect in ThailandEdible insect in Thailand
Edible insect in ThailandBUG Corporation
 
[Asiadragon] Slide báo cáo sản xuất năm 2014
[Asiadragon] Slide báo cáo sản xuất năm 2014[Asiadragon] Slide báo cáo sản xuất năm 2014
[Asiadragon] Slide báo cáo sản xuất năm 2014TheV Agency
 
yeditepe universitesi uluslararası kafa tabanı sempozyumu - Mustafa Bozbuğa
yeditepe universitesi uluslararası kafa tabanı sempozyumu - Mustafa Bozbuğayeditepe universitesi uluslararası kafa tabanı sempozyumu - Mustafa Bozbuğa
yeditepe universitesi uluslararası kafa tabanı sempozyumu - Mustafa BozbuğaAbdurrahman Şimşek
 
UX改善に必須だが「大変で実施しづらい ユーザテストを「本当に1分」で行うには
UX改善に必須だが「大変で実施しづらいユーザテストを「本当に1分」で行うにはUX改善に必須だが「大変で実施しづらいユーザテストを「本当に1分」で行うには
UX改善に必須だが「大変で実施しづらい ユーザテストを「本当に1分」で行うにはUX MILK
 
Invasive plant management milton
Invasive plant management miltonInvasive plant management milton
Invasive plant management miltonweedscience
 
UX milk (UX Jam) 20160108
UX milk (UX Jam) 20160108UX milk (UX Jam) 20160108
UX milk (UX Jam) 20160108Yukio Andoh
 
Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)Pavel Chertorogov
 
JavaScript: прошлое, настоящее и будущее.
JavaScript: прошлое, настоящее и будущее.JavaScript: прошлое, настоящее и будущее.
JavaScript: прошлое, настоящее и будущее.FDConf
 
Как сделать ваш JavaScript быстрее
Как сделать ваш JavaScript быстрееКак сделать ваш JavaScript быстрее
Как сделать ваш JavaScript быстрееRoman Dvornov
 
Инструментируй это
Инструментируй этоИнструментируй это
Инструментируй этоRoman Dvornov
 
SEO屋がUXを 考えてみる
SEO屋がUXを考えてみるSEO屋がUXを考えてみる
SEO屋がUXを 考えてみるTomohiko Ishii
 
部屋の模様替えから考えるUIUXについて
部屋の模様替えから考えるUIUXについて部屋の模様替えから考えるUIUXについて
部屋の模様替えから考えるUIUXについてUIUX Lab,CyberAgent
 
Healthcare_BMGen_VPDesign_Dec2016
Healthcare_BMGen_VPDesign_Dec2016Healthcare_BMGen_VPDesign_Dec2016
Healthcare_BMGen_VPDesign_Dec2016Shin Yamamoto
 
サービスデザインの骨格と視点
サービスデザインの骨格と視点サービスデザインの骨格と視点
サービスデザインの骨格と視点Kazumichi (Mario) Sakata
 
Sosyal medya kullanımında 10 kural
Sosyal medya kullanımında 10 kuralSosyal medya kullanımında 10 kural
Sosyal medya kullanımında 10 kuralAzmi KELEŞOĞLU
 

Destaque (20)

Crooz meet fusion io3 open
Crooz meet fusion io3 openCrooz meet fusion io3 open
Crooz meet fusion io3 open
 
How Facebook's Technologies can define the future of VistA and Health IT
How Facebook's Technologies can define the future of VistA and Health ITHow Facebook's Technologies can define the future of VistA and Health IT
How Facebook's Technologies can define the future of VistA and Health IT
 
CVant3
CVant3CVant3
CVant3
 
1st period jackson presidential campaign information and research graphic org...
1st period jackson presidential campaign information and research graphic org...1st period jackson presidential campaign information and research graphic org...
1st period jackson presidential campaign information and research graphic org...
 
Edible insect in Thailand
Edible insect in ThailandEdible insect in Thailand
Edible insect in Thailand
 
[Asiadragon] Slide báo cáo sản xuất năm 2014
[Asiadragon] Slide báo cáo sản xuất năm 2014[Asiadragon] Slide báo cáo sản xuất năm 2014
[Asiadragon] Slide báo cáo sản xuất năm 2014
 
yeditepe universitesi uluslararası kafa tabanı sempozyumu - Mustafa Bozbuğa
yeditepe universitesi uluslararası kafa tabanı sempozyumu - Mustafa Bozbuğayeditepe universitesi uluslararası kafa tabanı sempozyumu - Mustafa Bozbuğa
yeditepe universitesi uluslararası kafa tabanı sempozyumu - Mustafa Bozbuğa
 
UX改善に必須だが「大変で実施しづらい ユーザテストを「本当に1分」で行うには
UX改善に必須だが「大変で実施しづらいユーザテストを「本当に1分」で行うにはUX改善に必須だが「大変で実施しづらいユーザテストを「本当に1分」で行うには
UX改善に必須だが「大変で実施しづらい ユーザテストを「本当に1分」で行うには
 
Invasive plant management milton
Invasive plant management miltonInvasive plant management milton
Invasive plant management milton
 
UX milk (UX Jam) 20160108
UX milk (UX Jam) 20160108UX milk (UX Jam) 20160108
UX milk (UX Jam) 20160108
 
Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)
 
JavaScript: прошлое, настоящее и будущее.
JavaScript: прошлое, настоящее и будущее.JavaScript: прошлое, настоящее и будущее.
JavaScript: прошлое, настоящее и будущее.
 
OLFAKTOR OLUK MENİNGİOMLARI
OLFAKTOR OLUK MENİNGİOMLARIOLFAKTOR OLUK MENİNGİOMLARI
OLFAKTOR OLUK MENİNGİOMLARI
 
Как сделать ваш JavaScript быстрее
Как сделать ваш JavaScript быстрееКак сделать ваш JavaScript быстрее
Как сделать ваш JavaScript быстрее
 
Инструментируй это
Инструментируй этоИнструментируй это
Инструментируй это
 
SEO屋がUXを 考えてみる
SEO屋がUXを考えてみるSEO屋がUXを考えてみる
SEO屋がUXを 考えてみる
 
部屋の模様替えから考えるUIUXについて
部屋の模様替えから考えるUIUXについて部屋の模様替えから考えるUIUXについて
部屋の模様替えから考えるUIUXについて
 
Healthcare_BMGen_VPDesign_Dec2016
Healthcare_BMGen_VPDesign_Dec2016Healthcare_BMGen_VPDesign_Dec2016
Healthcare_BMGen_VPDesign_Dec2016
 
サービスデザインの骨格と視点
サービスデザインの骨格と視点サービスデザインの骨格と視点
サービスデザインの骨格と視点
 
Sosyal medya kullanımında 10 kural
Sosyal medya kullanımında 10 kuralSosyal medya kullanımında 10 kural
Sosyal medya kullanımında 10 kural
 

Semelhante a Современные Single Page Application

Денис Иванов
Денис ИвановДенис Иванов
Денис ИвановCodeFest
 
Фронтенд разработка без боли
Фронтенд разработка без болиФронтенд разработка без боли
Фронтенд разработка без болиAnton Piskunov
 
Юрий Буянов «Архитектура Goozy»
Юрий Буянов «Архитектура Goozy»Юрий Буянов «Архитектура Goozy»
Юрий Буянов «Архитектура Goozy»e-Legion
 
YuryByyanov (e-legion) @ CodeCamp2011
YuryByyanov (e-legion) @ CodeCamp2011YuryByyanov (e-legion) @ CodeCamp2011
YuryByyanov (e-legion) @ CodeCamp2011CodeCamp
 
SECON'2016. Сергей Аверин. Javascript-фреймворки:
 должен остаться только один
SECON'2016. Сергей Аверин. Javascript-фреймворки:
 должен остаться только одинSECON'2016. Сергей Аверин. Javascript-фреймворки:
 должен остаться только один
SECON'2016. Сергей Аверин. Javascript-фреймворки:
 должен остаться только одинSECON
 
SECON'2016. Аверин Сергей, Javascript-фреймворки:
 должен остаться только один
SECON'2016. Аверин Сергей, Javascript-фреймворки:
 должен остаться только одинSECON'2016. Аверин Сергей, Javascript-фреймворки:
 должен остаться только один
SECON'2016. Аверин Сергей, Javascript-фреймворки:
 должен остаться только одинSECON
 
«Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС
«Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС «Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС
«Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС 2ГИС Технологии
 
Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"Ontico
 
Баба-Яга против! — Роман Дворнов, Ostrovok.ru
Баба-Яга против! — Роман Дворнов, Ostrovok.ruБаба-Яга против! — Роман Дворнов, Ostrovok.ru
Баба-Яга против! — Роман Дворнов, Ostrovok.ruYandex
 
Игры с виртуализацией в JavaScript, или как я переписал эмулятор, Евгений Пот...
Игры с виртуализацией в JavaScript, или как я переписал эмулятор, Евгений Пот...Игры с виртуализацией в JavaScript, или как я переписал эмулятор, Евгений Пот...
Игры с виртуализацией в JavaScript, или как я переписал эмулятор, Евгений Пот...Ontico
 
Баба Яга против!
Баба Яга против!Баба Яга против!
Баба Яга против!Roman Dvornov
 
Диагностика производительности корпоративных приложений (Малышев)
Диагностика производительности корпоративных приложений (Малышев)Диагностика производительности корпоративных приложений (Малышев)
Диагностика производительности корпоративных приложений (Малышев)КРОК
 
Асинхронная репликация без цензуры: архитектурные проблемы MySQL, или почему ...
Асинхронная репликация без цензуры: архитектурные проблемы MySQL, или почему ...Асинхронная репликация без цензуры: архитектурные проблемы MySQL, или почему ...
Асинхронная репликация без цензуры: архитектурные проблемы MySQL, или почему ...Oleg Tsarev
 
Web and mobile development for intersystems caché, Eduard Lebedyuk
Web and mobile development for intersystems caché, Eduard LebedyukWeb and mobile development for intersystems caché, Eduard Lebedyuk
Web and mobile development for intersystems caché, Eduard LebedyukInterSystems
 
Скорость не в ущерб качеству, web-разработка на Java, Java day, Omsk, 2014
Скорость не в ущерб качеству, web-разработка на Java, Java day, Omsk, 2014Скорость не в ущерб качеству, web-разработка на Java, Java day, Omsk, 2014
Скорость не в ущерб качеству, web-разработка на Java, Java day, Omsk, 2014Anna Tarasenko
 
Перепись приложения. Нативного. На JS. Done. | Odessa Frontend Meetup #10
Перепись приложения. Нативного. На JS. Done. | Odessa Frontend Meetup #10Перепись приложения. Нативного. На JS. Done. | Odessa Frontend Meetup #10
Перепись приложения. Нативного. На JS. Done. | Odessa Frontend Meetup #10OdessaFrontend
 
SECON'2016. Мухаметов Андрей, RxSwift && Apple TV - так ли хорошо всё новое?
SECON'2016. Мухаметов Андрей, RxSwift && Apple TV - так ли хорошо всё новое?SECON'2016. Мухаметов Андрей, RxSwift && Apple TV - так ли хорошо всё новое?
SECON'2016. Мухаметов Андрей, RxSwift && Apple TV - так ли хорошо всё новое?SECON
 
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)Zabbix
 
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)Ontico
 
Александр Кашеверов — Коротко про WEB: HTML, CSS, JS.
Александр Кашеверов — Коротко про WEB: HTML, CSS, JS.Александр Кашеверов — Коротко про WEB: HTML, CSS, JS.
Александр Кашеверов — Коротко про WEB: HTML, CSS, JS.DataArt
 

Semelhante a Современные Single Page Application (20)

Денис Иванов
Денис ИвановДенис Иванов
Денис Иванов
 
Фронтенд разработка без боли
Фронтенд разработка без болиФронтенд разработка без боли
Фронтенд разработка без боли
 
Юрий Буянов «Архитектура Goozy»
Юрий Буянов «Архитектура Goozy»Юрий Буянов «Архитектура Goozy»
Юрий Буянов «Архитектура Goozy»
 
YuryByyanov (e-legion) @ CodeCamp2011
YuryByyanov (e-legion) @ CodeCamp2011YuryByyanov (e-legion) @ CodeCamp2011
YuryByyanov (e-legion) @ CodeCamp2011
 
SECON'2016. Сергей Аверин. Javascript-фреймворки:
 должен остаться только один
SECON'2016. Сергей Аверин. Javascript-фреймворки:
 должен остаться только одинSECON'2016. Сергей Аверин. Javascript-фреймворки:
 должен остаться только один
SECON'2016. Сергей Аверин. Javascript-фреймворки:
 должен остаться только один
 
SECON'2016. Аверин Сергей, Javascript-фреймворки:
 должен остаться только один
SECON'2016. Аверин Сергей, Javascript-фреймворки:
 должен остаться только одинSECON'2016. Аверин Сергей, Javascript-фреймворки:
 должен остаться только один
SECON'2016. Аверин Сергей, Javascript-фреймворки:
 должен остаться только один
 
«Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС
«Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС «Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС
«Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС
 
Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"
 
Баба-Яга против! — Роман Дворнов, Ostrovok.ru
Баба-Яга против! — Роман Дворнов, Ostrovok.ruБаба-Яга против! — Роман Дворнов, Ostrovok.ru
Баба-Яга против! — Роман Дворнов, Ostrovok.ru
 
Игры с виртуализацией в JavaScript, или как я переписал эмулятор, Евгений Пот...
Игры с виртуализацией в JavaScript, или как я переписал эмулятор, Евгений Пот...Игры с виртуализацией в JavaScript, или как я переписал эмулятор, Евгений Пот...
Игры с виртуализацией в JavaScript, или как я переписал эмулятор, Евгений Пот...
 
Баба Яга против!
Баба Яга против!Баба Яга против!
Баба Яга против!
 
Диагностика производительности корпоративных приложений (Малышев)
Диагностика производительности корпоративных приложений (Малышев)Диагностика производительности корпоративных приложений (Малышев)
Диагностика производительности корпоративных приложений (Малышев)
 
Асинхронная репликация без цензуры: архитектурные проблемы MySQL, или почему ...
Асинхронная репликация без цензуры: архитектурные проблемы MySQL, или почему ...Асинхронная репликация без цензуры: архитектурные проблемы MySQL, или почему ...
Асинхронная репликация без цензуры: архитектурные проблемы MySQL, или почему ...
 
Web and mobile development for intersystems caché, Eduard Lebedyuk
Web and mobile development for intersystems caché, Eduard LebedyukWeb and mobile development for intersystems caché, Eduard Lebedyuk
Web and mobile development for intersystems caché, Eduard Lebedyuk
 
Скорость не в ущерб качеству, web-разработка на Java, Java day, Omsk, 2014
Скорость не в ущерб качеству, web-разработка на Java, Java day, Omsk, 2014Скорость не в ущерб качеству, web-разработка на Java, Java day, Omsk, 2014
Скорость не в ущерб качеству, web-разработка на Java, Java day, Omsk, 2014
 
Перепись приложения. Нативного. На JS. Done. | Odessa Frontend Meetup #10
Перепись приложения. Нативного. На JS. Done. | Odessa Frontend Meetup #10Перепись приложения. Нативного. На JS. Done. | Odessa Frontend Meetup #10
Перепись приложения. Нативного. На JS. Done. | Odessa Frontend Meetup #10
 
SECON'2016. Мухаметов Андрей, RxSwift && Apple TV - так ли хорошо всё новое?
SECON'2016. Мухаметов Андрей, RxSwift && Apple TV - так ли хорошо всё новое?SECON'2016. Мухаметов Андрей, RxSwift && Apple TV - так ли хорошо всё новое?
SECON'2016. Мухаметов Андрей, RxSwift && Apple TV - так ли хорошо всё новое?
 
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
 
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
 
Александр Кашеверов — Коротко про WEB: HTML, CSS, JS.
Александр Кашеверов — Коротко про WEB: HTML, CSS, JS.Александр Кашеверов — Коротко про WEB: HTML, CSS, JS.
Александр Кашеверов — Коротко про WEB: HTML, CSS, JS.
 

Современные Single Page Application