コードで作業するとき、チームメートと同じ課題の多くに直面します。また、有用な関数とクラスをいくつか作成しました。良好なコミュニケーションがあれば、誰かがまとめた素晴らしいことを聞くことができます。6か月後に必要になったときにそれを覚えて、その関数を呼び出して時間を節約できます。覚えていない場合、またはまったく知らない場合は、おそらく車輪を再発明します。
これらの種類のものを文書化する特定の慣行はありますか?どのようにしてそれらを見つけやすくしますか?
チームにそのようなドキュメントがない場合、ホイールがすでに存在するかどうかをどのように確認しますか?
編集:
これまでのところ、答えの1つを除くすべてが理想的な状況を扱っているので、これらのソリューションを要約します。ドキュメントとコミュニケーション。wiki、スタンドアップミーティングなどはすべて素晴らしいものですが、ドキュメントを作成し、ミーティングに参加し、メモを取り、すべてを覚える時間(およびスキル)を持つプログラマーに依存しています。
これまでで最も人気のある回答(Calebの回答)は、文書化や会議ができないプログラマーが使用できる唯一の回答であり、プログラミングを1つだけ行います。プログラミングはプログラマーが行うことであり、もちろん、優れたプログラマーはドキュメント、ユニットテストなどを作成できますが、それに直面しましょう-私たちのほとんどはプログラミングよりもドキュメントを好みます。彼の解決策は、プログラマが再利用可能なコードを認識し、それを独自のクラスまたはリポジトリなどに引き出し、それが分離されているという事実によって、それが見つけやすくなり、それを使用するための学習曲線を容易にすることです... 。そして、これはプログラミングによって達成されました。
ある意味では、このように見えます。3つの関数を書いたばかりで、他の誰かがそれらについて知っておく必要があると思います。私はそれらを文書化し、書き、会議で発表することができます-私はできますが、それは私の強さではありません-または....私はそれらをクラスに抽出し、それをうまく命名し、それらをブラックボックス、および他のクラスファイルが行く場所に貼り付けます。その後、それを発表する短いメールは簡単です。他の開発者はコードをスキャンして、完全に理解していないコードで使用されている分離された関数よりもよく理解できます。そのコンテキストは削除されます。
これは、適切な名前のメソッドを備えた適切な名前のクラスファイルのセットを持つことは、優れたプログラミングによって達成される優れたソリューションであることを意味するため、これが気に入っています。会議を必要とせず、詳細な文書の必要性を和らげます。
この流れに他にもアイデアはありますか?