Ketika mengerjakan kode, saya menghadapi banyak tantangan yang sama seperti yang dilakukan rekan tim saya, dan saya telah menulis beberapa fungsi dan kelas yang membantu, dan begitu juga mereka. Jika ada komunikasi yang baik, saya akan mendengar tentang beberapa hal hebat yang disatukan seseorang, dan enam bulan kemudian ketika saya membutuhkannya, saya mungkin mengingatnya dan memanggil fungsi itu, menghemat waktu saya sendiri. Jika saya tidak mengingatnya, atau tidak pernah mengetahuinya, saya mungkin akan menemukan kembali kemudi.
Apakah ada praktik khusus untuk mendokumentasikan hal-hal semacam ini? Bagaimana Anda membuatnya mudah ditemukan?
Jika tim Anda tidak memiliki dokumentasi seperti itu, bagaimana Anda mengetahui apakah roda Anda sudah ada?
SUNTING:
Semua kecuali salah satu jawaban sejauh ini berkaitan dengan situasi ideal, jadi izinkan saya meringkas solusi-solusi itu: dokumentasi & komunikasi; wiki, stand-up meeting, dll. Itu semua adalah hal-hal hebat, tetapi mereka bergantung pada programmer yang punya waktu (dan keterampilan) untuk menulis dokumentasi dan menghadiri pertemuan dan membuat catatan dan mengingat semuanya.
Jawaban paling populer sejauh ini (Caleb) adalah satu-satunya yang dapat digunakan oleh seorang programmer yang tidak mampu melakukan dokumentasi dan rapat, dan hanya melakukan satu hal: pemrograman. Pemrograman adalah apa yang dilakukan oleh seorang programmer, dan ya, seorang programmer yang hebat dapat menulis dokumentasi, unit test, dll, tetapi mari kita hadapi itu - kebanyakan dari kita lebih suka pemrograman daripada mendokumentasikan. Solusinya adalah di mana programmer mengenali kode yang dapat digunakan kembali dan menariknya ke kelasnya sendiri atau repositori atau apa pun, dan oleh kenyataan bahwa itu terisolasi, ia menjadi dapat ditemukan dan memudahkan kurva belajar untuk menggunakannya ... dan ini dicapai dengan pemrograman.
Di satu sisi saya melihatnya seperti ini: Saya baru saja menulis tiga fungsi, dan terpikir oleh saya bahwa orang lain harus tahu tentang mereka. Saya bisa mendokumentasikannya, menulisnya, mengumumkannya di rapat, dll - yang bisa saya lakukan, tapi itu bukan kekuatan saya - atau .... Saya bisa mengekstraknya ke kelas, beri nama dengan baik, buat mereka berfungsi seperti kotak hitam, dan tempel di mana file kelas lain pergi. Maka email singkat yang mengumumkannya mudah. Pengembang lain dapat memindai kode dan memahaminya lebih baik daripada fungsi terisolasi yang digunakan dalam kode yang tidak sepenuhnya mereka pahami - konteks itu dihapus.
Saya suka ini karena itu berarti memiliki satu set file kelas yang bernama baik, dengan metode yang dinamai, adalah solusi yang baik yang dicapai oleh pemrograman yang baik. Itu tidak memerlukan pertemuan, dan itu melunakkan kebutuhan untuk dokumentasi rinci.
Apakah ada lebih banyak ide dalam nada ini ... untuk pengembang terisolasi dan waktu?