IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Conception Web Discussion :

Application web, quel framework choisir ?


Sujet :

Conception Web

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 66
    Par défaut Application web, quel framework choisir ?
    Bonjour la communauté,

    j'envisage de ré écrire une application web (non finalisée), et je ne sais pas quel framework utiliser pour me faciliter la tâche ?

    J'ai déjà commencé ce projet avec CodeIgniter (sans framework d'affichage).
    J'ai réussi à arriver à mes fins, mais le résultat n'est malgré tout pas satisfaisant, ça reste assez brouillon ...

    Quoique je choisisse, j'ai décidé de reprendre le projet depuis zéro.
    Je comprends que je dois définir une politique de développement avant de commencer à coder.

    Je suis un développeur autodidacte, avec vraisemblablement beaucoup de trous dans mon apprentissage.
    Je m'en sors avec HTML-CSS, JavaScript (+ AJAX), PHP et MySQL et MVC.
    J'ai pour le moment encore du mal à prendre de l'altitude et définir une vue d'ensemble de mon projet.

    Avant de poster ici, j'ai commencé à fouiller, mais je n'arrive pas à me faire une opinion.
    Je cherche un outil qui me permette de ne pas passer plus de temps à étudier qu'à coder, autant que faire se peut ...

    Il s'agit d'une application de gestion de transport (planning, clients, produits, facturation, chauffeur, paye, ...) qui pourra être utilisée sur écran de bureau ou smartphone/tablette.
    Avec une gestion relativement standard (affichage, ajout, modification, suppression, recherche), hormis pour la paye et la facturation qui ont des caractéristiques particulières.

    Je cherche à construire quelque chose qui pourrait ressembler plus ou moins, à l'interface de Proxmox.
    Je n'ai pas besoin de référencement, je crois qu'on parle dans ce cas de software as service.

    Mes besoins sont les suivants :

    - Tout d'abord, me faciliter le formatage des pages web. Pouvoir standardiser la construction des formulaires de saisie.
    Avoir la faculté de faire des recherches dans la base de données.
    Pouvoir construire des formulaires visuellement spécifiques comme pour le planning.

    - Cette application étant multi-utilisateurs, simultanés, comment rafraîchir les données affichées depuis le serveur (sans action de l'utilisateur) ?
    AJAX (je suppose que non ?), websocket, autres ... ?

    - Mettre en place une gestion de droits selon le profil de l'utilisateur, administratif, chauffeur, client, ...
    Je suppose que cette fonctionnalité n'est pas attachée à un framework particulier, mais comment la mettre en oeuvre ?

    - Capacité de construire des documents PDF (vraisemblablement signés).

    - Capacité de formater et envoyer des emails.

    - Et bien sûr de la sécurité, https, et comment s'assurer que celui qui se connecte est bien autorisé à le faire, double authentification systématique (code SMS), comme pour les sites bancaires ?

    L'application sera vraisemblablement hébergée sur double serveur Proxmox.

    Je travaille seul (avec votre aide), je dois utiliser des technologies que je puisse maîtriser de bout en bout.

    Connaissant déjà CodeIgniter et ayant déjà commencé à écrire ce projet avec ce framework,
    ne vaut-il pas mieux que je continue avec ce produit, en lui ajoutant les briques nécessaires ?

    => Framework de création des formulaires.
    => Ajax (déjà utilisé) / websocket.

    Merci de bien vouloir aussi m'orienter vers des tutoriels, qui me permettent de comprendre comment construire une vue d'ensemble de mon projet.
    Je suppose, Merise et UML, c'est ça ?

    Merci pour votre retour !
    Cordialement, Nils

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2012
    Messages : 135
    Par défaut
    Bonjour nilsb13.

    La première chose qui m'interpelle c'est ceci.
    J'ai réussi à arriver à mes fins, mais le résultat n'est malgré tout pas satisfaisant, ça reste assez brouillon ..

    Qu'est ce qui pourrait te faire penser qu'avec un autre framework php (puisque c'est le seul langage serveur qui tu semble maîtriser) tu obtiendrais un meilleur résultat ?

    Quelle est la version de CodeIgniter que tu utilise ?

    CodeIgniter, figure parmi les frameworks php les plus populaires à ce jour et je doute qu'une réécriture complète avec Laravel ou Symfony qui sont ses concurrents directs soit vraiment une solution.

    Selon toi, qu'est ce qui est brouillon et non satisfaisant ?
    L'architecture du code, l'absence de bonnes pratiques, les performances, la complexité ou encore le modèle de données ?

    Si c'est uniquement lié au code, rien ne t'empêche de réécrire ce qui te semble trop brouillon en conservant CodeIgniter.
    Changer de framework uniquement pour ça, c'est à mon humble avis le meilleur moyen de perdre du temps en apprentissage et se décourager. (malheureusement j'en sais quelque chose)

    Je cherche à construire quelque chose qui pourrait ressembler plus ou moins, à l'interface de Proxmox.
    La tu aborde l’aspect visuel, qui n'est en aucun cas dépendant du framework ou la technologie côté serveur.
    Si tu souhaites réaliser une interface graphique type "Dashboard", il existe de nombreuses sources gratuites ou non pour la réaliser.
    La plupart étant basées sur Bootstrap avec jQuery ou avec Anguar/VueJS pour d'autres.

    Tout d'abord, me faciliter le formatage des pages web. Pouvoir standardiser la construction des formulaires de saisie.
    Pour ça l'utilisation d'un framework css semble être une solution adaptée.

    Cette application étant multi-utilisateurs, simultanés, comment rafraîchir les données affichées depuis le serveur (sans action de l'utilisateur) ?
    AJAX (je suppose que non ?), websocket, autres ... ?

    Dans tous les cas pour rafraîchir des données recharger la page, il te faudra du javascript pour exécuter des requêtes asynchrones (ajax).
    Pour cela, soit tu garde ton template généré par CodeIgniter dans lequel tu ajoute du javascript, qu'importe le framework js.
    Soit tu créé un second projet dédié au front avec un framework javascript dédié (Angular, Vue, React...) et tu utilise ton CodeIgniter que pour traiter les requêtes du front via une api.
    C'est cette solution qui est la plus usité aujourd'hui pour des raisons de flexibilité et de performances.

    Capacité de construire des documents PDF (signé)
    Pour générer un fichier pdf côté serveur il existe plusieurs outils en php, je te laisse chercher.
    Par contre tu veux ajouter une véritable signature numérique, il faut implémenter une solution dédiée souvent payante, comme Yousign, Docusign, HelloSign... Qui pourra faire office de contrat.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 66
    Par défaut
    Bonjour ze0ne,

    mille merci pour tes éclaircissements.

    Non, je crois que tu as raison, changer de framework ne changera pas grand chose.
    Toutefois, j'ai tenté, sans succès pour le moment, d'intégrer websocket à Codeigniter, il faut simplement que je persévère ...

    Pour ce qui est de la version de CI, le projet étant pour le moment en stand-by, je porterais ce que j'ai déjà écrit dans la dernière version de CI.
    Mon but, étant, connaissant maintenant la problématique, de ré écrire, ré utiliser le code déjà écrit, en le structurant mieux.

    Ce qui est brouillon est insatisfaisant sont :
    1) Le fait que je n'ai pas étudié UML et que je me suis lancé dans l'écriture au mieux que je pouvais de mes connaissances.
    J'ai commencé par dessiner la base de données, puis, écrire les pages pour la gestion des tables sans liaisons, puis, je me suis attaqué aux pages plus complexes faisant appel à plusieurs tables et nécessitant du JS et de l'AJAX.

    2) Par exemple, j'utilise plusieurs techno JS, simplement pour apprendre, et j'ai des requêtes AJAX avec jQuery et d'autres sans.
    Il faudrait, à la ré écriture que je fasse des choix, mais lesquelles ..., c'est là où je butte un peu.

    3) Côté visuel, j'ai deux feuilles de styles, une pour la mise en page flexbox, l'autre pour le reste, avec pas mal de bricolage (là aussi c'est à ré écrire) ...
    On m'a parlé de framework JS, mais je ne sais pas par quel bout attaquer ça .

    4) L'absence de bonnes pratiques ?, très certainement, comment doit t'on chercher de la documentation à ce sujet ?
    J'arrive toujours à trouver de la doc pour écrire un bout de code, mais je ne sais pas trouver de la doc pour avoir une vision globale d'un projet, et c'est la que la multitude de framework PHP et JS me laissent perplexe.

    De toute façon, il faut que je repose à plat le mécanisme général de l'application et la structure de la base de données, essayer de la simplifier, ou tout du moins, rendre les choses plus cohérentes.

    Ok, donc un framework CSS semble un bon point de départ pour le visuel.
    Je vais voir pour comparer BootStrap, Angular et VueJS.

    Ne traiter que les requêtes du front via une API ?
    Une API est une sorte de pilote pour passer d'un monde à l'autre, c'est ça ? Ici de PHP (moteur de l'appli) à JS (visuel) ?

    Cela semble intéressant, est-ce que tu saurais m'orienter pour trouver des tutos à ce sujet ?
    L'API, je la trouve telle quelle, ou j'écris ma propre API ?
    Mon code PHP en sortie de traitement fourni un tableau de données (ou un objet de données ?), et ces données sont transférées via l'API au framework qui en fait la présentation, c'est ça ?

    Pour le moment pour le PDF, j'utilise la classe FPDF, mais sans signature.
    Je dois aussi approfondir cette question, je comprends donc maintenant qu'il faut faire appel à un organisme tiers pour avoir des signatures certifiées, à l'image des certificats htpps.

    Pour résumer mes problèmes, c'est trouver de la doc pour pouvoir construire la vue d'ensemble de mon appli.
    A l'école, il y a 30 ans, j'ai appris C (et assembleur et Pascal), malheureusement la POO n'a été abordé que l'année suivant ma dernière année, où j'avais fini mon BTS. C'est avec C que je suis passé à PHP, pour le reste, je me suis débrouillé avec internet.
    Donc, pas étudié UML.

    Donc, je conserve CodeIgniter, et je dois trouver un framework JS qui me permette d'avoir un bel affichage moderne.
    Je comprends que je dois utiliser le mot "dashboard" pour mes recherches d'interface.
    c'est aussi, un peu de vocabulaire qui me manque pour faire des recherches efficaces.

    Et bien merci pour toutes ces informations.
    Nils

Discussions similaires

  1. Migration d'applications vers le web : quel langage choisir ?
    Par iFlorian dans le forum Langages de programmation
    Réponses: 1
    Dernier message: 28/10/2016, 10h31
  2. Quel framework choisir pour appli web + mobile?
    Par JavaBean dans le forum Bibliothèques & Frameworks
    Réponses: 0
    Dernier message: 28/09/2015, 17h31
  3. Quel Framework choisir pour le dessin vectoriel ?
    Par AliJava dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 30/09/2009, 15h46
  4. [Applications Embeded] Quel SGBD choisir ?
    Par asmo² dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 06/04/2006, 14h23
  5. Réponses: 3
    Dernier message: 08/02/2005, 11h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo