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

Langage PHP Discussion :

Pourquoi ne faut-il pas réinventer la roue ? [Débat]


Sujet :

Langage PHP

  1. #81
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 274
    Points
    3 274
    Par défaut
    En fait ce que tu es en train de demander c'est qu'un framework soit un CMS, car ce sont des fonctionnalités avancées de gestion d'image que tu demandes, et la gestion d'image est comprise dans la gestion de contenu.

    Un framework (sans plugin, sans ajout j'entends) ne doit pas et ne devrait pas avoir à avoir besoin de tables de créées dans la base de données pour fonctionner, or ce que tu demandes n'est pas possible sans cela. C'est parfaitement logique que Cake, comme tous les autres frameworks d'ailleurs, ne propose rien de tel nativement, c'est de la gestion de contenu avancée que tu demandes, à laisser aux CMS et aux plugins, ce n'est pas le rôle d'un framework natif de gérer cela.

    Sinon concernant CakeMedia, je l'ai testé et il fonctionne bien avec ckeditor. La subtilité, car je pense que c'est de là que vient ton problème (si tu as l'erreur "UndefinedController"), c'est que l'ajout d'images ne peut marcher que lors de l'edit du modèle concerné, et non de l'ajout; En fait, même si dans un premier temps j'ai trouvé cela assez surprenant, je me suis dis qu'après coup c'était logique car lors de l'ajout, l'élément concerné ne possède pas encore d'identifiant, il est donc impossible de créer la liaison en base !
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  2. #82
    Membre habitué
    Avatar de Shinja
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2012
    Messages : 153
    Points : 156
    Points
    156
    Par défaut
    Oui c'est vrai, mais pour le moment je n'ai trouvé aucun plugin potable qui soit maintenu sérieusement. Je n'ai eu aucune erreur avec le plugin Media, c'est juste que lorsque je clique sur le bouton image, un masque grisé s'affiche comme si quelque chose allait s'ouvrir, mais rien ne se passe et la page reste bloquée. Pourtant j'ai suivie à la lettre le tutoriel en vidéo de son auteur et j'ai également suivi un tutoriel pour créer un système d'upload de fichier. J'ai très bien compris le fonctionnement de cakePHP, je trouve que c'est formidable, mais le manque de la gestion d'images me dérange. Je ne vois qu'une solution : créer mon propre plugin, mais j'avoue que pour le moment je n'en ai pas le courage bien que je compte m'y attaquer prochainement. Actuellement je dois bosser sur trois projets et j'ai besoin d'avancer assez rapidement. Je n'ai donc pas le temps de maitriser cakePHP, même si ça reste simple. Disons que quand je vois certains tutoriels où sa semble tellement naturel pour les mecs de préciser $this->model dans une fonction ou de créer un tableau avec array('contains' => ''), je me sens un perdu car je ne comprend pas vraiment la démarche sur le moment. Donc j'ai besoin avant tout de prendre mes marques sur cakePHP, car pour le coup je me débrouille mieux dans mon coin avec mes propres fonctions et je suis nettement plus productif sous WordPress car je me suis habitué à créer mes propres plugins ainsi qu'un toolkit perso reprenant mes fonctions fétiches, du coup le WordPress j'en fais vraiment ce que je veux. Je trouve ce CMS très bon, mais bien trop gourmand en ressources.

  3. #83
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 274
    Points
    3 274
    Par défaut
    Pour corriger l'erreur de l'écran grisé et bloqué, il suffit que tu importes jquery (erreur vu en regardant la console js).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo $this->Html->script('http://code.jquery.com/jquery-1.11.0.min');
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  4. #84
    Membre habitué
    Avatar de Shinja
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2012
    Messages : 153
    Points : 156
    Points
    156
    Par défaut
    Citation Envoyé par Spartacusply Voir le message
    Pour corriger l'erreur de l'écran grisé et bloqué, il suffit que tu importes jquery (erreur vu en regardant la console js).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo $this->Html->script('http://code.jquery.com/jquery-1.11.0.min');
    Merci, c'est vrai que pour le coup je n'ai pas regardé la console, ce que j'aurais dû faire dès le départ. je vais essayer à nouveau dès que j'aurais un peu de temps, car je dois tout remettre en place vu que j'ai tout viré ^^

    J'aurais une petite question pour un projet, est-ce que cakePHP peut-être une bonne solution pour créer un site marchand ?

  5. #85
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 274
    Points
    3 274
    Par défaut
    Si la question est est-ce une bonne solution, je te réponds sans hésiter oui. C'est aussi ça l'avantage de Cake, il est adapté à (quasiment) tous les sites, quelque soit leur taille ou leur nature et les risques de te planter complètement parce que tu l'as choisi sont quasi nulles. A partir du moment où tu as une base de données claire, logique et réfléchie respectant les conventions, ça roulera tout seul y compris pour un site e-commerce.

    Après si tu me demandes est-ce la meilleure solution, là pour le coup je te réponds non, car il existe des CMS/frameworks spécialisés uniquement dans le développement de site e-commerce (pour ne citer qu'eux, magento et prestashop par exemple), ce qui en fait des outils plus évolués, ou tout du moins plus adaptés pour développer ce genre de site.

    Mais si tu n'as pas envie/pas le temps d'apprendre une fois de plus à connaître un outil supplémentaire, ce qui peut tout à fait se comprendre, Cake peut très bien convenir. Pour la partie sécurité, il intègre un composant (SecurityComponent) permettant de gérer tout ce qui est ssl, https etc. Tu devras sans doute développer un composant personnalisée pour le paiement mais autrement, pour le reste ça n'en reste pas moins qu'un site comme tous les autres.
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  6. #86
    Membre habitué
    Avatar de Shinja
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2012
    Messages : 153
    Points : 156
    Points
    156
    Par défaut
    Bon et bien, cela fait un petit moment que je touche un peu à tout, et je pense sincèrement que pour les projets personnels le mieux est d'opter pour un code à la main. Pourquoi ? J'ai essayé dans un premier temps d'adapté un site communautaire avec WordPress avec mes propres plugins. Au début c'était bien parti, mais au final ça devient vite le bordel et le CMS montre vite ses limites. Exemple tout bête, pour créer une simple page avec formulaire pour permettre aux membres de modifier une évaluation, il faut impérativement passer créer une page dans l’administration qui pointe vers une page d'un template, pour ensuite rajouter un filtre afin d'indiquer à WP que cette page peut recevoir des paramètres dans l'URL, sauf qu'à mes yeux cela reste du bricolage de bas étage.

    Dans mes recherches pour modifier le cœur de WP, je n'ai trouvé que deux solutions ;

    1. S'attaquer au code source de WordPress
    2. Passer par des plugins d'autres développeurs


    Le problème de modifier le code source de WP, c'est qu'à la moindre mise à jour, on perd tout. La seconde est encore plus problématique, car elle peut amener des failles de sécurité, ralentir le site, rajouter des bugs, gonfler la base de données etc. Cela fait un bon moment que j'ai décidé de créer mes propres plugins WP, car en cas de problème je sais où aller et je sais comment nettoyer la base de données.

    Bref, en fait j'en conclu que je perd trop de temps à adapter WP à mes besoin tandis qu'en PHP pur, ça coule de source ! Je développe plus vite, le chargement est plus rapide, je crée des fonctions selon mes besoins et ça me va très bien. J'ai essayé quelques framework, mais comme je le disais dans mes précédents messages, je ne vois pas l’intérêt de l'utiliser pour des projets personnels où tu dispose de temps pour développer. D'ailleurs, on dit que c'est un gagne temps, mais je ne suis pas d'accord. On perd plus de temps à se documenter et à chercher des solutions (ce qui est mon cas), alors qu'en php pur, il suffit simplement de reprendre ses fonctions et ses classes.

    Par exemple, si je décide de recommencer un projet ou d'en commencer un autre, j'importe mes classes, je crée mes fichiers de configuration et je commence à bosser. Ainsi, j'ai ma classe database.php qui me permet de bosser sur les tables, une classe html qui me permet de créer des codes html et des formulaire comme cakePHP.

    Donc pour moi le choix est fait, projet perso => php à la main / libraie et projet pro (boutiques en ligne, etc.) CMS / Framework

  7. #87
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    @Shinja
    Je vous invite à donner une chance à des frameworks qui se veulent "différent" comme le mkframework
    Dernier article en date sur developpez, permettait de concevoir son propre twitter en 1h: http://imikado.developpez.com/tutori...microblogging/

    ou même de créer une application avec CRUD, menu et authentification en quelques clics

    Si vous n'avez pas le temps d'installer et de tester, je vous invite à regarder les différents tutoriels vidéos: http://mkframework.com/screencasts.html
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  8. #88
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 42
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par Shinja Voir le message
    Pourquoi ne faut-il pas réinventer la roue ?
    Pour apporter ma réponse à cette question quitte à répéter ce qui a déjà été dit...

    Personnellement je pense qu'il faut au contraire réinventer la roue, du moins dans un premier temps, celui de l'apprentissage. Des projets personnels, des petits scripts et des expérimentations sont des terrains appropriés pour réinventer la roue dans le but de se former et de comprendre.

    Un exemple tout bête : PHP possède pas mal de fonctions qui permettent de trier des tableaux. Pour autant je trouve intéressant de faire des recherches sur les différents algorithmes de trie et d'essayer des les implémenter soi même quitte à réécrire des fonctions déjà existantes dans le langage.

    Développer des petits sites/applications "from scratch" sans utiliser de bibliothèques/frameworks/CMS existants est aussi une étape intéressante toujours dans un but d'apprentissage.

    Maintenant quand tu développes un projet plus sérieux, que ce soit pour toi ou pour un tiers (par exemple un client) tout coder de zéro est une perte de temps, de productivité (et donc d'argent si le projet est commercial). Ce qui fait que certains développeurs font du "from scratch" au lieu d'utiliser des bibliothèques, frameworks ou CMS c'est souvent un problème d'appréhension de l'outil : au lieu de prendre le temps de bien se documenter sur son fonctionnement, de comprendre comment les choses se font (et surtout pourquoi) et de s'y adapter on va faire le contraire. C'est à dire que le développeur va absolument vouloir tout contrôler et imposer sa méthode de développement au framework plutôt que d'essayer de comprendre pourquoi ce dernier impose une méthode différente de la sienne.

    Quand on code tout à la main et qu'on utilise un framework ou un CMS pour la première fois on peut avoir tendance à se sentir brider parce qu'on veut faire d'une façon alors que l'outil peut imposer une manière différente. Maintenant si on prend le temps de se demander pourquoi c'est fait comme ça, en quoi c'est une bonne pratique et qu'est ce qu'on a a y gagner on se rend compte que dans la majorité des cas la technique proposée par le framework est meilleure que quand on hacké du code spaghetti sur nos projets persos.

    Personnellement je trouve qu'intellectuellement, il est aussi beaucoup plus intéressant de travailler sur les problématiques de son site ou de son application et d'y apporter des réponses plutôt que de passer son temps réinventer des outils bas niveaux comme un système de routing pour la gestion des urls ou manipuler des fonctions bas niveaux de GD ou Imagemagick pour retailler des images. Je préfères dire à ma bibliothèque : "vas y retaille moi cette image comme je veux et sauve la dans le bon format" et me concentrer sur des aspects plus intéressants du développement plutôt qu'aller bidouiller avec l'API (pourrave) de GD.

    Et puis il faut être réaliste, en bossant seul ou équipe restreinte on a peu de chance de produire un framework d'aussi bonne qualité qu'un code open source porté par toute une communauté de développeurs expérimentés.

  9. #89
    Membre habitué
    Avatar de Shinja
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2012
    Messages : 153
    Points : 156
    Points
    156
    Par défaut 6 mois après...
    6 mois après avoir lancé ce topic, j'ai fini par adopté les frameworks et plus précisément CakePHP que je trouve tout simplement excellent. C'est un vrai plaisir que de développer avec. Pour me faire la main, j'ai crée mon propre CMS de blog que j'utilise justement pour mon blog. J'en suis très content, car il m'offre plus de souplesse et plus de fonctions que WordPress. C'est beaucoup plus robuste, et niveau performance y a une belle différence. J'ai crée mon propre gestionnaire d'images (un plugin) en PHP/jQuery qui ressemble énormément à celui de WordPress si ce n'est que j'ai plus d'option et que je l'intègre très facilement via un simple bouton ou un lien. J'ai crée mon système de taxonomies, termes, metas et j'utilise très peu de requêtes pour relier toutes les tables contrairement à WordPress et c'est boucle interminable. J'ai essayé de retravailler sur WP, et c'est impossible. J'aime trop le confort du modèle MVC et de tous les outils présents dans CakePHP. Je suis en passe de finir mon blog, disons que je dois peaufiner certaines choses et m'occuper de la partie administration. Je compte passer sur d'autres projets, mais pas sans mon CakePHP. Je devrais prochainement commencer un site de petites annonces et un gestionnaire de films (pour serveur local).

  10. #90
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 274
    Points
    3 274
    Par défaut
    Je te l'avais dit, l'essayer c'est l'adopter
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

Discussions similaires

  1. Pourquoi réinventer la roue quand il y a Runnable ?
    Par Stéphane le calme dans le forum Actualités
    Réponses: 17
    Dernier message: 04/11/2013, 11h49
  2. Ne pas réinventer la roue
    Par cournofr dans le forum Débuter
    Réponses: 2
    Dernier message: 18/01/2010, 15h30
  3. ne pas réinventer la roue, classer un vecteur
    Par antoinelac dans le forum C++Builder
    Réponses: 1
    Dernier message: 31/03/2009, 09h43
  4. Pourquoi je n'ai pas le droit à un bootsplash ?
    Par Michaël dans le forum Administration système
    Réponses: 4
    Dernier message: 30/08/2004, 14h02
  5. [C#] Pourquoi je ne peux pas sauvegarder le fichier Xml ?
    Par gregoun dans le forum Services Web
    Réponses: 5
    Dernier message: 05/05/2004, 10h00

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