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 :

PHP, MVC et les librairies existantes


Sujet :

Langage PHP

Vue hybride

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

    Informations forums :
    Inscription : Août 2007
    Messages : 26
    Par défaut PHP, MVC et les librairies existantes
    Bonjour,

    Depuis plusieurs années je développe en PHP avec la méthode MVC. J'en suis rendu à utiliser un pseudo-framework perso. J'utilise en fait une méthode en 4 couches expliquée sur ce site avec la vue, le controleur, le modèle logique et le modèle physique.

    Les applicatifs sont destinés à un usage strictement réservé à l'entreprise où je suis, je m'appuie donc très fortement sur l'architecture existante ce qui m'empêche de basculer certains applicatifs dans le grand public. Par exemple, l'authentification sur Active Directory et rien de prévu pour autre chose. Autre exemple, applis 100% MySQL, rien de prévu pour les autres bdd.

    Aujourd'hui, je voulais redévelopper certaines parties trop "propriétaires" et pourquoi pas utiliser un framework. Malheureusement, après en avoir testé plusieurs, aucun ne me convient réellement.

    Je me suis donc tourné vers une autre solution... utiliser plusieurs librairies existantes. Ca me permettrait en plus de migrer lentement mon applicatif alors que l'emploi d'un framework serait vraiment plus brutal.

    Je connais Smarty depuis toujours que j'utilise pour gérer mes vues. Je pense aussi maintenant utiliser Dojo pour les effets sympathiques et les parties Ajax qu'il propose.

    J'ai vu qu'il existait Doctrine pour la partie Modèle physique.

    Pour le contrôleur et le modèle logique, ma foi, je pense rester avec ma bonne vieille méthode.

    Existe-t-il un "snapshot" des librairies existantes et de la couche où elles s'appliquent ?

    Je suis également preneur de toutes vos expériences avec ce genre de librairies.

    Merci d'avance

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Je suis un peu dans le même cas que toi , utilisation d'un framework maison agrémenté de quelques librairies, en grande partie car les performance pure (je parle pas en temps de développement) des framework existants ne me conviennent pas.

    Au niveau des vues j'utilisais aussi le vieillissant smarty , jusqu''à tomber sur twig.
    Niveau performance c'est le jour et la nuit et la synthaxe me plait plus que celle de smarty (dérivée de django). Il faudrait le comparer à smarty3 pour voir ce que cela donne.

    Pour les modèles ,y'a un truc que j'ai pas du saisir avec les orm parce que je trouve ça effroyable niveau performance comparé à des faits à la mano pour des taches précises. Donc je n'en utilise pas.

    Pour répondre à ta question il n'existe pas de "snapshot" de librairie en fonction de leur utilité , je pense qu'il faut farfouiller et tester pas mal.
    Pourquoi ne pas extraire certains éléments des grand framework, ca peut être une idée intéressante.
    Sur http://components.symfony-project.org/ tu trouvera également quelques composants de symphony (mail , template ...) que l'on peut utiliser simplement
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 26
    Par défaut
    Merci pour ce retour

    En effet, j'ai rencontré les mêmes difficultés que toi au niveau des orm... Je ne dois pas savoir les utiliser correctement mais que ce soit jdao, doctrine ou active record, je suis bien plus satisfait de mon modèle perso, la compatibilité avec d'autres db que mysql en moins.

  4. #4
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    927
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 927
    Par défaut
    Bonjour,

    Autre exemple, applis 100% MySQL, rien de prévu pour les autres bdd
    J'utilise le paquet PEAR DB_DataObject pour accéder à la base de données (implémente le design pattern Data Access Object).

    Il est très simple à utiliser et est vraiment pratique. Il suffit de créer un petit fichier de configuration (pour définir la base de données etc.) et d'exécuter une petite commande PHP pour générer les classes.

    Ensuite il ne reste plus qu'à les utiliser pour accéder à la base de données.

    Exemple de select * from person where id = 12 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $person = new DataObjects_Person;
    $person->get(12);
    print_r($person);

Discussions similaires

  1. Utilisation de Open SSL avec les librairies PHP
    Par onlajoy dans le forum Langage
    Réponses: 0
    Dernier message: 11/05/2010, 09h15
  2. mysql_pconnect : php ne réutilise pas les connexions existantes
    Par Thordax dans le forum Administration
    Réponses: 2
    Dernier message: 04/03/2010, 16h27
  3. [PHP-JS] le C de MVC - gérer les URLs demandées
    Par sir_gcc dans le forum Langage
    Réponses: 3
    Dernier message: 22/11/2006, 19h32
  4. Problème avec les librairies ZLIB et LIBPNG
    Par VenusX117 dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 14/03/2005, 14h49
  5. voir les sequences existantes ?
    Par soniaSQL dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 25/06/2003, 16h33

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