-
Notifications
You must be signed in to change notification settings - Fork 0
Choix technologiques
Nous utiliserons dans le cadre ce projet React qui s’appuie sur une très importante communauté Open Source, ce qui est primordiale lors du développement de notre application. Avec cette bibliothèque il est possible de développer en JavaScript classique, ce qui nous laisse une plus grande liberté lors du développement. A savoir que nous maitrisons aisément le Javascript. Nous utiliserons aussi Flux et Redux afin de compléter au mieux React pour faire de celui-ci un réel framework. De plus, React est beaucoup plus facile à apprendre qu’Angular, et n’agit que très peu sur le DOM car il utilise une DOM virtuel. Concernant le développement web, le framework ReactJS sera utilisé. Lors d'un sondage, React est couramment utilisé par 53 % des sondés, tandis que 32 % prévoient d'en apprendre le fonctionnement. Angular est mis en œuvre par 30 % des sondés, et 10 % comptent l'essayer. Les avantages de React sont multiples. La rapidité du rendu fait partie des fonctionnalités-phares de React et lui donne un avantage certain sur Angular. Cette technologie embarque des méthodes de réduction du nombre d'opérations sur le DOM, ainsi que d'optimisation et d'accélération du processus de mise à jour. Le DOM (Document Object Model) est d'une grande utilité en cas de gestion de grosses bases de données. Le JSX est une syntaxe JS qui autorise les citations en HTML et l'utilisation du balisage HTML lors du rendu des sous-composants. Il favorise l'élaboration d'un code lisible par la machine et offre la possibilité de constituer des composants en un seul fichier vérifié au moment de la compilation.
Le choix de Bootstrap nous a semblé le plus judicieux pour plusieurs raisons.
Tout d'abord, pour son système de grille qui nous permettra de développer notre site web pour n'importe quel type d'écran.
De plus, il nous propose une très grande collection de composants.
Enfin, possède une très grande communauté sur qui nous pourront compter pour avoir de l’aide ou plus encore réutiliser les composants de la communauté. React est centré sur JavaScript en encapsulant le HTML dans JS. ReactJS produit du code « propre » (simple à lire), sa lecture permet de déterminer immédiatement quelles sont les fonctionnalités de votre application. Ce qui est essentiel pour la maintenance et l’expansion de votre projet dans le temps. ReactJS à pris le concept de Shadow DOM et du framework PolymerJS et l’a poussé à un niveau supérieur. React.js n’utilise pas Shadow DOM – à la place il vous donne l’habilité de créer vos propre composant que vous pourrez réutiliser plus tard, combiner, et/ou inclure dans le cœur de votre contenu. Cette fonctionnalité à elle seule est un gage de productivité de par la facilité à définir et manipuler vos propres composants. C’est LA fonctionnalité qui fait la différence par rapport aux autres frameworks. Grâce à l’utilisation d’un serveur Node, le code va pouvoir être généré côté client ET côté serveur (un peu comme du PHP donc… tout en gardant les avantages du Javascript !) à la différence des autres frameworks JS traditionnels (Backbone.js, AngularJS, Ember.js, etc.) qui de manière native exécutent le code seulement côté client (dans le navigateur). Jusqu’à présent il était obligatoire de faire passer un bot (service gratuit ou payant) pour qu’il crée des fichiers HTML référençables.
Node.js nous permet de faire du Full-Stack en JavaScript.
Le gestionnaire de paquets npm est très facile d'utilisation et très bien fourni. La communauté est très active donc ça permet de trouver rapidement des solutions aux problèmes rencontrés.
On gagne également du temps en utilisant Node.js car on n'a pas besoin de réapprendre quelque chose de nouveau comme on a déjà travaillé avec.
Nous avons besoin d'une base de données structurée. MariaDB est en plus open source et possède une grande communauté, ce qui est pratique pour faire des recherches. C'est également pratique pour nous car nous sommes habitués à utiliser MySQL et MariaDB est très ressemblant (MariaDB est un fork de MySQL).
https://www.ocsigroup.fr/blog/reactjs-vs-angular-quel-est-le-meilleur
https://www.acseo.fr/6-raisons-daimer-reactjs