coding monday
TRANSCRIPT
Web 1.0 (HTTP)Backend
PHP, Java, .NET …
Frontend HTML, CSS
GET, POST
Backend PHP, Java, .NET …
Frontend HTML, CSS
GET, POST
WEB 2.0 (AJAX)Backend
PHP, Java, .NET …
Frontend HTML, CSS, Javascript
(jQuery, Zepto, Prototype…)
Frontend HTML, CSS, Javascript
(jQuery, Zepto, Prototype…)
XHRXHR JSON, XML
Преимущества Angular• Двусторонний биндинг (two-way binding)
• Простой механизм внедрения зависимостей (DI)
• Директивы
• Большой выбор сервисов “из коробки”
• Быстрое прототипирование
• Огромный выбор open source плагинов
Недостатки Angular• Двусторонний биндинг (two-way binding)
• Внедрение зависимостей (DI)
• Директивы
• Дебаггинг
• Отсутствие server-side rendering
• Ограниченность фреймворком
Web 1.0 (HTTP)Backend
PHP, Java, .NET …
Frontend HTML, CSS
GET, POST
Backend PHP, Java, .NET …
Frontend HTML, CSS
GET, POST
React.js
• DOM-манипуляции очень дорого обходятся
• Javascript очень быстрый
• Virtual DOM
• Очень быстрый diff-алгоритм (O(n3) -> O(n))
React не MVC фреймворк
React - это библиотека для построения UI, которая автоматически управляет всеми обновлениями интерфейса при
изменении данных приложения
React не использует шаблонов
• Javascript очень мощный и гибкий язык программирования и это очень важно для построения больших приложений
• React объединяет логику представления с разметкой, что позволяет гораздо проще поддерживать и расширять приложение
• Разметка и содержание находятся в Javascript. Нет конкатенации строк, что создает меньше пространства для XSS-атак
Что почитать• React (https://facebook.github.io/react/)
• React-native (https://facebook.github.io/react-native/)
• Flux (https://facebook.github.io/flux/)
• Redux (http://redux.js.org)
• React tutorials (https://medium.com/react-tutorials)
Кого почитать• Dan Abramov (https://github.com/gaearon, https://
twitter.com/dan_abramov, https://medium.com/@dan_abramov)
• Michael Jackson (https://github.com/mjackson, https://twitter.com/mjackson)
• https://twitter.com/Vjeux
• Cheng Lou (https://github.com/chenglou, https://twitter.com/_chenglou)
Я
• Facebook - https://www.facebook.com/meafmira
• Github - https://github.com/miafmira
• Twitter - https://twitter.com/meafmira