C'est justement pour éviter les brêles qu'il faut éviter Java. Le langage en lui-même n'y est pour rien, mais il y a plus de brêles chez les javaïstes que chez les C++istes ou que chez les Rubistes, ou même que chez les Pythonistes, c'est dire !
Version imprimable
@CodeurPlusPlus
Et y a t il plus de mauvais chez les journalistes qui utilisent un stylo à bille ou un stylo à plume ?
Je n'en sais rien.
Mes propos ne visent pas des débutants ni même des passionés du dimanche.
Il s'agit d'un grand nombre de monde tombé par hasard dans le développement "par faute de".
Moi par exemple: nul en réseau et devant des non specialiste je pourrais passer pour un admin. Si tu me demandes de faire autre chose que du Ethernet câblé, on va tout de suite voir mes lacunes. Et je peux passer à travers ce skill check des années.
Pour revenir au langage, Java n'y est pour rien, comme PHP n'y est pour rien. Ils ont l'avantage d'avoir un grand ecosystème et des API, Frameworks à l'infini.
On peut les utiliser en surface sans vraiment connaître le développement logiciel.
Mais trop souvent on présente les théories comme des concepts avancés de Java ou autre. Donc un grand nombre de pro s'accrochent au Java en pensant que "c'est dans l'API".
Que signifie etre une brêle pour vous? Je connais beaucoup de personnes qui utilise Python ou C++ dans un contexte scientifique; ces gens sont tout sauf des brêles, mais ce n'est pas parce qu'elles utilisent ces langages qu'elles sont de bons développeurs. La plupart des programmes que ces gens font ne sont utilisé que par eux et sont un cauchemard à maintenir (et ne sont d'ailleurs que rarement maintenus).
Quand j'étais jeune, je pensais que les vrais programmeurs travaillaient en assembleur ou au pire en C et c'est ce que je faisais... J'ai passé ensuite plusieurs années sur un projet en Visual Basic (3.0, 5.0 puis 6.0) qui a finalement été portée en Java (après 17 ans et pas parce qu'elle n'est plus maintenable, mais parce que le risque de ne plus pouvoir faire fonctionner l'application dans les prochaines version de Windows est devenu bien trop grand). Ce que je sais aujourd'hui, c'est qu'il y a des choix de langages plus ou moins heureux mais ce n'est pas le langage qui fait le programme, c'est le programmeur.
Python va attirer les curieux, des personnes ouverts à d'autres langages, tandis que C++ exige au minimum de maîtriser les pointeurs.
Un programmeur Java peut se contenter de connaître juste le langage Java puisque c'est un langage mainstream. En plus, s'il y a des brêles dans une équipe, il reste toujours les collègues pour rattraper les conneries. Vive l'esprit d'équipe.
Ce qui ne veut pas dire qu'il y aie des gens très doués quelque soit le langage.
Une brêle c'est quelqu'un qui n'a jamais pu comprendre ce qu'est une variable locale ou un appel de fonction, et qui ne sait pas implémenter un algo vu en première année de fac, MAIS qui, éventuellement, peut tout de même être employé (et parfois même bien payé) pour empiler les frameworks et faire une appli usine à gaz qui fera ramer la machine sur laquelle elle s'exécute, de préférence afin d'afficher trois malheureux formulaires derrière lesquels tournent des traitements triviaux.
La culture des programmeurs Java favorisant l'empilement de frameworks, on trouve foultitude de brêles parmi les adorateurs de ce langage, et je maintiens que si on veut éviter de travailler avec les brêles, il vaut mieux donc fuir Java.
Afin de limiter les dégâts qu'entraînera ce que je viens d'écrire :
1- Je répète que le langage Java lui-même n'y est pour rien et j'ajoute que d'excellents développeurs le pratiquent également.
2- Je réponds à une question... donc si la réponse est choquante, hé bien il ne fallait pas poser la question :evil:
EDIT : pour répondre à Mickael Istria :
Non, tout le monde n'a pas été une brêle en développement un jour. Tout le monde a été débutant mais ce n'est pas la même chose.
J'ai constaté ces deux dernières années universitaires que la proportion d'étudiants en informatique qui ont la brêle-attitude dès leur première année atteint un niveau accablant, même parmi les "plutôt bons". La brêle-attitude consiste à, devant n'importe quel problème à résoudre, chercher sur le net un code tout prêt à... empiler dans l'usine à gaz qu'on est en train d'écrire. Ceux-là ne sont pas les superstars de demain. A mon avis ils ne feront même pas de bons programmeurs Java :lol:
Cela peut être un indice, je vous l'accorde. Mais il y a plein de choses à découvrir rien qu'en restant dans le "monde Java" : la manière dont le class loader ou un carbage collector fonctionnent, la structure du java bytecode, etc. On peut s'intéresser à la programmation fonctionnelle et se demander, par exemple, pourquoi une même fonction récursive en Java demande plus de ressource qu'en Scala, etc.
S'agissant des pointeurs, même s'ils sont souvent un obstacle pour les débutants qui n'ont pas fait d'électronique, cela reste quelque chose d'assez simple.
Je suis persuadé que cela existe, mais c'est le cas dans n'importe quelle profession. C'est regrettable, mais ce n'est pas une raison pour stigmatiser, le mot est peut-être fort, les "développeurs Java" qui, finalement, ne sont rien d'autre que des développeurs qui pour une raison ou pour une autre, et pas forcément par choix, développent en Java.
Il n'y a rien de choquant et je vous sais gré d'avoir précisé votre pensée car même si je ne suis pas convaincu qu'il y ait plus de brêles parmi les développeurs Java que dans d'autres populations, je vous rejoins tout à fait.
Je vous rejoins tout à fait également, sur le fait qu'être débutant n'est pas la même chose qu'être une brêle. Quant à la "brêle-attitude" que vous décrivez, elle est effectivement fort regrettable et dommageable pour notre profession.
C'est simple pour qui a la capacité de raisonner à deux niveaux d'abtraction différents. Pour les autres, c'est un brouilard impénétrable, et qui le restera à jamais.
Je suis coboliste, et mon langage, relativement accessible, souffre de la même tare. Enfin, souffrait, depuis 10 ans, on ne recrute plus, et le ménage se fait. Doucement mais surement.
Joel Spolsky explique pourquoi. En gros, un langage difficille fait fuir ceux qui n'ont pas la capacité de sortir de leur statut de brêle(et on trouve des gens brillants et bons en maths dans le tas).
C'est la raison pour laquelle il faut changer la manière de selectionner les gens. un type un peu bon en maths mais qui n'est pas capable de concevoir, seul, sans internet, un fizzbuzz dans le langage de son choix en moins d'une demi-heure(je suis généreux, ça devrait prendre 5 minutes), n'a pas sa place en école d'info. Pourtant, on en trouve des floppées. J'appelle ça des gnous, Jeff Atwood des chêvres, CodeurPlusPlus des brêles, mais c'est la même chose.
C'est quoi la non-brele attitude? Passer plusieurs heures a retrouver une solution qui existe deja?
Je ne sais pas trop dans quel domaine tu bosses, mais dans le domaine du Java, on aime les choses productives. Aller chercher une framework existant ou du code existant pour faire quelque chose est plus productif que de chercher a re-inventer la roue. Le comportement dont tu parles n'est a mon avis pas un indicateur si negatif.
Rappelons-nous les 3 qualites d'un developpeur selon Larry Page: Laziness Impatience Hubris (Faineantise, impatience, orgueil). Aller chercher du code deja existant correspond a au moins 2 de ces criteres.
Il ne faut pas réinventer la roue, tout le monde, je pense, est d'accord sur ce point. Les problèmes arrivent lorsque des personnes qui n'ont pas la moindre idée de ce qu'est une roue, en utilisent une pour en faire cerf-volant et après, dans le meilleur des cas, se demandent pourquoi c'est lourd et ça ne vole pas, ou, dans le pire des cas, s'en prennent au pauvre fabriquant de la roue et vont crier sur tous les toits à quel point il est incompétent!
Je pense que ce n'est l'apanage des développeurs Java, la même chose était dite à une époque au sujet des développeurs .Net.
Je comprends le point de vue de CPP quand on voit débarquer des personnes ne connaissant que peu de choses au dév (contrairement à ce que prétend parfois leur CV), voire ignorent le B.A.BA. C'est agaçant.
Ceci dit, les brêles ne sont pas la norme, heureusement. Je pense que s'il lui semble qu'il y a plus d'incompétents sur Java, c'est aussi que Java regroupe le gros des bataillons de développeurs actuellement. L'intérêt des entreprises pour Java oriente forcément beaucoup de personnes vers cette plateforme et donc aussi des "brêles". On trouve peut-être moins d'incompétents sur des environnements moins répandus peut-être parce que ceux qui les pratiquent le font plus par intérêt pour la chose et y mettent les moyens.
@+
Pour paraphraser Ptah35, copier-coller, ça ne suffit pas. Un bon copieur-colleur comprendra les tenants et les aboutissants de ce qu'il copie. Et surtout, si il ne trouve pas, il saura se retrousser les manches et pallier à l'absence d'éléments présents.
D'ailleurs, la réutilisation aveugle de code a quelques ennemis...
Les paroles de Larry Page ne sont pas forcément d'évangile...Citation:
C'est quoi la non-brele attitude? Passer plusieurs heures a retrouver une solution qui existe deja?
Je ne sais pas trop dans quel domaine tu bosses, mais dans le domaine du Java, on aime les choses productives. Aller chercher une framework existant ou du code existant pour faire quelque chose est plus productif que de chercher a re-inventer la roue. Le comportement dont tu parles n'est a mon avis pas un indicateur si negatif.
Rappelons-nous les 3 qualites d'un developpeur selon Larry Page: Laziness Impatience Hubris (Faineantise, impatience, orgueil). Aller chercher du code deja existant correspond a au moins 2 de ces criteres.
Réutiliser du code oui, jouer le photocopieur non.
Dans les autres domaines, on aime aussi les choses productives. 8O
Si un développeur passe plus de temps à chercher sur le Net des solutions, à quoi sert-il réellement ? autant payer un robot ...
A titre personnel, il m'est arrivé de corriger du code Java sans en être spécialiste, le bug était tellement con que si j'avais rencontré l'auteur, il aurait eu droit à une bonne bâche. Le développeur (pas l'auteur) chargé de corriger ne trouvait pas l'erreur, heureusement qu'il était développeur. J'ose espérer que c'est pas la norme mais deux guignols sur un même programme ça fait quand même une grosse coïncidence.
Qué résonnement débile quand même.
Donc Windows est pourri parce que ma grand-mère l'"utilise".
Linux c'est méga bien parce qu'il y a que des geeks qui l'utlilisent.
Pire encore Windows va mourrir parce que des "brêles" l'utilisent, pour moi c'est justement ce qu'il fait qu'il ne va pas mourir.
Ps : Vu qu'on a installé Linux à la police française et qu'il y a surement des gens peu doué en informatique à la police française, Linux c'est devenu tout pourri parce que maintenant il y a aussi des brêles sur Linux...
Des "brèles", il y en aura toujours partout quelque soit le language du moment. Car il y aura toujours des amateurs qui feront des mini-programmes, des gens parachutés sans formation dans un nouveau langage qu'ils ne connaissent pas.
Et surtout n'oublier pas qu'on est toujours le con de quelqu'un d'autre et je trouve ton ton est assez condescendant.
Ouééé mettons les loosers au chômage, ça sera bien fait pour eux, tralalilalèreu !!!
Vu que le java représente 90% de l'embauche en France, la prochaine charrette va être chargée...
Sinon pour rappel, si en France on fait autant de java c'est pour une bête histoire de manque d'investissements, notre industrie informatique nationale n'a pas les moyens de s'offrir des beaux logiciels codés en c++
Si on avait le choix on ferait tout en c++ comme dans les boîtes américaines pétées de pognon, mais on a pas les capitaux qui vont avec.
+1024Citation:
Pire encore Windows va mourrir parce que des "brêles" l'utilisent, pour moi c'est justement ce qu'il fait qu'il ne va pas mourir.
:mouarf:Citation:
Ps : Vu qu'on a installé Linux à la police française et qu'il y a surement des gens peu doué en informatique à la police française, Linux c'est devenu tout pourri parce que maintenant il y a aussi des brêles sur Linux...
Est-ce que tu peux justifier et citer des sources, parce que:
1. Je ne pense pas que la proportion de dev C++ en France soit si differente de celle des Etats-Unis
2. Le choix de Java n'est pas fait "parce qu'on n'a pas assez d'argent pour faire du C++". Au contraire, si Java a pris et tient encore, c'est clairement puisqu'il pallie a des failblesses de C++. La vraie raison qui a pousse a utiliser Java plutot que C++ est "en fait, c'est plus simple et moins cher de faire la meme chose en Java".
Bien sur, je parle des middleware, clients lourds et compagnie, ou il n'y a pas vraiment de contrainte technique (notamment sur la consommation memoire) et ou on a vraiment le choix du langage.