Salut,
Je crois tu tu n'as pas bien lu mon POST: pour rappel j'écrivais:
Citation:
Donc finalement de mon point de vue, qu'a-t-on ? Un langage - PHP - qui est passé au monde de l'objet et en a profité pour embrasser les architectures à la mode (MVC, ORM ...) et de l'autre un langage -JAVA - qui bénéficiait déjà de ces composantes et qui s'est ouvert au monde de la productivité et des langages de scripts.
Si ce n'est pas de la convergence... PHP = JAVA
Loin de moi la volonté de polémiquer mais permets moi d'apporter quelques commentaires à tes propos:
Citation:
Pavé dans la mare ? PHP a une caricature de support de l'orientation objet. Pas de typage fort, non plus. Ce n'est pas comparable. PHP != Java.
Alors effectivement PHP ne dispose pas de typage fort.
Mais les langages de script autour de Java (vive Groovy !) n'en n'ont pas non plus ! Et au passage c'est ce qui fait que tu écris une ligne de code dans ses langages, là où tu devras en écrire 5 en Java.
Que préfères tu écrire (et c'est une simple initialisation de List, pas de tableau) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
//groovy, donc Java
def list = [5, 6, 7, 8];
//PHP
$list= array(5, 6, 7,8);
//Java
List list = new ArrayList();
list.add(new Integer(5));
list.add(new Integer(6));
list.add(new Integer(7));
list.add(new Integer(8)); |
Mais effectivement avec Java, c'est très fortement typé.
Citation:
Par ailleurs, je trouve qu'en parlant de tel framework php ou java, on passe à côté d'une chose essentielle. À côté des implémentations particulières, Zend ou Struts, il y a en java des spécifications. Java EE 5, EJB 3, JPA, ... L'avantage ?
Elles ont été décidées en comité, pas juste une implémentation rapide d'une idée, sans cadre formel.
Elles ont justement été implémentées plusieurs fois, elles sont claires et on peut changer facilement
de fournisseur. Sans tout réécrire.
Tout à fait d'accord avec toi. Et il faut bien distinguer les implémentations de pattern de celles relatives à des spécifications.
Je mettrai juste un bémol: les spécifications JAVA sont tellement lentes à être validées que la communauté prend les choses en main et c'est ensuite souvent JAVA qui court après. Je prends pour exemple le couple des annotations et EJB3/JPA. Tellement lentes à être décidé que sont apparus XDoclet, Spring et Hibernate, et aujourd'hui la référence en matière d'ORM ce n'est pas JDO ou JPA mais Hibernate (qui "accepte" JPA, et non l'inverse).
Donc à mon avis les spécifications sont loin d'être le Graal de la conception et du développement.
Citation:
Je ne sais même pas pourquoi on compare Zend à Struts pour
savoir si PHP est aussi professionnel que Java. Lisez simplement ce que le créateur de struts a
à dire à ce sujet (en gros : n'utilisez pas struts).
Je n'ai jamais écrit que l'existence du framework ZEND impliquait que PHP soit professionnel. J'ai écrit que:
Citation:
(...) l'uniformisation des systèmes de pensées a fait que PHP (à la recherche d'une reconnaissance du monde professionnel ?)
a ouvert le brèche de l'objet total, de l'héritage multiple et consors
Ni plus ni moins. Et pour la petite phrase d'un des créateurs de Struts, je crois qu'elle s'applique à la V1 et pas à la V2, mais là encore je suis prêt à te suivre: pourquoi utiliser Struts alors qu'il existe JSF ?
Citation:
Il y a simplement un aspect profession
fondamental qui est inexistant en php, et qui distingue pour moi le bricolage du travail
professionnel : les specs.
Ne soit pas arcbouté sur les specs. Je peux te passer des exemples fondamentaux à la pelle issus du monde de la programmation où les specs ne sont quasiment jamais utilisées. Tiens, par exemple XML: il existe des specs pour le DOM et XSLT et pourtant tous ceux qui accèdent et manipulent des données XML en java vont plutôt utiliser DOM4J ou JDOM. Font ils du bricolage pour autant ? Et les JSP, c'est une spec et pourtant on voit partout des moteurs de template Velocity ou FreeMarker. Fait on du bricolage pour autant ?
Finalement je persiste à écrire que PHP==JAVA ;) au niveau du langage de par la convergence mutuelle qui s'opère (je n'irai pas jusqu'à dire que le résultat actuel du sondage me conforte dans cette réflexion, mais quand même il fait plaisir à voir) Mais bien évidemment chacun conserve ses spécificités - typages, spécs ;) - et c'est tant mieux car cela donne encore le choix aux développeurs et c'est générateur de projets où la créativité et l'innovation sont mises en avant (Doctrine, Prado...).
ERE