SlideShare une entreprise Scribd logo
1  sur  42
Télécharger pour lire hors ligne
ЗАЧЕМ НУЖЕН
EMBERJS,
ЕСЛИ МНЕ
ХВАТАЕТ JQUERY
DUMP Conference, 2014
brought by Sergey N. Bolshchikov
● Ведущий front end разработчик
в New ProImage
● Со-организатор
EmberJS Tel-Aviv Meetup
● Со-организатор
EmberFest Europe
Я!
1
ВЫ!
● Кто пишет front end?
● Кто знает JavaScript?
● Кто использует какой-либо JavaScript MVC
фреймворк?
● Кто использует EmberJS?
2
- КАКОЙ MVC ФРЕЙМВОРК ТЫ
БУДЕШЬ ИСПОЛЬЗОВАТЬ
- НИКАКОЙ, JQUERY ХВАТИТ
3
1. <div id="form">
2. <div>
3. <label>First Name:</label> <input id="firstName"
placeholder="your first name" />
4. </div>
5. <div>
6. <label>Last Name:</label> <input id="lastName"
placeholder="your last name" />
7. </div>
8. <div>
9. <label>Full Name:</label> <input id="fullName"
placeholder="your full name" readonly/>
10. </div>
11. </div>
JQUERY HTML
4
JQUERY JS
1. var App = {
2. user: {}
3. },
4. firstNameInput = $('#firstName'),
5. lastNameInput = $('#lastName'),
6. fullNameInput = $('#fullName');
7. // set initial values
8. fullNameInput.val(App.user.firstName + ' ' + App.user.lastName);
9. // bind events
10. firstNameInput.on('keyup', function () {
11. App.user.firstName = firstNameInput.val();
12. fullNameInput.val(firstNameInput.val() + ' ' + lastNameInput.
val());
13. });
14. lastNameInput.on('keyup', function () {
15. App.user.lastName = lastNameInput.val();
16. fullNameInput.val(firstNameInput.val() + ' ' + lastNameInput.
val());
17. });
18. window.App = App;
5
EMBER HTML
1. <script type="text/x-handlebars" id="application">
2. <div id="form">
3. <div>
4. <label>First Name:</label> {{input value=App.
user.firstName placeholder="your first name"}}
5. </div>
6. <div>
7. <label>Last Name:</label> {{input value=App.user.
lastName placeholder="your last name"}}
8. </div>
9. <div>
10. <label>Full Name:</label> {{input value=App.user.
fullName placeholder="your full name" readonly="
readonly"}}
11. </div>
12. </div>
13. </script>
6
EMBER HTML
1. <script type="text/x-handlebars" id="application">
2. <div id="form">
3. <div>
4. <label>First Name:</label> {{input value=App.
user.firstName placeholder="your first name"}}
5. </div>
6. <div>
7. <label>Last Name:</label> {{input value=App.user.
lastName placeholder="your last name"}}
8. </div>
9. <div>
10. <label>Full Name:</label> {{input value=App.user.
fullName placeholder="your full name" readonly="
readonly"}}
11. </div>
12. </div>
13. </script>
7
EMBER JS
1. var App = Ember.Application.create({
2. user: Ember.Object.createWithMixins({
3. fullName: function () {
4. return this.get('firstName') + ' ' + this.get
('lastName');
5. }.property('firstName', 'lastName')
6. })
7. });
8
МНЕ ХВАТАЕТ JQUERY
1. var App = Ember.Application.create({
2. user: Ember.Object.createWithMixins
({
3. fullName: function () {
4. return this.get('firstName') + '
' + this.get('lastName');
5. }.property('firstName',
'lastName')
6. })
7. });
1. var App = {
2. user: {}
3. },
4. firstNameInput = $('#firstName'),
5. lastNameInput = $('#lastName'),
6. fullNameInput = $('#fullName');
7. // set initial values
8. fullNameInput.val(App.user.firstName +
' ' + App.user.lastName);
9. // bind events
10. firstNameInput.on('keyup', function ()
{
11. App.user.firstName = firstNameInput.
val();
12. fullNameInput.val(firstNameInput.
val() + ' ' + lastNameInput.val());
13. });
14. lastNameInput.on('keyup', function () {
15. App.user.lastName = lastNameInput.
val();
16. fullNameInput.val(firstNameInput.
val() + ' ' + lastNameInput.val());
17. });
18. window.App = App;
9
ЗАЧЕМ
НУЖЕН
EMBERJS
source: http://www.flickr.com/photos/24589924@N04/3426111251/
1. Структура
приложения
ЗАЧЕМ
НУЖЕН
EMBERJS
source: http://blog.discoverymachine.com/2013/01/24/is-a-designed-framework-required-for-knowledge-flow/
1. Структура
приложения
ЗАЧЕМ
НУЖЕН
EMBERJS
source: http://binatani.com/1957-hudson-wiring-diagram-of-complete-internal-electrical-system/1957-hudson-internal-electrical-components-wiring-diagram/
1. Структура
приложения
2. Связка
компонентов
АРХИТЕКТУРА
ПРИЛОЖЕНИЯ
РАЗДЕЛЕНИЕ ОТВЕТСТВЕННОСТЕЙ
ДАННЫЕ ЛОГИКА
UI
14
MODEL-VIEW-CONTROLLER (MVC)
MODEL
CONTROLLERVIEW
USER
source: http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
изменяетобновляет
используетвидит
15
РАЗДЕЛЕНИЕ ОТВЕТСТВЕННОСТЕЙ
ДАННЫЕ ЛОГИКА
UI
16
РАЗДЕЛЕНИЕ ОТВЕТСТВЕННОСТЕЙ
ДАННЫЕ ЛОГИКА
UIзапуск
приложения
18
РАЗДЕЛЕНИЕ ОТВЕТСТВЕННОСТЕЙ
ДАННЫЕ ЛОГИКА
UI
состояние
приложения
запуск
приложения
19
РАЗДЕЛЕНИЕ ОТВЕТСТВЕННОСТЕЙ
ДАННЫЕ ЛОГИКА
UI
иерархия
вьюшек
состояние
приложения
запуск
приложения
20
РАЗДЕЛЕНИЕ ОТВЕТСТВЕННОСТЕЙ
ДАННЫЕ ЛОГИКА
UI
иерархия
вьюшек
состояние
приложения
запуск
приложения
URL
21
MVC от EMBERJS
MODEL
CONTROLLER
VIEW
USER
source: http://www.youtube.com/watch?v=s1dhXamEAKQ
ROUTE
ROUTER
TEMPLATEвидит
использует
обновляет
активирует
обновляет
уведомляет
22
MVC от EMBERJS
MODEL
CONTROLLER
VIEW
USER
source: http://www.youtube.com/watch?v=s1dhXamEAKQ
ROUTE
ROUTER
TEMPLATEвидит
использует
обновляет
активирует
обновляет
уведомляет
23
СВЯЗКА
КОМПОНЕНТОВ
СВЯЗКА КОМПОНЕНТОВ
MODEL
CONTROLLER
VIEW
USER
source: http://www.youtube.com/watch?v=s1dhXamEAKQ
ROUTE
ROUTER
TEMPLATEвидит
использует
обновляет
активирует
обновляет
создает
определяет
25
СВЯЗКА КОМПОНЕНТОВ
MODEL
CONTROLLER
VIEW
USER
source: http://www.youtube.com/watch?v=s1dhXamEAKQ
ROUTE
ROUTER
TEMPLATEвидит
использует
обновляет
активирует
обновляет
создает
определяет
26
СВЯЗКА КОМПОНЕНТОВ
MODEL
CONTROLLER
VIEW
USER
source: http://www.youtube.com/watch?v=s1dhXamEAKQ
ROUTE
ROUTER
TEMPLATEвидит
использует
обновляет
активирует
обновляет
создает
определяет
27
КОНВЕНЦИИ
Route Name Controller Route Template
modules ModulesController ModulesRoute modules
sessions SessionsController SessionsRoute sessions
sessions/session SessionController SessionRoute session
28
ПФФФ…
АРХИТЕКТУРУ МОЖНО
ПОСТРОИТЬ И С BACKBONE,
КОТОРЫЙ В 10 РАЗ ЛЕГЧЕ
А КАК НА СЧЕТ
СИНХРОНИЗАЦИИ МЕЖДУ
МОДЕЛЬЮ И UI?
ДАННЫЕ ГРАФИКА
31
ДАННЫЕ ГРАФИКА
32
TWO-WAY BINDINGS
ДВУСТОРОННИЕ СВЯЗИ
<div id="form">
<div>
<label>First Name:</label>
{{input value=App.user.firstName placeholder="your first name"}}
</div>
<div>
<label>Last Name:</label>
{{input value=App.user.lastName placeholder="your last name"}}
</div>
<div>
<label>Full Name:</label>
{{input value=App.user.fullName placeholder="your full name"}}
</div>
</div>
HBS
var App = Ember.Application.create({
user: {}
});
JS
34
COMPUTED PROPERTIES
ВЫЧИСЛЯЕМЫЕ ЗНАЧЕНИЯ
<div id="form">
<div>
<label>First Name:</label>
{{input value=App.user.firstName placeholder="your first name"}}
</div>
<div>
<label>Last Name:</label>
{{input value=App.user.lastName placeholder="your last name"}}
</div>
<div>
<label>Full Name:</label>
{{input value=App.user.fullName placeholder="your full name"}}
</div>
</div>
HBS
var App = Ember.Application.create({
user: Ember.Object.createWithMixins({
fullName: function () {
return this.get('firstName') + ' ' + this.get('lastName');
}.property('firstName', 'lastName')
})
});
JS
36
А ЧТО ЕЩЕ?
EMBER и БОЛЬШИЕ СПИСКИ
EMBER против ANGULAR
А ЕЩЕ ЕСТЬ
EMBER DATA
39
ЧТО ДАЛЬШЕ?
1. EmberJS
2. Ember Watch
3. Начинаем работать с Ember.js
4. Анатомия Ember.js
40
СПАСИБО ЗА ВНИМАНИЕ
mail: sergey@bolshchikov.net
site: http://bolshchikov.net
blog: http://blog.bolshchikov.net
linkedin: http://www.linkedin.com/in/bolshchikov
github: http://github.com/bolshchikov

Contenu connexe

Tendances

CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлению
CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлениюCodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлению
CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлениюCodeFest
 
"CommonJS для браузера", Антон Шувалов, MoscowJS 15
"CommonJS для браузера", Антон Шувалов, MoscowJS 15"CommonJS для браузера", Антон Шувалов, MoscowJS 15
"CommonJS для браузера", Антон Шувалов, MoscowJS 15MoscowJS
 
Quick introduction jQuery
Quick introduction jQueryQuick introduction jQuery
Quick introduction jQueryShalva Usubov
 
"Dependency Injection. JavaScript.", Сергей Камардин, MoscowJS 15
"Dependency Injection. JavaScript.", Сергей Камардин, MoscowJS 15"Dependency Injection. JavaScript.", Сергей Камардин, MoscowJS 15
"Dependency Injection. JavaScript.", Сергей Камардин, MoscowJS 15MoscowJS
 
JS Fest 2018. Лилия Карпенко. Особенности создания IOS / Android Mobile Apps ...
JS Fest 2018. Лилия Карпенко. Особенности создания IOS / Android Mobile Apps ...JS Fest 2018. Лилия Карпенко. Особенности создания IOS / Android Mobile Apps ...
JS Fest 2018. Лилия Карпенко. Особенности создания IOS / Android Mobile Apps ...JSFestUA
 
Пользователь точно оценит! Повышение производительности мобильных приложений ...
Пользователь точно оценит! Повышение производительности мобильных приложений ...Пользователь точно оценит! Повышение производительности мобильных приложений ...
Пользователь точно оценит! Повышение производительности мобильных приложений ...Ontico
 
2014 Jeeconf - Geb Spock
2014 Jeeconf - Geb Spock2014 Jeeconf - Geb Spock
2014 Jeeconf - Geb SpockBohdan Danyliuk
 
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесьИзоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесьCodeFest
 
Angular 2: Всех переиграл
Angular 2: Всех переигралAngular 2: Всех переиграл
Angular 2: Всех переигралEugene Zharkov
 
Профилирование и оптимизация jQuery–кода (Владимир Журавлёв)
Профилирование и оптимизация jQuery–кода (Владимир Журавлёв)Профилирование и оптимизация jQuery–кода (Владимир Журавлёв)
Профилирование и оптимизация jQuery–кода (Владимир Журавлёв)Ontico
 
Профилирование и оптимизация jQuery–кода
Профилирование и оптимизация jQuery–кодаПрофилирование и оптимизация jQuery–кода
Профилирование и оптимизация jQuery–кодаprivate_face
 
Профилирования и оптимизация jQuery-кода
Профилирования и оптимизация jQuery-кодаПрофилирования и оптимизация jQuery-кода
Профилирования и оптимизация jQuery-кодаprivate_face
 
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИСTARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС2ГИС Технологии
 

Tendances (14)

CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлению
CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлениюCodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлению
CodeFest 2013. Родионов А. — От Selenium к Watir — путь к просветлению
 
"CommonJS для браузера", Антон Шувалов, MoscowJS 15
"CommonJS для браузера", Антон Шувалов, MoscowJS 15"CommonJS для браузера", Антон Шувалов, MoscowJS 15
"CommonJS для браузера", Антон Шувалов, MoscowJS 15
 
Quick introduction jQuery
Quick introduction jQueryQuick introduction jQuery
Quick introduction jQuery
 
"Dependency Injection. JavaScript.", Сергей Камардин, MoscowJS 15
"Dependency Injection. JavaScript.", Сергей Камардин, MoscowJS 15"Dependency Injection. JavaScript.", Сергей Камардин, MoscowJS 15
"Dependency Injection. JavaScript.", Сергей Камардин, MoscowJS 15
 
JS Fest 2018. Лилия Карпенко. Особенности создания IOS / Android Mobile Apps ...
JS Fest 2018. Лилия Карпенко. Особенности создания IOS / Android Mobile Apps ...JS Fest 2018. Лилия Карпенко. Особенности создания IOS / Android Mobile Apps ...
JS Fest 2018. Лилия Карпенко. Особенности создания IOS / Android Mobile Apps ...
 
Пользователь точно оценит! Повышение производительности мобильных приложений ...
Пользователь точно оценит! Повышение производительности мобильных приложений ...Пользователь точно оценит! Повышение производительности мобильных приложений ...
Пользователь точно оценит! Повышение производительности мобильных приложений ...
 
Почему Mojolicious?
Почему Mojolicious?Почему Mojolicious?
Почему Mojolicious?
 
2014 Jeeconf - Geb Spock
2014 Jeeconf - Geb Spock2014 Jeeconf - Geb Spock
2014 Jeeconf - Geb Spock
 
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесьИзоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесь
 
Angular 2: Всех переиграл
Angular 2: Всех переигралAngular 2: Всех переиграл
Angular 2: Всех переиграл
 
Профилирование и оптимизация jQuery–кода (Владимир Журавлёв)
Профилирование и оптимизация jQuery–кода (Владимир Журавлёв)Профилирование и оптимизация jQuery–кода (Владимир Журавлёв)
Профилирование и оптимизация jQuery–кода (Владимир Журавлёв)
 
Профилирование и оптимизация jQuery–кода
Профилирование и оптимизация jQuery–кодаПрофилирование и оптимизация jQuery–кода
Профилирование и оптимизация jQuery–кода
 
Профилирования и оптимизация jQuery-кода
Профилирования и оптимизация jQuery-кодаПрофилирования и оптимизация jQuery-кода
Профилирования и оптимизация jQuery-кода
 
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИСTARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС
TARS: Сделай уровень frontend-рутины 0% — Артём Малко, 2ГИС
 

En vedette

Ember Reusable Components and Widgets
Ember Reusable Components and WidgetsEmber Reusable Components and Widgets
Ember Reusable Components and WidgetsSergey Bolshchikov
 
New Component Patterns in Ember.js
New Component Patterns in Ember.jsNew Component Patterns in Ember.js
New Component Patterns in Ember.jsMatthew Beale
 
Building Ambitious Web Apps with Ember
Building Ambitious Web Apps with EmberBuilding Ambitious Web Apps with Ember
Building Ambitious Web Apps with Embergbabiars
 
Introduction to Ember.js and how we used it at FlowPro.io
Introduction to Ember.js and how we used it at FlowPro.ioIntroduction to Ember.js and how we used it at FlowPro.io
Introduction to Ember.js and how we used it at FlowPro.ioPaul Knittel
 

En vedette (6)

Talking code: How To
Talking code: How ToTalking code: How To
Talking code: How To
 
Ember components
Ember componentsEmber components
Ember components
 
Ember Reusable Components and Widgets
Ember Reusable Components and WidgetsEmber Reusable Components and Widgets
Ember Reusable Components and Widgets
 
New Component Patterns in Ember.js
New Component Patterns in Ember.jsNew Component Patterns in Ember.js
New Component Patterns in Ember.js
 
Building Ambitious Web Apps with Ember
Building Ambitious Web Apps with EmberBuilding Ambitious Web Apps with Ember
Building Ambitious Web Apps with Ember
 
Introduction to Ember.js and how we used it at FlowPro.io
Introduction to Ember.js and how we used it at FlowPro.ioIntroduction to Ember.js and how we used it at FlowPro.io
Introduction to Ember.js and how we used it at FlowPro.io
 

Similaire à Зачем нужен EmberJS, если мне хвататет jQuery

Опыт разработки эффективного SPA
Опыт разработки эффективного SPAОпыт разработки эффективного SPA
Опыт разработки эффективного SPAEugene Abrosimov
 
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)7bits
 
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.jsОмские ИТ-субботники
 
Mobile automation uamobile
Mobile automation uamobileMobile automation uamobile
Mobile automation uamobileUA Mobile
 
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
Архитектура кода нового 2ГИС Web API или куда мы дели MVCАрхитектура кода нового 2ГИС Web API или куда мы дели MVC
Архитектура кода нового 2ГИС Web API или куда мы дели MVCDevDay
 
iOS and Android Mobile Test Automation
iOS and Android Mobile Test AutomationiOS and Android Mobile Test Automation
iOS and Android Mobile Test AutomationAndrii Dzynia
 
Фреймворк Slot, Good Parts, Александр Бирюков
Фреймворк Slot, Good Parts, Александр БирюковФреймворк Slot, Good Parts, Александр Бирюков
Фреймворк Slot, Good Parts, Александр БирюковDevDay
 
Ember.js ответ на почти все вопросы - java script frameworks day 2014
Ember.js   ответ на почти все вопросы - java script frameworks day 2014Ember.js   ответ на почти все вопросы - java script frameworks day 2014
Ember.js ответ на почти все вопросы - java script frameworks day 2014Andrey Listochkin
 
Микрофреймворки PHP
Микрофреймворки PHPМикрофреймворки PHP
Микрофреймворки PHPEkaterina Giganova
 
Поговорим о JavaScript, основы и современные тенденции развития языка
Поговорим о JavaScript, основы и современные тенденции развития языкаПоговорим о JavaScript, основы и современные тенденции развития языка
Поговорим о JavaScript, основы и современные тенденции развития языкаAlexander Kucherenko
 
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...JSib
 
Alexander manuhin selenium_php_v2.0
Alexander manuhin selenium_php_v2.0Alexander manuhin selenium_php_v2.0
Alexander manuhin selenium_php_v2.0matroskin1980
 
C# Web. Занятие 11.
C# Web. Занятие 11.C# Web. Занятие 11.
C# Web. Занятие 11.Igor Shkulipa
 
Школа-Студия разработки приложений для iOS. 5 лекция. Разное
Школа-Студия разработки приложений для iOS. 5 лекция. РазноеШкола-Студия разработки приложений для iOS. 5 лекция. Разное
Школа-Студия разработки приложений для iOS. 5 лекция. РазноеГлеб Тарасов
 
Java осень 2012 лекция 5
Java осень 2012 лекция 5Java осень 2012 лекция 5
Java осень 2012 лекция 5Technopark
 
Технологии тестирования Rich Web client, Андрей Плешков, Форум Технологий Mai...
Технологии тестирования Rich Web client, Андрей Плешков, Форум Технологий Mai...Технологии тестирования Rich Web client, Андрей Плешков, Форум Технологий Mai...
Технологии тестирования Rich Web client, Андрей Плешков, Форум Технологий Mai...tfmailru
 
Системы автоматизированной сборки (Lecture 05 – gradle)
Системы автоматизированной сборки (Lecture 05 – gradle)Системы автоматизированной сборки (Lecture 05 – gradle)
Системы автоматизированной сборки (Lecture 05 – gradle)Noveo
 
Автоматизация UI тестирования под Windows и Windows Phone
Автоматизация UI тестирования под Windows и Windows PhoneАвтоматизация UI тестирования под Windows и Windows Phone
Автоматизация UI тестирования под Windows и Windows PhoneCodeFest
 
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)Ontico
 

Similaire à Зачем нужен EmberJS, если мне хвататет jQuery (20)

Опыт разработки эффективного SPA
Опыт разработки эффективного SPAОпыт разработки эффективного SPA
Опыт разработки эффективного SPA
 
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)
 
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js
 
Mobile automation uamobile
Mobile automation uamobileMobile automation uamobile
Mobile automation uamobile
 
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
Архитектура кода нового 2ГИС Web API или куда мы дели MVCАрхитектура кода нового 2ГИС Web API или куда мы дели MVC
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
 
iOS and Android Mobile Test Automation
iOS and Android Mobile Test AutomationiOS and Android Mobile Test Automation
iOS and Android Mobile Test Automation
 
Фреймворк Slot, Good Parts, Александр Бирюков
Фреймворк Slot, Good Parts, Александр БирюковФреймворк Slot, Good Parts, Александр Бирюков
Фреймворк Slot, Good Parts, Александр Бирюков
 
Zend Framework и Doctrine
Zend Framework и DoctrineZend Framework и Doctrine
Zend Framework и Doctrine
 
Ember.js ответ на почти все вопросы - java script frameworks day 2014
Ember.js   ответ на почти все вопросы - java script frameworks day 2014Ember.js   ответ на почти все вопросы - java script frameworks day 2014
Ember.js ответ на почти все вопросы - java script frameworks day 2014
 
Микрофреймворки PHP
Микрофреймворки PHPМикрофреймворки PHP
Микрофреймворки PHP
 
Поговорим о JavaScript, основы и современные тенденции развития языка
Поговорим о JavaScript, основы и современные тенденции развития языкаПоговорим о JavaScript, основы и современные тенденции развития языка
Поговорим о JavaScript, основы и современные тенденции развития языка
 
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...
 
Alexander manuhin selenium_php_v2.0
Alexander manuhin selenium_php_v2.0Alexander manuhin selenium_php_v2.0
Alexander manuhin selenium_php_v2.0
 
C# Web. Занятие 11.
C# Web. Занятие 11.C# Web. Занятие 11.
C# Web. Занятие 11.
 
Школа-Студия разработки приложений для iOS. 5 лекция. Разное
Школа-Студия разработки приложений для iOS. 5 лекция. РазноеШкола-Студия разработки приложений для iOS. 5 лекция. Разное
Школа-Студия разработки приложений для iOS. 5 лекция. Разное
 
Java осень 2012 лекция 5
Java осень 2012 лекция 5Java осень 2012 лекция 5
Java осень 2012 лекция 5
 
Технологии тестирования Rich Web client, Андрей Плешков, Форум Технологий Mai...
Технологии тестирования Rich Web client, Андрей Плешков, Форум Технологий Mai...Технологии тестирования Rich Web client, Андрей Плешков, Форум Технологий Mai...
Технологии тестирования Rich Web client, Андрей Плешков, Форум Технологий Mai...
 
Системы автоматизированной сборки (Lecture 05 – gradle)
Системы автоматизированной сборки (Lecture 05 – gradle)Системы автоматизированной сборки (Lecture 05 – gradle)
Системы автоматизированной сборки (Lecture 05 – gradle)
 
Автоматизация UI тестирования под Windows и Windows Phone
Автоматизация UI тестирования под Windows и Windows PhoneАвтоматизация UI тестирования под Windows и Windows Phone
Автоматизация UI тестирования под Windows и Windows Phone
 
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)
 

