Soumettre la recherche
Mettre en ligne
Лучший frontend-фреймворк, и почему вы его не хотите
•
0 j'aime
•
4,030 vues
CodeFest
Suivre
Антон Плешивцев, Aviasales.ru, Frontend-секция CodeFest 2015
Lire moins
Lire la suite
Affichage du diaporama
Signaler
Partager
Affichage du diaporama
Signaler
Partager
1 sur 43
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
презентация вводного доклада Angular на fronttalks.ru
презентация вводного доклада Angular на fronttalks.ru
Ivan Gromov
CodeFest dirty facts about AngularJS
CodeFest dirty facts about AngularJS
Антон Плешивцев
Разработка Web-приложений на Angular JS. Архитектурные семинары Softengi
Разработка Web-приложений на Angular JS. Архитектурные семинары Softengi
Softengi
сервисы в Angular js
сервисы в Angular js
yakimchuk
AngularJS basics & theory
AngularJS basics & theory
DevOWL Meetup
Антон Гордийчук Тема: "AngularJS — продвинутый HTML для web-приложений"
Антон Гордийчук Тема: "AngularJS — продвинутый HTML для web-приложений"
Ciklum Minsk
Как и зачем мы тестируем UI
Как и зачем мы тестируем UI
Vyacheslav Lyalkin
AngularJS. Введение и простые примеры для понимания
AngularJS. Введение и простые примеры для понимания
Igor Sazonov
Recommandé
презентация вводного доклада Angular на fronttalks.ru
презентация вводного доклада Angular на fronttalks.ru
Ivan Gromov
CodeFest dirty facts about AngularJS
CodeFest dirty facts about AngularJS
Антон Плешивцев
Разработка Web-приложений на Angular JS. Архитектурные семинары Softengi
Разработка Web-приложений на Angular JS. Архитектурные семинары Softengi
Softengi
сервисы в Angular js
сервисы в Angular js
yakimchuk
AngularJS basics & theory
AngularJS basics & theory
DevOWL Meetup
Антон Гордийчук Тема: "AngularJS — продвинутый HTML для web-приложений"
Антон Гордийчук Тема: "AngularJS — продвинутый HTML для web-приложений"
Ciklum Minsk
Как и зачем мы тестируем UI
Как и зачем мы тестируем UI
Vyacheslav Lyalkin
AngularJS. Введение и простые примеры для понимания
AngularJS. Введение и простые примеры для понимания
Igor Sazonov
AngularJS2 vs VueJS2 (ru)
AngularJS2 vs VueJS2 (ru)
chaykaborya
knockout.js
knockout.js
Anton Patrushev
Средства разработки web приложений (Web frameworks)
Средства разработки web приложений (Web frameworks)
Fedor Malyshkin
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)
7bits
Vue.js - реактивный фронтенд фреймворк для людей
Vue.js - реактивный фронтенд фреймворк для людей
Konstantin Komelin
Рендеринг может больше: vue.js vs React, Андрей Солодовников
Рендеринг может больше: vue.js vs React, Андрей Солодовников
DevDay
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесь
CodeFest
55+1 прием для улучшения Javascript-кода / Татьяна Бабич (Simbirsoft)
55+1 прием для улучшения Javascript-кода / Татьяна Бабич (Simbirsoft)
Ontico
Реактивный фронтенд фреймворк для людей (Константин Комелин)
Реактивный фронтенд фреймворк для людей (Константин Комелин)
DrupalYug
Инструменты разные нужны, инструменты разные важны
Инструменты разные нужны, инструменты разные важны
CodeFest
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js
Омские ИТ-субботники
Knockoutjs на примере 2ГИС-Онлайн
Knockoutjs на примере 2ГИС-Онлайн
2ГИС Технологии
Школа-студия разработки приложений для iOS. 2 лекция. MVC, View, Controllers
Школа-студия разработки приложений для iOS. 2 лекция. MVC, View, Controllers
Глеб Тарасов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
2ГИС Технологии
Разработка бизнес-приложений на OpenUI5 — Николай Надоричев, MOLGA Consulting
Разработка бизнес-приложений на OpenUI5 — Николай Надоричев, MOLGA Consulting
Yandex
Антон Валюх - Использование паттерна Mvvm в android
Антон Валюх - Использование паттерна Mvvm в android
DataArt
Курсы по мобильной разработке. 2 лекция. Построение интерфейсов в iOS
Курсы по мобильной разработке. 2 лекция. Построение интерфейсов в iOS
Глеб Тарасов
AngularJS
AngularJS
GetDev.NET
Selenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностей
Paul Stashevsky
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
DevDay
Good front end - bad front-end (Vladimir Gutorov)
Good front end - bad front-end (Vladimir Gutorov)
LumoSpark
Фреймворки: недалёкое прошлое и ближайшее будущее
Фреймворки: недалёкое прошлое и ближайшее будущее
Yandex
Contenu connexe
Tendances
AngularJS2 vs VueJS2 (ru)
AngularJS2 vs VueJS2 (ru)
chaykaborya
knockout.js
knockout.js
Anton Patrushev
Средства разработки web приложений (Web frameworks)
Средства разработки web приложений (Web frameworks)
Fedor Malyshkin
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)
7bits
Vue.js - реактивный фронтенд фреймворк для людей
Vue.js - реактивный фронтенд фреймворк для людей
Konstantin Komelin
Рендеринг может больше: vue.js vs React, Андрей Солодовников
Рендеринг может больше: vue.js vs React, Андрей Солодовников
DevDay
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесь
CodeFest
55+1 прием для улучшения Javascript-кода / Татьяна Бабич (Simbirsoft)
55+1 прием для улучшения Javascript-кода / Татьяна Бабич (Simbirsoft)
Ontico
Реактивный фронтенд фреймворк для людей (Константин Комелин)
Реактивный фронтенд фреймворк для людей (Константин Комелин)
DrupalYug
Инструменты разные нужны, инструменты разные важны
Инструменты разные нужны, инструменты разные важны
CodeFest
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js
Омские ИТ-субботники
Knockoutjs на примере 2ГИС-Онлайн
Knockoutjs на примере 2ГИС-Онлайн
2ГИС Технологии
Школа-студия разработки приложений для iOS. 2 лекция. MVC, View, Controllers
Школа-студия разработки приложений для iOS. 2 лекция. MVC, View, Controllers
Глеб Тарасов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
2ГИС Технологии
Разработка бизнес-приложений на OpenUI5 — Николай Надоричев, MOLGA Consulting
Разработка бизнес-приложений на OpenUI5 — Николай Надоричев, MOLGA Consulting
Yandex
Антон Валюх - Использование паттерна Mvvm в android
Антон Валюх - Использование паттерна Mvvm в android
DataArt
Курсы по мобильной разработке. 2 лекция. Построение интерфейсов в iOS
Курсы по мобильной разработке. 2 лекция. Построение интерфейсов в iOS
Глеб Тарасов
AngularJS
AngularJS
GetDev.NET
Selenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностей
Paul Stashevsky
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
DevDay
Tendances
(20)
AngularJS2 vs VueJS2 (ru)
AngularJS2 vs VueJS2 (ru)
knockout.js
knockout.js
Средства разработки web приложений (Web frameworks)
Средства разработки web приложений (Web frameworks)
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)
Стажировка-2014, занятие 8. Обзор Sails framework (Node.js)
Vue.js - реактивный фронтенд фреймворк для людей
Vue.js - реактивный фронтенд фреймворк для людей
Рендеринг может больше: vue.js vs React, Андрей Солодовников
Рендеринг может больше: vue.js vs React, Андрей Солодовников
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесь
55+1 прием для улучшения Javascript-кода / Татьяна Бабич (Simbirsoft)
55+1 прием для улучшения Javascript-кода / Татьяна Бабич (Simbirsoft)
Реактивный фронтенд фреймворк для людей (Константин Комелин)
Реактивный фронтенд фреймворк для людей (Константин Комелин)
Инструменты разные нужны, инструменты разные важны
Инструменты разные нужны, инструменты разные важны
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js
2014-08-02 03 Дмитрий Шматко. Первые впечатления от Node.js
Knockoutjs на примере 2ГИС-Онлайн
Knockoutjs на примере 2ГИС-Онлайн
Школа-студия разработки приложений для iOS. 2 лекция. MVC, View, Controllers
Школа-студия разработки приложений для iOS. 2 лекция. MVC, View, Controllers
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
Разработка бизнес-приложений на OpenUI5 — Николай Надоричев, MOLGA Consulting
Разработка бизнес-приложений на OpenUI5 — Николай Надоричев, MOLGA Consulting
Антон Валюх - Использование паттерна Mvvm в android
Антон Валюх - Использование паттерна Mvvm в android
Курсы по мобильной разработке. 2 лекция. Построение интерфейсов в iOS
Курсы по мобильной разработке. 2 лекция. Построение интерфейсов в iOS
AngularJS
AngularJS
Selenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностей
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
En vedette
Good front end - bad front-end (Vladimir Gutorov)
Good front end - bad front-end (Vladimir Gutorov)
LumoSpark
Фреймворки: недалёкое прошлое и ближайшее будущее
Фреймворки: недалёкое прошлое и ближайшее будущее
Yandex
Встреча "Front-end: на старт, внимание, разработка!", Сергей Пузанков
Встреча "Front-end: на старт, внимание, разработка!", Сергей Пузанков
GoIT
js tools
js tools
Oleg Sizonov
Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"
Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"
Yandex
«Путь от инди-разработчика до гейм-дизайнера в студии»
«Путь от инди-разработчика до гейм-дизайнера в студии»
Stfalcon Meetups
LESS, SASS, HAML: 4 буквы, изменившие frontend development
LESS, SASS, HAML: 4 буквы, изменившие frontend development
Konstantin Kudryashov
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Ontico
Анимация БВШД 2016
Анимация БВШД 2016
Igor Silkin
reveal.js 3.0.0
reveal.js 3.0.0
Hakim El Hattab
DDA portfolio
DDA portfolio
Маша Комар
En vedette
(11)
Good front end - bad front-end (Vladimir Gutorov)
Good front end - bad front-end (Vladimir Gutorov)
Фреймворки: недалёкое прошлое и ближайшее будущее
Фреймворки: недалёкое прошлое и ближайшее будущее
Встреча "Front-end: на старт, внимание, разработка!", Сергей Пузанков
Встреча "Front-end: на старт, внимание, разработка!", Сергей Пузанков
js tools
js tools
Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"
Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"
«Путь от инди-разработчика до гейм-дизайнера в студии»
«Путь от инди-разработчика до гейм-дизайнера в студии»
LESS, SASS, HAML: 4 буквы, изменившие frontend development
LESS, SASS, HAML: 4 буквы, изменившие frontend development
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Анимация БВШД 2016
Анимация БВШД 2016
reveal.js 3.0.0
reveal.js 3.0.0
DDA portfolio
DDA portfolio
Similaire à Лучший frontend-фреймворк, и почему вы его не хотите
Node.js введение в технологию, КПИ #ITmeetingKPI
Node.js введение в технологию, КПИ #ITmeetingKPI
Timur Shemsedinov
Крыша 2.0
Крыша 2.0
Колёса Крыша Маркет
IT-инфраструктура. FAQ для разработчика
IT-инфраструктура. FAQ для разработчика
Mikhail Chinkov
Построение собственного JS SDK — зачем и как?
Построение собственного JS SDK — зачем и как?
buranLcme
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)
Ontico
Превышаем скоростные лимиты с Angular 2
Превышаем скоростные лимиты с Angular 2
Oleksii Okhrymenko
Самодельная параметризация и параллелизация тестов на Webdriver (JS)
Самодельная параметризация и параллелизация тестов на Webdriver (JS)
COMAQA.BY
Что нового в Android 5.0
Что нового в Android 5.0
Kirill Danilov
JavaScript-модули "из прошлого в будущее"
JavaScript-модули "из прошлого в будущее"
oelifantiev
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
Омские ИТ-субботники
Доклады с прошедшей JiraMania: про обновления, зависимости и дедлоки
Доклады с прошедшей JiraMania: про обновления, зависимости и дедлоки
Gonchik Tsymzhitov
Инструментируй это
Инструментируй это
Roman Dvornov
Подходы и технологии, используемые в разработке iOS-клиента Viber, Кирилл Лаш...
Подходы и технологии, используемые в разработке iOS-клиента Viber, Кирилл Лаш...
Yandex
2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса
2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса
Омские ИТ-субботники
Кирилл Комлев. О реализации continuous integration для web проектов
Кирилл Комлев. О реализации continuous integration для web проектов
Olesya_V
Angular js
Angular js
The NGO Development Center
UWDC 2013, Как мы используем Yii
UWDC 2013, Как мы используем Yii
Alexander Makarov
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest
Серверный JavaScript: NodeJS и CouchDB
Серверный JavaScript: NodeJS и CouchDB
Stepan Stolyarov
Павел Юрийчук - Разработка приложений под мобильные браузеры
Павел Юрийчук - Разработка приложений под мобильные браузеры
UA Mobile
Similaire à Лучший frontend-фреймворк, и почему вы его не хотите
(20)
Node.js введение в технологию, КПИ #ITmeetingKPI
Node.js введение в технологию, КПИ #ITmeetingKPI
Крыша 2.0
Крыша 2.0
IT-инфраструктура. FAQ для разработчика
IT-инфраструктура. FAQ для разработчика
Построение собственного JS SDK — зачем и как?
Построение собственного JS SDK — зачем и как?
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)
Превышаем скоростные лимиты с Angular 2
Превышаем скоростные лимиты с Angular 2
Самодельная параметризация и параллелизация тестов на Webdriver (JS)
Самодельная параметризация и параллелизация тестов на Webdriver (JS)
Что нового в Android 5.0
Что нового в Android 5.0
JavaScript-модули "из прошлого в будущее"
JavaScript-модули "из прошлого в будущее"
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
2014-10-04 02 Владислав Безверхий. Mocha - покрой frontend по полной
Доклады с прошедшей JiraMania: про обновления, зависимости и дедлоки
Доклады с прошедшей JiraMania: про обновления, зависимости и дедлоки
Инструментируй это
Инструментируй это
Подходы и технологии, используемые в разработке iOS-клиента Viber, Кирилл Лаш...
Подходы и технологии, используемые в разработке iOS-клиента Viber, Кирилл Лаш...
2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса
2015 09-05 02 Сергей Сорокин. Обзор и анализ мобильного backend сервиса
Кирилл Комлев. О реализации continuous integration для web проектов
Кирилл Комлев. О реализации continuous integration для web проектов
Angular js
Angular js
UWDC 2013, Как мы используем Yii
UWDC 2013, Как мы используем Yii
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
Серверный JavaScript: NodeJS и CouchDB
Серверный JavaScript: NodeJS и CouchDB
Павел Юрийчук - Разработка приложений под мобильные браузеры
Павел Юрийчук - Разработка приложений под мобильные браузеры
Plus de CodeFest
Alexander Graebe
Alexander Graebe
CodeFest
Никита Прокопов
Никита Прокопов
CodeFest
Денис Баталов
Денис Баталов
CodeFest
Елена Гальцина
Елена Гальцина
CodeFest
Александр Калашников
Александр Калашников
CodeFest
Ирина Иванова
Ирина Иванова
CodeFest
Marko Berković
Marko Berković
CodeFest
Денис Кортунов
Денис Кортунов
CodeFest
Александр Зимин
Александр Зимин
CodeFest
Сергей Крапивенский
Сергей Крапивенский
CodeFest
Сергей Игнатов
Сергей Игнатов
CodeFest
Николай Крапивный
Николай Крапивный
CodeFest
Alexander Graebe
Alexander Graebe
CodeFest
Вадим Смирнов
Вадим Смирнов
CodeFest
Константин Осипов
Константин Осипов
CodeFest
Raffaele Rialdi
Raffaele Rialdi
CodeFest
Максим Пугачев
Максим Пугачев
CodeFest
Rene Groeschke
Rene Groeschke
CodeFest
Иван Бондаренко
Иван Бондаренко
CodeFest
Mete Atamel
Mete Atamel
CodeFest
Plus de CodeFest
(20)
Alexander Graebe
Alexander Graebe
Никита Прокопов
Никита Прокопов
Денис Баталов
Денис Баталов
Елена Гальцина
Елена Гальцина
Александр Калашников
Александр Калашников
Ирина Иванова
Ирина Иванова
Marko Berković
Marko Berković
Денис Кортунов
Денис Кортунов
Александр Зимин
Александр Зимин
Сергей Крапивенский
Сергей Крапивенский
Сергей Игнатов
Сергей Игнатов
Николай Крапивный
Николай Крапивный
Alexander Graebe
Alexander Graebe
Вадим Смирнов
Вадим Смирнов
Константин Осипов
Константин Осипов
Raffaele Rialdi
Raffaele Rialdi
Максим Пугачев
Максим Пугачев
Rene Groeschke
Rene Groeschke
Иван Бондаренко
Иван Бондаренко
Mete Atamel
Mete Atamel
Лучший frontend-фреймворк, и почему вы его не хотите
1.
ГРЯЗНЫЕ ПОДРОБНОСТИ ЖИЗНИ
С ANGULARJS Антон Плешивцев aviasales.ru
2.
МЕТАПОИСК
3.
ПРИЛОЖЕНИЕ
4.
ПРИЛОЖЕНИЕ • единый codestyle •
одинаковый функционал
5.
RAW JS • 20k
SLOC • 10+ custom components • custom AMD • 72 h/f
6.
BACKBONE • 15k SLOC •
weak modules • 60 h/f
7.
ANGULAR JS • 5k
SLOC • DI • 4 h/f
8.
EMBER JS • beta
9.
ANGULAR JS
10.
ANGULAR JS
11.
ANGULAR JS
12.
ANGULAR JS
13.
FIRST BUGS
14.
FIRST BUGS
15.
SECOND BUGS
16.
ИНТЕГРАЦИЯ
17.
INTEGRATION <script> (function(){ //… }()); </script>
18.
INTEGRATION angular.element(document).ready(function() { angular.bootstrap(document, ['myApp']); });
19.
ПЕРЕНОСИМОСТЬ
20.
MODULE SYSTEM angular.module('myApp', []) .controller('MyController',
['$scope', function ($scope) { $scope.greetMe = 'World'; }]);
21.
ГИБКОСТЬ
22.
$COOKIESTORE
23.
NGROUTE $routeProvider .when('/searches/new', templateUrl: 'empty.html' controller: 'EmptyController' ) .when('/', templateUrl:
'empty.html' controller: 'EmptyController' ) .when('/:encoded_search', templateUrl: 'search_results.html' controller: 'SearchResultsController' reloadOnSearch: false )
24.
NGROUTE
25.
SOLUTION • использовать форк •
патчи в исходном коде • постоянный мониторинг обновлений
26.
DATA-BINDING
27.
DATA-BINDING
28.
DATA-BINDING
29.
DATA-BINDING
30.
NG-REPEAT <div ng-repeat="(key, value)
in myObj"> ... </div>
31.
NG-REPEAT • 5000 билетов •
200 значений на билет • 1 000 000 (миллион) watchers
32.
MOAR!!! DATA-BINDING
33.
QUICK-NG-REPEAT TOTHE RESCUE <div quick-ng-repeat=«(key,
value) in myObj"> ... </div>
34.
QUICK-NG-REPEAT • $watchCollection ->
$watch • $digest hack • handmade updates
35.
КУДА НАМ ПЛЫТЬ
36.
ANGULAR JS • внутренние
интерфейсы (аналитика, админки) • B2B • прототипы
37.
WTF?
38.
REACT JS • stateful-приложение •
сложный DOM • критичные к производительности приложения
39.
CLOJURESCRIPT • сверхкритичные к
скорости приложения • некритичные к размеру • команда выше среднего
40.
HANDMADE • размер приложения
критичен • нужны низкоуровневые оптимизации • команда выше среднего
41.
Handmade (размер) AngularJS (скорость разработки) Clojurescript (производительность) ?
42.
ВЫВОДЫ • Стоит изначально
понимать требования к проекту • AngularJS применим, но с набором ограничений • Иногда лучше попробовать что-то другое
43.
ABOUT АНТОН ПЛЕШИВЦЕВ twitter.com/allaud github.com/allaud https://www.facebook.com/ant.pl.3 aviasales.ru
Télécharger maintenant