Top Banner
React в реальному житті Роман Якобчук
17

JS Lab`16. Роман Якобчук: "React в реальной жизни"

Jan 20, 2017

Download

Software

GeeksLab
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: JS Lab`16. Роман Якобчук: "React в реальной жизни"

React в реальному життіРоман Якобчук

Page 2: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Як я прийшов в Реакт

• Мені потрібен був фреймворк, що легко уживатиметься з чим-завгодно

Але, якщо чесно:• Мені було нуднувато• Я вчив функціональне програмування• Реакт був цікавою новинкою

Page 3: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Реакт в стилі FRP

• Це цікаво• Надійно• Прозоро

Page 4: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Universal apps

• Це цікаво)• Неочевидно (чи недосяжно) в інших фреймворках• Можливість створювати best-practice

Page 5: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Who cares?

• Хто писав FRP-логіку?• Хто розробляв додатки з серверним рендерингом?• Хто робить на React дійсно складні проекти?

Page 6: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Які у вас повсякденні задачі?

• Розробка простих SPA• Розумні компоненти• Підтримка legacy-коду

Page 7: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Коли React - не ваш варіант

• Класичний SPA• Багато взаємодії “по горизонталі”• Ваша задача вирішується за годину з jQuery• Важливі переходи між станами, наприклад анімації• В команді немає хороших програмістів

Page 8: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Чи не зовсім?

Історія одного “неправильного” вибору

Page 9: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Як з’їсти слона

• Величезний Legacy проект• Технології, котрі вже зараз не бажають підтримувати• Бажання зберегти мінімальний технологічний стек• Команда прекрасних розробників

Page 10: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Коли Реакт - ідеальне рішення

• Багато дрібних компонент• Набір слабкозалежних розумних компонентів• Коли данних значно більше, ніж UI• Для складних задач, що потребують низькорівневих рішень

Page 11: JS Lab`16. Роман Якобчук: "React в реальной жизни"

SPA на React

Cons:• Довга дорога до першого результату• Багато бойлер-плейтуPros:• Гнучкість• Швидкість• Реюзабельність

Page 12: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Що відбувається з командою

• Заперечення• Гнів• Торг• Депресія• Прийняття

Page 13: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Злодійський план

• Давайте зробимо один апп на Реакті• Давайте виділимо розумні компоненти і використаємо всюди• Давайте поріжемо це на дрібні компонентики і зробимо свою бібліотеку• У нас якось багато елементів на Реакті, давайте все на ньому робити

Page 14: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Результат

• Всі нові проекти пишуться на Реакті• Велика кількість складних компонентів переписується на Реакт• Створюється бібліотека стандартних компонентів• Створюється стандартизований data-layer на основі immutable.js

Page 15: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Висновки

Pros:• Можливість використовувати де завгодно• Можливість поступового переїзду• Широкий (найширший?) спектр застосуванняCons:• Високий поріг входу• Відсутність стандартів

Page 16: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Найважливіша порада

Завжди, завжди, завжди пишіть propTypes

Page 17: JS Lab`16. Роман Якобчук: "React в реальной жизни"

Робіть круті проекти

Роман ЯкобчукSkype: r.iakobchukEmail: [email protected]://roma.if.ua