21

たとえば、C#.NET の経験が限られている経験豊富なコーダーを、経験豊富な C#.NET コーダーとペアにして、前者を C#.NET に慣れさせるという副次的な目的で成功させることができるでしょうか?

4

16 に答える 16

28

絶対。知識を共有することは、ペアプログラミングのポイントの 1 つです (1 人が少しの間タイプし、もう 1 人がそれをレビューするという有用なダイナミクスと共に)。

私の経験では、これは最も効果的な方法の 1 つであり、経験の浅いコーダーでも有益な貢献をすることができます (専門家が行っていることを確認し、賢明なコメントや介入を行うには、仕事全体を行うよりも経験が少なくて済みます)。 .

于 2009-04-24T11:01:44.073 に答える
7

それは、それらの間の個人的な相性に依存します。経験豊富なプログラマーが喜んで知識を共有し、経験の浅いプログラマーがコードを書いたり議論したりして開発に参加できるようになれば、それは非常に効率的な学習方法であると言えます。

于 2009-04-24T11:02:27.100 に答える
5

はい、良いペア プログラミングは常に双方向であることがわかります。それは本質的に、IT イノベーションを装ったソーシャル エンジニアリングの一部です。

于 2009-04-24T11:02:13.653 に答える
4

はい、これでうまくいきます。1) 経験の浅いプログラマーが C# の学習に受容的であり、2) 他のプログラマーが C# を教えることをいとわない場合。

于 2009-04-24T11:02:40.750 に答える
3

スキルのミスマッチが大きい場合、教師と生徒の関係が強まります。これは悪いことではありませんが、熟練した人の時間を無駄にする可能性があります。

しかし、それが非現実的で無駄だとしても、ごくたまにペアセッションを行うことは非常に便利です! 生徒が圧倒されたりぎこちなくても、トップレベルの人々がどのように働き、どのように考えているかを見ることは、「生徒」にとって役立つ場合があります。質の高い仕事の問題/スキル/方法のアイデアを彼らに与えるのに役立ちます。高校生が研究所を訪れたと考えてください。プロの科学者が高校生に教えるのはもったいないですが、1 時間の訪問で生徒は集中し、究極の目標を垣間見ることができます...

Emacs をエディターとして選んだ理由を覚えています。私はたまたまエキスパート ユーザーの近くに座っていたのですが、彼の肩越しに文字通り無礼にじっと見つめていると、彼がコードを再配置して超高速でナビゲートするのを見ていました。私は1分もかからずに見ただけで、彼と話したことはありません.. 彼は私が見ていることに気づいていなかったかもしれません! しかし、私は打ちのめされ、Emacs を学ぶことにしました。10 年経った今でも、その専門家ほどのスキルは持っていませんが、可能性を垣間見ることができたので、編集者を変更したことを後悔していません。

于 2009-04-24T12:24:52.627 に答える
2

個人的には、うまくいくと思いますし、ペアプログラミングの目標の 1 つでもありますが、うまくいくかどうかは 2 人のプログラマー次第です。プログラマー 1 (C# を学んでいる人) が真にスピードを習得するために余分な時間を費やしていて、プログラマー 2 (もう 1 人) が忍耐力と教える意欲を持っている場合、それは両方にとって良いはずです。

于 2009-04-24T11:03:25.910 に答える
1

あなたは確かにこれを行うことができます - 私たちは過去にそれを行いました. ただし、「コード品質」の利点とトレーニングの利点をトレードオフすることを受け入れる必要があります。残念ながら、無料のトレーニングライドはありません。

于 2009-04-24T11:02:28.440 に答える
1

チームの強さは、その最も弱い部分と同じくらい良いということわざがあります。最も強いものと最も弱いものを組み合わせることは、伝統的に最良の戦略でした. 最強が無関心になる心配があるなら、最強の代わりに本当に最強になりそうな人を。

于 2012-01-10T11:15:56.933 に答える
1

それはある程度機能します。通常、それは一方が他方をリードします...その意味で、ペアプログラミングはあまりありません。

それは、経験豊富なコーダーの教えるスキルと、他のコーダーの迅速な学習スキルに大きく依存します。

于 2009-04-24T11:03:10.030 に答える
1

はい。ただし、優れた人は忍耐強く、喜んで教え、悪い人は進んで学ぶ場合に限ります。私は私ほど上手ではない人々とペアプログラミングをしましたが、それは退屈でしたが、彼らはそこから学んだと思います. 私は自分より優れた人々とペアプログラミングを行い、そこから確かに学びました。本当に人によります。

于 2009-04-24T12:16:02.757 に答える
1

次の注意事項があれば効果的です。パートナーを切り替える必要があります

私は実際にこのような状況に陥ったことがあり、ギャップが大きい場合、ペアの両方のメンバーにとって非常に負担になる可能性があります. 許容範囲とギャップの大きさによって時間は異なりますが、数時間後にパートナーを切り替えるのが最善です。そのオプションが利用できない場合は、いくつかのソロ プログラミングをミックスします。

于 2009-04-26T15:00:45.903 に答える
0

それはすべて開発者の個性に依存し、厳格な規則はありません。

確かなことの 1 つは、経験の浅い開発者と一緒に作業する場合、経験豊富な開発者の生産性が低下することです。個人的には、ペアプログラミングは能力の一致が必要だと思います。しかし、これは経験の浅い開発者を最新の状態にするための非常に良い方法です。

于 2009-04-24T11:02:32.747 に答える
0

それは良い考えですが、実際には役に立たないかもしれません。誰かをトレーニングするには、トレーニングを組織し、支援および指導できるメンターを割り当てることができます。メンターは、実際のプロジェクトから作業を割り当てることができ、監視することもできます。

この概念の利点を得るには、ペア プログラミングは比較的経験豊富な人々の間で行う必要があります。私の見解では、経験の浅い人とペア プログラミングを行うと、生産性が低下し、誰かが彼を常にチェックしていると、その人がどれだけ習得できるかわかりません。タスクを割り当て、それを独自に開発し、レビューする機会を与えることは、優れた自己学習を提供します。

于 2009-04-24T11:06:59.023 に答える
0

はい。しかし、それを効果的にするためのアプローチは、最初は明確ではないかもしれません。ペアでプログラムされているタスクは、経験の浅いプログラマ (マイケルと呼びます)のタスクにする必要があります。また、セッションの目的を説明するために、マイケルにペア プログラミング セッションを開始してもらいます。このアプローチにより、Michaelより経験豊富なプログラマー (私たちは彼を Bill と呼びます)がより多くのメンタリングの役割を果たします。

通常、ビルはより複雑なタスクを引き受けるか、与えられます。このアプローチにより、Michaelは自分の経験レベルにより適したタスクに取り組むことができます。最初は 30 分から 1 時間間隔でオフにすることをお勧めします。これにより、 Michaelが他の誰かにコントロールを与えるプロセスに慣れることができます。これらのスイッチオフは、15 分間隔または 2 人の開発者にとって最適な間隔にゆっくりと短縮できます。

于 2009-04-24T12:50:55.747 に答える