Актуальные технологии и тренды в веб-разработке
TRANSCRIPT
Актуальные технологии и трендыв веб-разработкеДенис Измайлов
18 ноября 2015
Денис Измайлов• 15 лет опыта разработки ПО и web-проектов.
• Последние 5 лет посвятил Front-end, Node.js и архитектуре.
• Сделал более 10 проектов, в том числе много SPA, HighLoad и React.
• Коммиты в Redux, webpack и koa.
• Выступал на HighLoad++ 2015, регулярный спикер на MoscowJS.
• Автор статей на Habrahabr и англоязычных ресурсах.
, CEO
Most Popular
«Результаты ежегодного исследования StackOverflow — про технологии, зарплаты, счастье и кофе», http://habrahabr.ru/post/255717/
4
Most Popular
http://www.ryan-williams.net/hacker-news-hiring-trends/2015/november.html?compare1=java&compare2=node.js&compare3=JavaScript&compare4=Front+End
5
Most Requested
“Without question (and without surprise), the most common technology requested by
employers is JavaScript. 42.4% of job postings contained this keyword.”
http://www.talentbuddy.co/blog/top-tech-skills-
required-for-entry-level-programming-jobs/
6
Most Requested
• JavaScript: 5,211 jobs found
• Node.js: 591 jobs found
• Java: 1,639 jobs found
• Ruby: 762 jobs found
7
Почему необходимо использовать актуальные
технологии?
Что произошлоза последний год в мире
JavaScript?
Какие тренды мы видим сегодня?
Front-end сегодня• Это не только JavaScript в браузере
• Сегодня Front-end - клиент и сервер:
11
Front-end клиент
Front-end сервер
Back-end сервер
Database
Java Legacy
etc
- HTML - [critical CSS] - JS Bundle
JavaScript на сервере• Представлен Node.js
• Экосистема Node.js - npm
• Что такое npm?206 561 пакетов, 2+ млрд. загрузок/мес.
12
https://unpm.nodesource.com/
Мир JavaScript - это самый увлекательный сериал
Мир JavaScript - это самый увлекательный сериал
• Год назад все морщились от React и HTML-кода в JavaScript-коде
• А уже сегодня мы видим массовый переход на React
• Год назад все ломали головы про Flux
• Сегодня классический Flux уже устарел
• Всё закончилось сокрушительной победой Redux
14
2014
2014: Server-Side1. Node.js стало много в Production, но его развитие
стало замедляться 2. Node.js активно вошёл в наши проекты - для
сборки 3. Require.js (AMD) ушёл под давлением Browserify
(CommonJS) + BrowserSync/Watchify 4. 27 ноября 2014, доклад «webpack: 7 бед - один
ответ» на MoscowJS 17:hJps://www.youtube.com/watch?v=kuXIgUsvpLo
5. Статья на Хабрахабр про webpack:hJp://habrahabr.ru/post/245991/
16
2014: Client-Side1. В проектах сражаются за доминирование:
Angular, jQuery, Knockout, Backbone
2. Благодаря сборщикам, от чистого CSS уходят: LESS, SASS, Stylus
3. Большинство скептически посматривает на React:
• HTML-подобный синтаксис?
• Стили и обработчики событий inline?
• На каждую мелочь - компонент? Зачем?17
2014: Client-Side1. В проектах сражаются за доминирование:
Angular, jQuery, Knockout, Backbone
2. Благодаря сборщикам, от чистого CSS уходят: LESS, SASS, Stylus
3. Большинство скептически посматривает на React:
• HTML-подобный синтаксис?
• Стили и обработчики событий inline?
• На каждую мелочь - компонент? Зачем?18
2014: Client-Side
• 30 апреля 2014 • Сан-Франциско • 30-градусная жара • 1700 разработчиков • F8 Facebook Developer Conference
2014: Client-Side4. Facebook представляет Flux, как альтернативу MVC
и архитектуру для React-приложений
5. Это помогло немного иначе посмотреть на React
6. Гонка Flux-фреймворков: Fluxxor, Reflux.js, Flux от Facebook, Flummox, Marty.js, Fluxible от Yahoo, AirBnb представляет alt
7. Было трудно, но понятно, что React и Flux - это верное направление
8. ES6-транспилеры 6o5, esnext, traceur начали вытеснять CoffeeScript и пр.
20
2015: Server-Side1. 14 января выходит io.js - форк Node.js с более
новым V8 с частичным ES6 - промисы, генераторы
2. 8 сентября вышел Node.js v4.0.0
3. В середине года стал наблюдаться тренд удален gulp из процесса сборки, заменой его на отдельные Node.js скрипты в npm scripts
21
2015: Client-Side1. Пришёл ES6, 15 февраля - Babel (6to5 + esnext)
2. React Native
3. Изоморфные приложения
4. Взлёт популярности PostCSS
5. webpack стал стандартом де-факто в проектах
6. React почти полностью вытеснил Angular 1.x
7. Гонка Flux-реализаций окончена сокрушительной победой Redux (MoscowJS 25, Redux: the best for isomorphic apps)
22
2016 Тренды
20161. Качественный рост экосистем React и Redux
2. Борьба библиотек работы с данными (Facebook Relay, om.next, etc) и поддержкой оффлайн-режима
3. Давление на React-сообщество со стороны Angular 2
4. Функциональное программирование и Immutable.js
5. Изоморфные приложения24
20166. Native Applications: React Native, Electron
7. WebAssembly
8. WebGL & SVG
9. ES7: SIMD, Observable, etc
10. Проекты обучения и профессиональной сертификации (egghead.io, etc)
11. React и Node.js активно войдет в Enterprise
12. Микросервисная архитектура и контейнеры (Docker) станут стандартом де-фактом
25
Рекомендации• Присоединяйтеськ сообществу MoscowJShttp://moscowjs.ru/
• Улучшайте английский, не читайте советских газет
• Читайте оригиналы и технические блоги
• Активно внедряйте в свою жизнь Twitter и GitHub
Почему необходимо использовать актуальные
технологии?
Спасибо за внимание
Денис Измайлов
@DenisIzmaylov
https://github.com/DenisIzmaylov
https://fb.com/denis.izmaylov
http://startup-makers.ru
denis_izmaylov