Відгук на JavaScript Frameworks day 2017

22 квітня на Javascript Frameworks Days зібралися javascript-гіки з метою похоліварити на тему, в кого фреймворк кращий і швидкодія більша, дізнатись щось нове зі світу JS та просто побачити один одного, бо проекти та дедлайни часто-густо заважають це робити.

Конференція відбувалася в три потоки.

Доповідь «Progressive web apps with Polymer» від Martin Splitt була першою, яку я відвідав. Martin розповів про таку чудову штуку, як Polimer, що дозволяє нативно використовувати веб-компоненти, про особливості прогресивних веб-аплікацій, про можливості користувача взаємодіяти з аплікацією за відсутності інтернету.

Мене зацікавила тема «Create Architecture and not Frameworks» Сергія Большикова. Спікер поділився вирішенням задачі lazy loading-компонентів, аби вони завантажувались в аплікацію тоді, коли в цьому є потреба (це пришвидшує перше завантаження сторінки, на відміну від повного завантаження). Все це він зробив для аплікацій, що написані на angular1 та react. Його рішення мало на меті об’єднати два фреймворки, при цьому не змінювати аплікації і компоненти, написані на цих фреймворках. Виглядає гарно, все працює, але трішки схоже на Франкенштейна. Проект, зібраний з кількох фреймворків, як для перфекціоніста — не найкраще рішення, але на які тільки жертви не підеш заради процвітання бізнесу. Дорого переписати все на одному новому фреймворку, а завтра вийде кращий фреймворк, і на ньому знову захочеться писати, а старий викинути геть. А так враховані інтереси і модернового розробника, і бізнесу.

Наступна доповідь, яку я відвідав, була від Олександра Тищенка «How to improve Angular 2 performance?» Він розповів про tree shaking, котрий викидає лишній код, про те, як корисно зтиснути assets (хоча це я вже сто разів чув, і ця штука не зовсім відноситься, як на мене, до angular2, а скоріше, є загальною рекомендацією). Вважаю корисною і по темі інформацію про change detection: Push і default detect strategy, це точно уже відноситься до ангулар2. І про те, що краще в більшості випадків використовувати ngIf, адже коли ми просто ховаємо елементи, то change detection в середині дочірніх компонентів все одно відбувається. Трохи дивною була порада передавати в дочірні template Subscription з RxJs Observable http-відповідь, і я до кінця не зміг зрозуміти, чому варто використовувати такий складний і не зовсім прозорий підхід.

Доповідь Андрія Грачова «Vue.js или как наконец отказаться от React». Андрій доволі гарно описав кращі сторони Vue. А слабкою стороною vue є те, що він новий, і під нього написано мало ui-компонентів.

Серед великої кількості js-доповідей знайшлась одна про css. Олександр Павлищ розповів про CSS 5DX — круті штуки, за допомогою яких можна робити чудові трансформації css. Загалом, він показував чудеса 3d графіки, які можна робити лише за допомогою css та html.

На закуску — доповідь Іллі Клімова «2017: Автостопом по галактике JavaScript». Він розказав про світову змову корпорацій і як вони контролюють теперішній розвиток Ecmascript-специфікації, про те, що більшість членів wc3-комітету є представниками великих корпорацій, а це свого роду диктатура :), про досвід використання ASM, WEB та VIAR.

На перервах, як завжди, було чим підкріпитися, можна було поговорити зі спікерами і виграти від компаній гарні призи. Наша компанія stfalcon розігрувала камеру Samsung Gear 360°.

Дуже дякую за івент, є про що подумати, є з чим посперечатися, але однозначно корисно і пізнавально.

P.S. Зараз собі у команду ми шукаємо фронтенд-розробника. Ним можеш стати і ти, якщо добре знаєш Angular. Про вакансію тут.