เมื่อทำงานกับโค้ดฉันต้องเผชิญกับความท้าทายหลายอย่างที่เพื่อนร่วมทีมของฉันทำและฉันได้เขียนฟังก์ชั่นและชั้นเรียนที่มีประโยชน์ หากมีการสื่อสารที่ดีฉันจะได้ยินเกี่ยวกับสิ่งที่ยอดเยี่ยมที่ใครบางคนรวบรวมไว้และอีกหกเดือนต่อมาเมื่อฉันต้องการฉันอาจจำได้และเรียกใช้ฟังก์ชันนั้นประหยัดเวลา หากฉันจำไม่ได้หรือไม่เคยรู้เรื่องนี้ฉันอาจจะประดิษฐ์วงล้อขึ้นใหม่
มีวิธีปฏิบัติที่เฉพาะเจาะจงในการบันทึกสิ่งเหล่านี้หรือไม่? คุณทำให้พวกมันหาง่ายได้อย่างไร?
หากทีมของคุณไม่มีเอกสารดังกล่าวคุณจะรู้ได้อย่างไรว่าล้อของคุณมีอยู่แล้ว?
แก้ไข:
ทั้งหมด แต่หนึ่งในคำตอบที่เกี่ยวข้องกับสถานการณ์ในอุดมคติดังนั้นขอสรุปการแก้ปัญหาเหล่านั้น: เอกสาร & การสื่อสาร; wikis, stand-up meetings เป็นต้นสิ่งเหล่านี้ล้วน แต่เป็นสิ่งที่ยอดเยี่ยม แต่พวกเขาต้องพึ่งพาโปรแกรมเมอร์ที่มีเวลา (และทักษะ) ในการเขียนเอกสารและเข้าร่วมการประชุมและจดบันทึกและจดจำทุกสิ่ง
คำตอบที่ได้รับความนิยมมากที่สุดจนถึงปัจจุบัน (Caleb's) เป็นคำตอบเดียวที่โปรแกรมเมอร์สามารถใช้งานได้ซึ่งไม่สามารถจัดทำเอกสารและการประชุมได้ การเขียนโปรแกรมเป็นสิ่งที่โปรแกรมเมอร์ทำและใช่โปรแกรมเมอร์ที่ยอดเยี่ยมสามารถเขียนเอกสารประกอบการทดสอบหน่วย ฯลฯ แต่มาดูกัน - พวกเราส่วนใหญ่ชอบเขียนโปรแกรมเพื่อจัดทำเอกสาร วิธีแก้ปัญหาของเขาคือที่โปรแกรมเมอร์จำรหัสที่ใช้ซ้ำได้และดึงมันออกไปยังคลาสหรือพื้นที่เก็บข้อมูลของตัวเองหรืออะไรก็ตามและโดยความจริงที่ว่ามันถูกแยกออกมันจะกลายเป็นความสามารถในการเรียนรู้ . และนี่คือความสำเร็จโดยการเขียนโปรแกรม
ในแบบที่ฉันเห็นมันเป็นแบบนี้: ฉันเพิ่งเขียนสามหน้าที่และมันเกิดขึ้นกับฉันที่คนอื่นควรรู้เกี่ยวกับพวกเขา ฉันสามารถจัดทำเอกสารเขียนบันทึกประกาศในที่ประชุม ฯลฯ - ซึ่งฉันทำได้ แต่ไม่ใช่จุดแข็งของฉัน - หรือ .... ฉันสามารถแยกพวกเขาออกจากชั้นเรียนตั้งชื่อให้ดีทำให้พวกเขาทำงานได้ กล่องดำและติดไว้ที่ไฟล์คลาสอื่น ๆ จากนั้นอีเมลสั้น ๆ ประกาศว่าเป็นเรื่องง่าย นักพัฒนาซอฟต์แวร์คนอื่นสามารถสแกนโค้ดและเข้าใจได้ดีกว่าฟังก์ชั่นแยกที่ใช้ในโค้ดที่พวกเขาไม่เข้าใจ - บริบทนั้นจะถูกลบ
ฉันชอบสิ่งนี้เพราะมันหมายถึงการมีชุดไฟล์คลาสที่มีชื่อพร้อมวิธีการที่มีชื่อดีเป็นวิธีแก้ปัญหาที่ดีซึ่งทำได้โดยการเขียนโปรแกรมที่ดี มันไม่จำเป็นต้องมีการประชุมและมันนุ่มนวลความต้องการเอกสารรายละเอียด
มีความคิดใด ๆ เพิ่มเติมในหลอดเลือดดำนี้ ... สำหรับนักพัฒนาซอฟต์แวร์ที่ต้องทำงานโดดเดี่ยวและกดดัน?