2010-07-06 16 views
3

Quelqu'un a-t-il déjà eu l'expérience d'équipes qui font de la programmation en binôme dans un environnement d'EDI mixte? Je suis un utilisateur IntelliJ depuis longtemps, d'autres utilisent Eclipse, dont vous avez peut-être entendu parler. Dans ma tête, la programmation par paires implique beaucoup de passer le clavier entre les programmeurs. Mais chaque fois que je reçois le clavier, je m'arrête car je ne sais plus rien faire. (C'est comme si soudainement je suis un idiot!)Programmation en binôme, environnements mixtes IDE?

Maintenant, je pourrais, probablement devrais, apprendre mon chemin autour d'Eclipse. (Ne pas commencer une guerre sainte ici sur les mérites relatifs.) Mais je me demande si quelqu'un d'autre a une opinion?

+0

Je n'ai jamais essayé la programmation par paire, mais cela semble déjà être une mauvaise idée. Mélanger différents IDE lorsque les gens partagent des postes de travail (si c'est vraiment ce dont il s'agit) semble ne faire qu'empirer les choses ... – FrustratedWithFormsDesigner

+0

Vous pourriez probablement apprendre votre chemin autour d'Eclipse et de tous les autres outils que le reste de l'équipe utilise. Pouvez-vous imaginer ce que ce serait si vous insistiez sur un outil VCS, alors que tout le monde en utilisait un autre? Idem pour les IDE. –

+1

@Neil - en désaccord cette fois. Pour un VCS, vous venez d'apprendre quelques nouvelles commandes, ou l'interface est intégrée dans l'IDE de toute façon. Mais l'IDE est votre outil principal, vous connaissez les raccourcis, les menus, les refactorings, les forces et les faiblesses par cœur. En tant qu'utilisateur enthousiaste d'éclipse, j'ai eu un collègue qui travaillait avec 'vi' depuis des lustres. la programmation en binôme avec elle sur sa machine aurait été un cauchemar (pour nous deux;)) –

Répondre

2

Je ne l'ai pas fait dans un environnement multi-IDE. Mais l'appariement est, de mon point de vue, de loin la meilleure façon d'apprendre les fonctionnalités d'IDE. Vous devriez donc vous mettre au travail rapidement sur Eclipse, et vos collègues devraient également se familiariser rapidement avec IntelliJ. Vous serez tous les deux plus familiers avec les deux environnements - et c'est une bonne position à partir de laquelle vous pouvez vous installer dans une équipe IDE, si vous choisissez de le faire.

En comparaison avec d'autres moyens d'apprentissage, l'appariement vous apprend les fonctionnalités qui vous sont utiles (ou votre paire, qui a probablement un ensemble similaire de besoins). Vous apprenez presque par osmose; comme votre paire utilise une fonctionnalité que vous pourriez vous demander, "comment avez-vous fait cela?" ou "qu'est-ce que vous venez de faire?" Cela vous enseigne les fonctionnalités dont vous avez besoin, exactement quand vous en avez besoin.

Dans votre situation, il peut y avoir une valeur supplémentaire: vous pouvez vous trouver en attente d'une fonctionnalité offerte par votre IDE; votre paire ne l'a peut-être jamais rencontrée (mais elle pourrait aussi être dans Eclipse). Vous passez donc une minute à rechercher cette fonctionnalité, et maintenant vous avez tous les deux appris de nouvelles fonctionnalités (utiles) de l'EDI.

1

Dans la programmation par paire, la paire devrait standardiser sur un IDE. Ma suggestion serait de jumeler avec un autre utilisateur IntelliJ ou, si le reste du groupe est sur Eclipse, commencer à apprendre Eclipse.

Vous allez perdre trop de temps à basculer entre les IDE pour gagner en efficacité dans la programmation des paires.

3

Je ne vois pas la nécessité de passer le clavier. À mon avis, vous travaillez sur une partie tandis que l'autre moitié de votre paire regarde par-dessus votre épaule. Parfois j'imagine que tu devrais prendre le volant, mais généralement pas toutes les 10 minutes. S'il tape pendant 4 heures, alors vous changez de place, il suffit de changer d'IDE à ce moment-là. Je suis d'accord que vous devriez apprendre les outils qui sont utilisés, et s'il y a un standard publié ou documenté, vous devriez le suivre, mais si vous êtes autorisé à utiliser n'importe quel IDE que vous voulez, alors je ne vois pas de problème . Mais si cela empêche votre capacité de livrer, alors peut-être vous jumelez avec quelqu'un en utilisant le même IDE que vous.

+0

Je n'ai jamais travaillé avec cette technique, donc je suis curieux de savoir ce qui est censé être gagné en regardant un développeur l'épaule de l'autre pendant 4 heures? – FrustratedWithFormsDesigner

+0

@FrustratedWithFormsDesigner: Je n'essaie pas de vendre de la programmation en binôme, donc je ne suis peut-être pas la meilleure personne à expliquer, mais je vais essayer: Si je suis en train de coder moi-même, résoudre un problème qui a) a déjà été résolu dans une bibliothèque ou b) secondaire à la question réelle ou c) ne fait pas partie de l'exigence ou d) intéressant, mais pas important. Travailler ensemble, avec une personne regardant par-dessus votre épaule, permet au codeur de rester sur la bonne voie et de ne pas perdre de vue ce qui est important. Il fait aussi 2 personnes qui connaissent cette section de code (génial quand des bugs apparaissent). – MJB

+0

"S'il tape pendant 4 heures, alors vous changez de place" pour moi ce n'est plus vraiment la programmation en binôme ... la dynamique est complètement supprimée du processus de cette façon. Sans oublier, une session de programmation de 4 heures est à peu près le maximum qu'une paire peut prendre par jour (sauf si l'autre gars fait une sieste pendant que vous tapez ;-) –

0

Vous pouvez charger les deux IDE sur la machine d'appariement et les passer au besoin, mais je vous recommande de standardiser les IDE avec votre partenaire d'appairage. Vous pourriez vouloir apporter cette question dans votre prochaine rétrospective et voir ce que le consensus de l'équipe est.

2

Standardisez votre environnement! Autant que vous avez besoin d'un style de source commun, je dirais que vous avez également besoin d'un moyen de travail commun, y compris avoir un IDE commun. Toutes sortes de paramètres, de connaissances, de plugins, etc. sont beaucoup plus faciles à partager, y compris votre exemple de programmation par paire.

+0

+1 pour mentionner le style de codage commun. –

+0

le style de code peut être imposé/implémenté dans les deux IDE et dans la construction d'intégration continue. –