13-11-2010, 03:56 AM
(11-11-2010, 06:52 PM)niahoo a écrit : sephi on peut diviser le topic steuhplé? le débat est interessant je trouve.
Attention, il ne faut pas mélanger les concepts !
en php je trouve la POO assez chiante et je commence à m'en défaire, notament avec php 5.3 ou on peut avoir une approche plus "programmation fonctionelle" que j'apprécie beaucoup.
Pourtant, j'utilise pas mal les classes comme, cela à été écrit plus haut, des "boites à fonctions" et c'est très pratique. la classe est une structure de langage et je m'en sers comme des 'struct' en C (des classes sans méthodes quoi), des et lib de fonctions statiques. C'est très pratique.
ça permet d'avoir un appli totalement structurée, et pourtant c'est du procédural.
Procédural ne rime pas avec "je fais un script de 12000 lignes que j'appelle avec un include et tant pis si j'ai 5 variables avec le même nom lors du déroulement de mon appli. Tu peux très bien avoir un fichier par fonctionnalité et isoler les variables dans des fonctions.
En plus, le procédural ça va plus vite.
Ensuite, faire du procédural en Java c'est un peu se tirer une balle dans le pied, mais en php, qui est multi paradigme, c'est tout à fait viable.
Abuser des structures et des tableaux permet d'avoir des variable bien rangées, les tableaux étant vraiment pratiques en php car ils sont ordonnés, même avec des clés textuelles.
Je bosse pas mal sur prestashop en ce moment et c'est bien relou d'avoir des fonctions de traitement de base dupliquées dans 50 classes parce que php ne gère pas l'import de fonctionnalités dans les classes comme on peut le trouver en python, ruby ou scala.
Citation :Par exemple pour faire une page en procédural ya qu'à balancer du XHTML (directement dans le code, en echo, en include, en fonction... peu importe c'est très rapide à faire).
hmmm, y a aussi le fait que php est un langage très populaire avec 50 gars qui postent sur le blog des scripts à chier avec 5 lignes de php, 5 lignes de html, 5 lignes de javascript, 5 lignes de html, 5 lignes de php, 5 lignes de html, etc..
Le procédural n'est pas forcément synonyme de bordel total, c'est simplement qu'on n'y trouve pas la logique objet qui veut que chaque structure de données embarque avec elle les fontionnalités qu'on pourrait lui appliquer (transformation, CRUD en base de données, calculs divers), qui veut que ta classe Ferrari, si elle hérite de la classe voiture, ne pourra plus hériter de la classe objet_de_luxe, ceci te forçant à créer des décorateurs encore et encore.
Mais le procédural ne t'empêche pas d'avoir des structures de données viables (tableaux, classes sous forme de struct) et d'avoir une structure MVC propre si tel est ton choix.
De plus, on voit pas mal de mecs proposer des applis en pseudo POO avec maximum 3 classes. Mais il ne font qu'encapsuler des traitements dans une classe comme je le fais en procédural pour que le code soit plus solide.
Se servir des classes en php et du mot clé $this ne signifie pas faire de la POO.
+1, si ce n'est "on ne trouve pas la logique objet", qui malgrés le fait d'etre en procedural, n'empeche pas de prendre que certains bons coté de la POO, c'est a dire certains concepts (polymorphisme notament), sans avoir a ce taper toutes la structure et la syntaxe très lourde de la POO...
Dévotion, jeu multijoueur gratuit par navigateur de stratégie et de conquête
The Magic Institute, le jeu de magie médieval fantastique gratuit en ligne
Rapture Studio : créateur de divertissement pour tous
JePolitique.fr - débattons ensemble
JécrisLaConstitution.fr - ne laissons pas les Hommes aux pouvoirs écrire les règles du pouvoir
Je Deviens Citoyen (Association à but non lucratif)
The Magic Institute, le jeu de magie médieval fantastique gratuit en ligne
Rapture Studio : créateur de divertissement pour tous
JePolitique.fr - débattons ensemble
JécrisLaConstitution.fr - ne laissons pas les Hommes aux pouvoirs écrire les règles du pouvoir
Je Deviens Citoyen (Association à but non lucratif)