Plus de Sergey Bolshchikov

Onboarding for Software Engineers Done Right
Onboarding for Software Engineers Done RightOnboarding for Software Engineers Done Right
Onboarding for Software Engineers Done RightSergey Bolshchikov
 
Microservices on the client side
Microservices on the client sideMicroservices on the client side
Microservices on the client sideSergey Bolshchikov
 
Values & Culture of Continuous Deliver
Values & Culture of Continuous DeliverValues & Culture of Continuous Deliver
Values & Culture of Continuous DeliverSergey Bolshchikov
 
Continuous Delivery for Front-End Engineers
Continuous Delivery for Front-End EngineersContinuous Delivery for Front-End Engineers
Continuous Delivery for Front-End EngineersSergey Bolshchikov
 
Front End Development: The Important Parts
Front End Development: The Important PartsFront End Development: The Important Parts
Front End Development: The Important PartsSergey Bolshchikov
 
Web Projects: From Theory To Practice
Web Projects: From Theory To PracticeWeb Projects: From Theory To Practice
Web Projects: From Theory To PracticeSergey Bolshchikov
 
JS Single-Page Web App Essentials
JS Single-Page Web App EssentialsJS Single-Page Web App Essentials
JS Single-Page Web App EssentialsSergey Bolshchikov
 

