JeuWeb - Crée ton jeu par navigateur
[Framework] Avantages et inconvénients ? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Framework] Avantages et inconvénients ? (/showthread.php?tid=2900)

Pages : 1 2 3 4 5 6 7 8


[Framework] Avantages et inconvénients ? - Sephi-Chan - 16-08-2008

Voilà, la question mérite d'être posée. Il y a déjà eu des sujets sur la question mais il me semble judicieux d'en ouvrir un nouveau.

chobedo a écrit :Je trouve qu'un Framework n'entrainent plus de problème que de solutions :
- Nécessite l'apprentissage d'une nouvelle façon de programmer
- Peut parfois limiter ou compliquer certaines possibilités de PHP
- Peut entrainer une perte de performance (temps de chargement de la page)

Mais peut-être que je changerais d'avis un jour si on me démontre mon erreur (pas sur ce topic par contre).


Sephi-Chan


RE: [Framework] Avantages et inconvénients ? - arcanis - 16-08-2008

Salut,
Je me permet de répondre car j'ai moi-même décidé d'utiliser un framework pour mon jeu, et je peut donc répondre à Chodebo.
Dans mon cas, le jeu était presque entièrement codé. J'ai commencé à écrire avec de nombreuses réticences: réécrire un code n'est pas franchement super folichon :ninga:

Pour le premier point, l'apprentissage d'une nouvelle façon de programmer, je suis d'accord. Effectivement, il faut se mettre dans le ton, mais je trouve que cette étape est très rapidement atteinte. En effet, un framework fonctionne avec les classes. Une classe = une page, et une méthode = une fonction de la page. Très rapidement on comprends la logique de la Bête, et la vitesse de programmation en est accéléré. L'utilisation de l'héritage apporte la simplicité de créer les classes.

Pour le deuxième point, ce n'est pas entièrement faux, mais pas entièrement vrai non plus. En effet, avec PHP5, on peut créer des méthodes protégées. Ainsi, il est possible d'inclure des fonctions sans problèmes. Je ne vois pas de problèmes majeurs avec les frameworks. Si tu as un exemple, je veut bien, mais je n'y ais encore jamais été confronté.

Enfin, pour le troisième argument, je vais prendre un exemple. Mon framework que j'ai créé avec mes petites mains musclées intègre le moteur de template Smarty. Au final je tombe sur un truc très sympatoche: une variable indique si smarty doit ou non être chargé. En effet, pour les appels Ajax, il n'y a absolument aucun intéret à initialiser Smarty. Or les appels ajax deviennent nombreux, de nos jours. ^^

Pour finir, je rajoute juste un argument: la lisibilité. Les frameworks apportent une réelle lisibilité, décuplée si l'on utilise également la syntaxe recommandée PEAR. Débugguer devient alors un réel plaisir.

Pour re-finir, je conseille cependant de coder son propre framework. C'est très facile, fait en deux/trois fichiers, et on est certain de savoir comment il fonctionne (toujours l'histoire de l'intérieur du capot).

Donc les frameworks, amha, c'est bien :good:


RE: [Framework] Avantages et inconvénients ? - Sephi-Chan - 16-08-2008

Le problème d'un framework maison, c'est qu'il ne fait rien : il n'y a presque des défauts.

Je suis en train d'expérimenter CakePHP, et je trouve ça assez énorme. Je vais me contenter de te donner l'adresse de quelques pages de la documentation, et tu vas me dire s'il n'y a pas gain de temps immense par rapport à du codage manuel.

Ce n'est qu'un extrait, les premières choses que j'ai découvertes. Mais c'est absolument énorme. Et ça, c'est essentiellement dû à des conventions de nommage qui permettent au Framework d'automatiser énormément de choses.


Sephi-Chan


RE: [Framework] Avantages et inconvénients ? - Anthor - 16-08-2008

Hmm, j'ai développé le mien avec les années, juste pour me simplifier la tache. Smile


RE: [Framework] Avantages et inconvénients ? - arcanis - 16-08-2008

Impossible de lire ... merci IE6 =_='
Pourquoi est-ce qu'il n'y a que des défauts dans un framework maison ? Couplé à une classe simple de gestion des requêtes, on arrive à avoir un code clair et relativement performant: tous les fichiers ne sont pas chargés, seuls ceux qui seront utiles plus tard le sont.
En quoi les frameworks pro sont-ils mieux (excepté dans le nombre de fonctionnalités offertes, forcément) ?


RE: [Framework] Avantages et inconvénients ? - Sephi-Chan - 16-08-2008

arcanis a écrit :Impossible de lire ... merci IE6 =_='
Pourquoi est-ce qu'il n'y a que des défauts dans un framework maison ? Couplé à une classe simple de gestion des requêtes, on arrive à avoir un code clair et relativement performant: tous les fichiers ne sont pas chargés, seuls ceux qui seront utiles plus tard le sont.
En quoi les frameworks pro sont-ils mieux (excepté dans le nombre de fonctionnalités offertes, forcément) ?
Précisémment parce qu'il n'offre pas ce qu'offre un vrai Framework. Pour t'en rendre compte, survoler simplement les documents que j'ai lié suffirait à te montrer qu'il y a un gouffre entre les deux (Framework maison et Framework éprouvé), et que le Framework maison ne te fais pas vraiment gagner de temps.


Sephi-Chan


RE: [Framework] Avantages et inconvénients ? - chobedo - 16-08-2008

Pour moi un objet représente un objet réel dans le jeu ou sur le site : un joueur, un bâtiment, une technologie, un lieu, une arme, une news, un message sur un forum, etc ...

Alors que le modèle MVC, qu'utilise la plupart des framework, définit un objet comme une page, je ne suis pas d'accord avec cette définition. Pour moi une page est une page, un objet est fait pour représenter une entité virtuelle, point.


RE: [Framework] Avantages et inconvénients ? - Zamentur - 16-08-2008

Je préfère créer mes propres outils.
Peut être changerais-je d'avis un jour, mais pour le moment je préfère qu'il n'y ai rien d'extérieur.


RE: [Framework] Avantages et inconvénients ? - Mysterarts - 16-08-2008

Je suis en train de me faire la doc de cakePhp linké par Sephi.
C'est très interessant, mais pour l'instant, j'ai du mal à m'y mettre car je perd encore bcp de temps !
Mais je sais bien (j'en est conscience), qu'une fois digéré, j'y gagnerai... Faut être fort en attendant :p

Mysterarts


RE: [Framework] Avantages et inconvénients ? - pascal - 16-08-2008

pour moi c'est symfony, je l'explique ici : ma prise en main de symfony

A+

Pascal