-
Notifications
You must be signed in to change notification settings - Fork 3
Frontend Development Stack
Vadim Dyachkov edited this page Mar 11, 2020
·
8 revisions
- Фронтенд фреймворк, который будет ходить к нашему серверу за данными по REST/gRPC/GraphQL, отображать их пользователю и позволять редактировать настройки
- Данные:
- Админка для настройки параметров работы поиска дубликатов
- Список PR к отслеживаемым проектам
- Отображнеие графа заимствований кода для каждого PR
- Отображение diff между несколькими PR по клику на дугу в графе заимствований
- ...
- Поддержка авторизации
- Простая ролевая модель
- Для админа - read-write права
- Для остальных - read-only права
- Interpreted (JIT-compiled) programming language
- ECMAScript standard
- The only scripting language for Web pages
- Typed superset of JavaScript that compiles to plain JavaScript
The obvious choice in favor of a typed language - TypeScript.
- Библиотека для манипуляции элементами DOM-дерева и организации запросов
- Не полноценный UI-фреймворк в отличии от React-Angular-Vue
- Придется использовать server-side rendering
- Много низкоуровеных манипуляций на уровне DOM-дерева
- Есть мнение, что технология умирает
- Не модно в 2к20
- Поддерживается компанией Google
- Самый старый из тройки React-Angular-Vue
- Довольно тяжеловесная библиотека
- Сложнее, чем React и Vue
- Есть Dependency Injection
- Не использует Virtual DOM (потенциально худший perfomance)
- Поддерживается компанией Facebook
- Самый популярный по Google Trends (больше готовых решений и примеров)
- Позволяет комбинировать разметку и JS-код
- Отличный тулинг: react-developer-tools, create-react-app, ...
- Один человек в команде имел опыт работы с React
- Не поддерживается крупными корпорациями
- Самый молодой из тройки React-Angular-Vue
- В каком-то смысле собрал лучшее из Angular и React
- Недостаточно популярен в сравнении с конкурентами
На самом деле, можно выбрать любой фреймворк и реализовать UI на нем. Но, ввиду большей популярности, хорошему тулингу и предыдущему опыту работы, предлагается сделать выбор в пользу React.
- More popular
- Battle-tested
- Had experience with npm
- Newer than npm
- Fixes a lot of npm's issues
- Easier to use
- Caches dependencies
- Faster than npm due to parallel operations
Let's use a nice and fancy package manager - Yarn.
- De-facto standard in the frontend world
- Preconfigured and hidden webpack + balel for React applications
For React-based applications react-scripts is more convenient and easier to use.