Depuis quelque temps je suis des conversations, des conférences, je lis des papiers (ou des billets ou des articles, appelez ça comme vous voulez) dans lesquels il est fait mention d’un certain nombre de gros-mots, en tout cas pour moi qui ai un mal de chien à définir réellement ce qu’ils désignent. D’ailleurs j’ai dans l’idée que certains ne savent pas trop non plus ce qu’ils recouvrent.
Commençons par le premier, dev-front. J’imagine qu’il doit s’agir d’un développeur (pour dev) et qu’il s’occupe de la partie visible d’un site web (le front). Soit, il doit donc maitriser HTML, CSS, probablement pas mal de Javascript pour dynamiser un peu l’ensemble et puis c’est à peu près tout. J’ai entendu aussi qu’il pouvait être amené à s’occuper de performance ce que j’ai aussitôt traduit par optimiser la bande passante en réduisant le poids des fichiers chargés (images compressées, CSS minifiées, …). Mais dites-moi, qu’est-ce qu’un intégrateur fait de différent à part qu’il est capable de récupérer un découpage fourni par un designer pour en faire du HTML/CSS/Js ? Spa un peu pareil ?
Ensuite un second, back-end. Celui-là j’avoue avoir un peu de mal. S’agit-il de cette partie cachée que j’imagine être la partie d’administration d’un CMS, par exemple. Mais alors quelle différence avec le back-office ? Back-office me parle un peu plus lorsque je le traduis car il fait référence à une action à l’arrière (côté non visible pour le public) de la part de l’utilisateur. J’imagine que le formulaire dans lequel je suis en train de rédiger ce billet fait partie du back-office de mon installation Dotclear que j’utilise. Spa un peu pareil alors ?
Qui peut m’expliquer les subtiles ou complètes différences entre ces termes ?
1 De biou -
Le dev front développe ce qui s’exécute dans ton navigateur. Le back-end c’est ce qui s’exécute sur le serveur. C’est pas ça ? Le dev front c’est un intégrateur, mais on rajoute une couche de vernis marketing pour qu’il puisse gagner plus à la fin du mois. Il doit aussi se taper un peu plus de javascript que la moyenne des intégrateurs je pense.
Si j’ai bien compris aussi la ségrégation entre front-end et back-end vient de problèmes de cultures ou de guerres de clochers. Dans les grosses boîtes avec des sites ou des intranets sur la grosse stack java ee (avec du spring, ejb, struts et autres joyeusetés) les développeurs java ne veulent pas s’abaisser à faire du html et essayent d’encapsuler et d’abstraire au maximum ce html. Ce qui génère du code html pourri, pas accessible, difficilement débuggable et maintenable. Tant que c’était uniquement du html, ça allait, mais avec la montée en puissance du javascript, le dev-front est de plus en plus légitime, mais il doit essayer de collaborer avec le développeur back-end.
Ah et j’oubliais, tant que je suis dans les clichés, le développeur java déteste le javascript, ce sous-langage jouet qui n’a de java que le nom et qui ne s’exécute pas pareil dans tous les navigateurs, là où c’est bien connu il n’y a pas de problème de compatibilité entre les différentes jvm de java.
2 De lynxxe -
J’aime le sentiment d’étrangeté que j’ai eu à lire ce billet et le commentaire de biou : penser qu’il existe un vaste monde inconnu de moi avec plein de codes, de langages, de techniques (et d’humains) que tout ça fait marcher les bidules informatiques.
Chapeau à vous, les connaisseurs du monde invisible de nos machines.
Une grosse stack java ee avec du spring… me voilà partie dans quasi de la SF et ça me plait (non non pas d’explications, merci, ça ne servirait à rien). J’imagine, c’est mieux. ;-)
3 De Franck -
Merci biou pour ces explications très claires pour moi et très SF pour lynxxe ! T’as du talent tu sais, t’ecris quand le 2e tome de cette saga ?