Partage
  • Partager sur Facebook
  • Partager sur Twitter

Framework client-side ou server-side ?

Besoin d'aide sur la technologie à utiliser

    5 novembre 2015 à 11:40:18

    Bonjour,

    Je suis actuellement en train de plancher sur un projet perso pour me forger une expérience, et j'ai de gros doutes concernant la techno que je dois utiliser, je m'explique :

    Mon projet serait un genre de leboncoin-like, en gros un site sur lequel les utilisateurs inscrits pourrait poster des petites annonces. Donc système d'authentification, page de profil, création de contenu, affichage des annonces dans un flux etc... 

    J'ai déjà développé une très grosse partie du backend : j'ai une api RESTful en architecture trois-tier développée en java. Celle-ci se charge de dialoguer avec la bdd, de me fournir différents points d'entrées et de me renvoyer le JSON correspondant.

    Exemple de point d'entrée :

    http://api.monsite.fr/user?userid=1 me retourne :

    {"user": {"username": "toto1234","email" : "toto1234@gmail.com" }}

    J'ai des points d'entrée pour toutes les actions effectuées sur l'ensemble du site ( Création d'annonces, mise à jours de données... bref tout, et j'ai fait attention à bien les déclarer en POST, GET, UPDATE, DELETE etc... ). Il y a également une surcouche oAuth pour protéger l'api des requêtes de n'importe qui .

    Voilà pour l'aspect « serveur », à mon sens ça ne devrait pas poser de problèmes, à vous de me dire. ^^

    Seulement voilà, je me dis que si absolument toutes les actions sont gérées par ce webservice, je n'arrive pas à voir l'intérêt que pourrait m'apporter de gros framework server-side comme Symfony, pour venir faire des requêtes HTTP sur mes différents points d'entrée, récupérer le JSON et peupler le HTML. Ce serait sortir la grosse artillerie pour n'exploiter au final que très peu de ses fonctionnalités.

    Je me suis du coup penché sur des framework client, du style Angular, Ember et compagnie. A première vue ça me semblait très adapté pour mon cas : possibilité de faire des requêtes http, de gérer quoi faire en cas de succès ou d'erreur de celles-ci, exploiter directement le JSON obtenu pour peupler la vue etc.. Des outils très puissants, avec une bonne courbe d'apprentissage ! :D

    Mais au fur et à mesure de mes recherches pour essayer de savoir si vraiment c'était ce qu'il me fallait, je doute de plus en plus. Je n'arrive déjà pas à faire mon choix entre AngularJS et Ember, les deux étant au final très similaires, mais avec l'arrivée d'Angular v2, j'ai peur de la maintenabilité de la v1 ( si je choisis Angular, ça sera en v1, du fait que la majorité des tutos, questions etc portent sur Angular 1.X ).

    Je ne sais pas si je fais le bon choix en me portant sur les framework client, j'ai peur qu'ils me « brident », et étant entièrement instancié dans le navigateur, l’utilisateur peut modifier absolument tout le code et les données que je lui fournis. :euh:

    Si je tiens autant à être absolument certain de la technologie que je dois utiliser, c'est que je me projette dans le cas où je devrai rendre cette application disponible au public par exemple. Je tiens à faire les choses correctement, pour ne pas avoir de problèmes de maintenabilité ou de sécurité.

    En résumé : Au vu de ce que j'ai déjà (webservice/api), est-ce une bonne idée d'utiliser un framework client comme Angular ? Ou bien dois-je rester sur de gros framework serveur tels que Symfony. Sachant que je me poste dans l'optique où cette plate-forme serait massivement utilisée ( un trafic comparable à leboncoin admettons ).

    Merci de bien vouloir m'éclairer, et de m'avoir lu :)

    • Partager sur Facebook
    • Partager sur Twitter

    Framework client-side ou server-side ?

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown