Pourquoi ces forums nécessitent-ils JavaScript ? Ce n’est pas comme si d’autres forums pouvaient fonctionner sans.
Parce que Discourse est essentiellement du JavaScript pur. Si vous retirez le JS, il ne reste plus rien ![]()
Une solution technique différente, rien d’autre.
C’est juste la façon dont il est conçu. Discourse n’a pas simplement « besoin » de javascript, c’est une application javascript qui est entièrement chargée dans votre navigateur, et cette application utilise l’API pour charger des données à partir de la base de données côté serveur.
@Jagster a été plus rapide. De plus, mon explication est peut-être un peu vague, mais je suis sûr qu’il y a des experts ici qui pourront mieux l’expliquer !
Cela mérite quelques éclaircissements.
Pour commencer :
GitHub - discourse/discourse: A platform for community discussion. Free, open, simple.
Discourse est en fait majoritairement Ruby on Rails, et (selon GitHub) seulement un quart est en javascript, bien que ce soit un quart extrêmement critique et qu’il domine le côté client.
Les raisons pour lesquelles Discourse et d’autres sites web(/applications web) modernes utilisent Javascript sont :
- Charge de travail : décharge le serveur d’une grande partie du travail, ce qui aide le site web à mieux évoluer (hé, faisons travailler la machine de l’utilisateur pour partager une partie du travail, pourquoi pas ?!)
- Bande passante : bien que le chargement initial puisse être légèrement plus long pour télécharger ce javascript, le chargement interstitiel des données à partir de ce moment est BEAUCOUP plus rapide en utilisant BEAUCOUP moins de bande passante (si le monde perdait le javascript demain, internet s’arrêterait peut-être ?), car il suffit de transférer les données et non tout le balisage et la mise en page de toute l’interface utilisateur. Ainsi, les choses se font sur le web beaucoup plus rapidement et permettent des connexions à faible bande passante comme les mauvaises connexions mobiles.
- Interface utilisateur : améliore la nature dynamique de l’interface utilisateur, ce qui améliore l’expérience utilisateur (par exemple, cliquer sur un bouton pour mettre à jour seulement une partie de l’écran - pas de gros rechargements de navigateur).
- C’est un standard : Javascript est un standard sur tous les navigateurs modernes, y compris les navigateurs mobiles, donc on écrit une fois et on apporte des qualités d’application à la majorité des appareils.
- Séparation des préoccupations : découple les processus serveur de la nécessité de se soucier du rendu de l’interface utilisateur (généralement), ce qui facilite la migration ou le support d’autres front-ends qui ne sont pas nécessairement basés sur Javascript (ou même HTML). Application iOS, quelqu’un ?
Je suis sûr qu’il y a beaucoup d’autres avantages, mais ce sont les principaux.
Du point de vue du client et pour un utilisateur final, c’est du pur JS, ou du moins ça y ressemble, n’est-ce pas ?