Plus de Sergey Bolshchikov (12)

Onboarding for Software Engineers Done Right
Onboarding for Software Engineers Done RightOnboarding for Software Engineers Done Right
Onboarding for Software Engineers Done Right
 
Pragmatic React Workshop
Pragmatic React WorkshopPragmatic React Workshop
Pragmatic React Workshop
 
Microservices on the client side
Microservices on the client sideMicroservices on the client side
Microservices on the client side
 
ES2015 Quiz
ES2015 QuizES2015 Quiz
ES2015 Quiz
 
Values & Culture of Continuous Deliver
Values & Culture of Continuous DeliverValues & Culture of Continuous Deliver
Values & Culture of Continuous Deliver
 
Protractor: Tips & Tricks
Protractor: Tips & TricksProtractor: Tips & Tricks
Protractor: Tips & Tricks
 
Continuous Delivery for Front-End Engineers
Continuous Delivery for Front-End EngineersContinuous Delivery for Front-End Engineers
Continuous Delivery for Front-End Engineers
 
Front End Development: The Important Parts
Front End Development: The Important PartsFront End Development: The Important Parts
Front End Development: The Important Parts
 
Web Projects: From Theory To Practice
Web Projects: From Theory To PracticeWeb Projects: From Theory To Practice
Web Projects: From Theory To Practice
 
AngularJS Basics with Example
AngularJS Basics with ExampleAngularJS Basics with Example
AngularJS Basics with Example
 
Backbone Basics with Examples
Backbone Basics with ExamplesBackbone Basics with Examples
Backbone Basics with Examples
 
JS Single-Page Web App Essentials
JS Single-Page Web App EssentialsJS Single-Page Web App Essentials
JS Single-Page Web App Essentials
 

Зачем нужен EmberJS, если мне хвататет jQuery