Собираем микромодули · server •Обвязка страниц •Прокси...
TRANSCRIPT
![Page 1: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/1.jpg)
Собираем микромодули
�1
![Page 2: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/2.jpg)
Frontend-разработчик Сбербанк Онлайн
Дмитрий Кузнецов
�2
![Page 3: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/3.jpg)
�3
![Page 4: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/4.jpg)
Презентационный слой
API
�4
![Page 5: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/5.jpg)
Презентационный слойистория про один репозиторий, про одну сборку
📚
![Page 6: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/6.jpg)
�6
![Page 7: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/7.jpg)
�7
![Page 8: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/8.jpg)
Платформенные команды
Прикладные команды
�8
![Page 9: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/9.jpg)
�9
![Page 10: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/10.jpg)
Презентационный слой
• 75 человек • 66 приложений • 15 платформенных библиотек
�10
![Page 11: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/11.jpg)
�11
![Page 12: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/12.jpg)
�12
![Page 13: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/13.jpg)
Server
•Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные функции (работа с сессией, логирование …)
�13
![Page 14: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/14.jpg)
�14
•ECMA-262 редакции EcmaScript 2017
SPA (микромодуль)
![Page 15: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/15.jpg)
�15
SPA (микромодуль)
•ECMA-262 редакции EcmaScript 2017 •Стэк: React/Redux
![Page 16: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/16.jpg)
�16
SPA (микромодуль)
•ECMA-262 редакции EcmaScript 2017 •Стэк: React/Redux •CSS Modules
![Page 17: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/17.jpg)
�17
SPA (микромодуль)
•ECMA-262 редакции EcmaScript 2017 •Стэк: React/Redux •CSS Modules •Eslint
![Page 18: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/18.jpg)
SPA (микромодуль)
•ECMA-262 редакции EcmaScript 2017 •Стэк: React/Redux •CSS Modules •Eslint •Karma+Jasmine / Jest
�18
![Page 19: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/19.jpg)
Архитектура SPA
•Слой данных •Слой отображения •Роутинг
�19
![Page 20: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/20.jpg)
�20
![Page 21: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/21.jpg)
Вендоры:
�21
•axios •bignumber.js •classnames •immutable •lodash •moment •react •react-dom
•react-redux •react-router •react-router-dom •redux •redux-form •redux-thunk •reselect •i18next
![Page 22: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/22.jpg)
Платформенные библиотеки
�22
•lib.ui •lib.app •lib.workflow •sbtsbol-webpack-config •…
![Page 23: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/23.jpg)
Сборка
�23
![Page 24: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/24.jpg)
�24
Сборка
![Page 25: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/25.jpg)
�25
JSX/JS
![Page 26: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/26.jpg)
�26
CSS
CSS Modules
PostCSS
![Page 27: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/27.jpg)
�27
CSS Modules
![Page 28: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/28.jpg)
�28
CSS
БЭМ не спасёт!
![Page 29: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/29.jpg)
Версионирование
�29
![Page 30: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/30.jpg)
CI/CD
�30
![Page 31: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/31.jpg)
Проблема консистентности
�31
![Page 32: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/32.jpg)
Проблема в скорости загрузки
�32
![Page 33: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/33.jpg)
![Page 34: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/34.jpg)
BootstrapРоутинг и загрузка модулей
�34
![Page 35: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/35.jpg)
Роутинг
�35
![Page 36: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/36.jpg)
Загрузка
�36
SуstemJS
![Page 37: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/37.jpg)
Манифест
�37
![Page 38: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/38.jpg)
SSR
�38
![Page 39: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/39.jpg)
HTTP2
�39
![Page 40: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/40.jpg)
�40
Вывод
![Page 41: Собираем микромодули · Server •Обвязка страниц •Прокси до серверов с бизнес логикой •Вспомогательные](https://reader034.vdocuments.us/reader034/viewer/2022050122/5f52152c880c1e15db144dd2/html5/thumbnails/41.jpg)
Спасибо за внимание!
✋