Une histoire comparant les frameworks frontaux sur les applications Rails existantes

Contexte

J'ai décidé d'introduire un framework frontal dans une application Rails existante, et j'ai comparé trois points célèbres le long des points de contrôle, donc je vais laisser cette histoire. Cette fois, c'est une histoire que nous avons comparée de cette manière, donc si vous décidez de choisir un cadre, veuillez le lire à titre de référence uniquement, et je pense que vous devriez changer la méthode de comparaison en fonction de la situation et du projet à ce moment-là. .. Ce n'est donc pas la bonne réponse. Je pense que les résultats de l'enquête peuvent être incorrects, il est donc préférable de mener l'enquête en regardant vous-même l'enquête officielle.

Cadres comparés

Les trois cadres suivants ont été comparés et examinés cette fois.

Soit dit en passant, Angular n'avait pas une application aussi à grande échelle à présenter cette fois, alors j'ai arrondi les recherches d'Angular dans une certaine mesure et les ai réduites à Vue et React.

Point de contrôle

Cette fois, j'ai décidé de discuter des points de contrôle au sein de l'équipe, pensant que "bien, si je le sais, je pourrais peut-être comparer."

Méthode de comparaison

Durée: 2 semaines Nombre de personnes interrogées: 3-4 ingénieurs

Les points de contrôle ci-dessus ont été partagés entre les membres de l'équipe et confirmés. Le partage d'informations à ce moment-là utilisait des documents Google et un Hangout a été réalisé au besoin.

Résultat de la comparaison

Point de contrôle Vue React Angular
Aperçu du cadre (fonctionnalités) Développé et maintenu par la communauté avec le framework OSS. Seuls les composants de l'interface graphique sont fournis. Installez d'autres bibliothèques si nécessaire Développé et maintenu par Facebook. Seuls les composants de l'interface graphique sont fournis. Installez d'autres bibliothèques si nécessaire Développé et maintenu par Google. Framework MVC pour le frontal
Principaux langages de programmation EMACS6 EMACS6 Typescript
Dernière version (au moment de l'enquête) 2.6 16.13 10
Difficulté d'apprentissage Facile: pas de problème si vous comprenez les composants de l'interface graphique et le cycle de vie. Le code CSS peut être écrit dans le composant Facile: pas de problème si vous comprenez les composants de l'interface graphique et le cycle de vie. Difficile: vous devez comprendre les composants du framework autre que comment créer l'interface graphique
Taille de l'emballage (environ) 80KB 100KB 500KB
Partie latérale existante Vue Material Kit, Vuetify, Vue Material, Quasar, Bootstrap-Vue Raect Material Kit, Material UI, React Bootstrap, Ant Design, Semantic UI React mdbootstrap, material, ng-bootstrap
Difficulté de mise en œuvre des fonctions existantes Vous devez créer une nouvelle API. Comme Vue -
Problèmes lors de l'utilisation d'Heroku, etc. déployer et vérifier déployer et vérifier -
Gestion simplifiée du code La gestion du code est facile car elle est divisée par composants Comme Vue -
Méthode de développement Orientation objet Orienté vers les composants Orienté vers les composants
document Il y a du japonais La version japonaise est une traduction directe de l'anglais Il y a du japonais
Migration vers d'autres frameworks Puisqu'il s'agit d'un format unique, il est difficile de revenir en arrière à mesure que le développement progresse Comme Vue Il est difficile à remplacer car il est full stack
Facilité de création d'un environnement local Le réglage au moment de l'introduction est un peu difficile, mais c'est facile s'il est terminé Comme Vue -

Résultat de la comparaison

À la suite du développement de la fonction existante, de sa vérification, de la lecture du document et de sa comparaison, cette fois, il est devenu Vue & Vuetify. L'une des raisons est que de nombreux membres de l'équipe avaient de l'expérience avec Vue.

Recommended Posts

Une histoire comparant les frameworks frontaux sur les applications Rails existantes
Publier des vidéos sur les rails
Essayez de déployer l'application Rails sur EC2-Part 1-
[Rails] Utiliser la validation sur un contrôleur spécifique
Présentation de Rspec, un framework de test pour Ruby on Rails
[Ruby on Rails] Un mémorandum de modèles de mise en page
(Ruby on Rails6) Création de données dans une table
J'ai fait un portfolio avec Ruby On Rails