จากรายละเอียด OP ที่ให้ไว้ดูเหมือนว่าคำถามคือ "ฉันจะเรียนรู้รหัสของตัวเองอย่างไรเมื่อถามให้ค้นหา X หรืออธิบาย Y ฉันจะตอบได้อย่างรวดเร็ว"
เมื่อการเข้ารหัสคุณต้องใช้เวลาในการเรียนรู้และเข้าใจรหัสของคุณเอง นี่อาจเป็นสิ่งที่ TL ของคุณพยายามที่จะข้ามไปหาคุณด้วยคำพูดไม่มากนัก ในฐานะที่เป็น TL ในโครงการปัจจุบันฉันได้ทำการตรวจสอบโค้ดจำนวนมากในช่วง 11 เดือนที่ผ่านมาและฉันสังเกตเห็นการฝึกฝนของนักพัฒนาบางคนเพื่อค้นหา "โค้ดตัวอย่าง" ในฐานรหัสของเราเองหรือที่อื่น (google ฯลฯ ... ) และคัดลอก / วางโดยส่วนตัวแล้วฉันไม่สามารถยืนได้เพราะในขณะที่รหัสของพวกเขาผ่านการทดสอบหน่วยง่าย ๆ พวกเขาไม่เข้าใจสิ่งที่มันกำลังทำจริงดังนั้นเราจึงไม่รับประกันว่าจะไม่มี กรณีขอบเขตหรือเงื่อนไขความล้มเหลวที่คาดว่าจะเกิดขึ้น
หากคุณต้องการคัดลอก / วางให้ลองคัดลอก / วางรหัสที่คุณเขียนไว้ก่อนหน้านี้และเข้าใจ แน่นอนว่าการ "ยืม" ความคิดของคนอื่น แต่ในกรณีนี้ให้เขียนโค้ดใหม่ทีละบรรทัดเพราะเมื่อคุณเขียนคุณจะได้รับความเข้าใจที่ดีขึ้น หากคุณใช้ API ภายนอกแม้ว่าคุณจะมีตัวอย่างที่ใช้ API นั้นใช้เวลาสักครู่เพื่อค้นหาข้อมูลอ้างอิงและเรียนรู้ว่า API นั้นทำงานอย่างไร อย่าเพิ่งคิดว่าถ้ามันเคยทำงานมาก่อนมันจะทำงานในสถานการณ์ของคุณด้วย
อ่านและเรียนรู้ที่จะรักหลักการแห้ง หลายครั้งสิ่งที่คุณอยากจะคัดลอก / วางสามารถวางในตำแหน่งทั่วไป (ฟังก์ชั่นแยกชั้นเรียนแยกห้องสมุดแยก ... )
อ่านและเรียนรู้ที่จะรักหลักการที่เป็นของแข็งและในขณะที่คุณอยู่ที่นี่ให้ตรวจสอบKISSซึ่งถูกกล่าวถึงโดย mouviciel หลักการเหล่านี้ล้วน แต่มุ่งเน้นที่การสร้างรหัสที่กระชับสะอาดและเป็นโมดูล หากคุณมีคลาสขนาดใหญ่และฟังก์ชั่นขนาดใหญ่ภายในสิ่งเหล่านั้นจะเป็นการยากที่จะค้นหาสิ่งต่าง ๆ และพยายามอธิบายว่าโค้ดทำอะไรได้ยาก ในทางกลับกันถ้าคุณทำตาม (หรืออย่างน้อยก็ลองทำตาม) SRP และทำให้แต่ละคลาส / หน้าที่รับผิดชอบสิ่งเดียวเท่านั้นรหัสของคุณจะเล็กและอ่านง่ายมาก
รับสำเนาของรหัสที่สะอาด หนังสือดีมาก มันพูดเกี่ยวกับการเขียนโค้ดที่อธิบายตนเองและอ่านบำรุงรักษาและขยายได้ง่าย หากคุณฝึกเขียนโค้ดที่อ่านง่ายคุณไม่ควรมีปัญหาในการอ่านรหัสของคุณเองในรีวิวรหัส และนี่คือส่วนที่ตลกฉันได้ขอให้ผู้คนอ่านโค้ดของตัวเองหรือบอกฉันว่าตัวแปรนั้นถูกนำเสนออย่างไรและพวกเขาไม่สามารถตอบได้แม้ว่าพวกเขาจะเขียนโค้ดนั้น (คลาสใหม่ไม่ใช่มรดก) เมื่อสัปดาห์ที่แล้ว . การตั้งชื่อที่ดีไปได้ไกล
หากหลังจากการทำให้เรียบง่ายและการรีแฟคเตอร์ใหม่ทั้งหมดคุณยังคงมีฟังก์ชันที่ต้องดำเนินการบางอย่างของอัลกอริทึมที่ไม่ชัดเจนใช้เวลาและเขียนบล็อกความคิดเห็นในฟังก์ชันนั้นเพื่ออธิบายอัลกอริธึม ไม่เพียงจะเป็นประโยชน์เมื่อคุณต้องแก้ไขฟังก์ชั่นนั้น 2 เดือนนับจากนี้ แต่หากคุณถูกซุ่มโจมตีในการตรวจสอบโค้ดคุณจะสามารถอ่านสิ่งที่คุณเขียนกลับมาได้
หากหลังจากรายการทั้งหมดข้างต้นคุณยังพบว่าตัวเองมีปัญหาหรือไม่? คุณยังใหม่กับทีมและขอให้ทำงานกับรหัสดั้งเดิมจำนวนมากหรือไม่ ในกรณีดังกล่าวอาจเป็นได้ว่า TL ของคุณเป็น A $$ และคุณสามารถดำเนินการเชิงรุกโดยขอให้เขาก่อนการประชุมเป็นเรื่องง่ายและไม่เสียเวลาของทุกคนที่เกี่ยวข้อง เมื่อคนใหม่เข้าร่วมทีม TL ต้องมีความอดทนมากพอเนื่องจากการทำงานในแพลตฟอร์มใหม่ผลิตภัณฑ์ใหม่ผู้คนใหม่สภาพแวดล้อมใหม่ให้ความสนใจอย่างมากจากคนใหม่และบุคคลนั้นจะขาดรายละเอียดบางอย่างในตอนแรก ทำงานตามที่ออกแบบมาและ TL ของคุณควรยอมรับสิ่งนั้น
หากหลังจากรายการทั้งหมดข้างต้นคุณยังรู้สึกว่าคุณมีความคิดเห็นรหัสที่น่ากลัว คุยกับ TL ของคุณ บางครั้งผู้คนรู้สึกไม่ดีเนื่องจากลักษณะของการตรวจสอบการประชุมเมื่อ TL มีความสุขอย่างสมบูรณ์กับคุณ เมื่อฉันทำการตรวจสอบโค้ดเป้าหมายของฉันคือการเน้นสิ่งที่จำเป็นต้องเปลี่ยนแปลงตรวจสอบให้แน่ใจว่าคุณเข้าใจการเปลี่ยนแปลงและดำเนินการต่อ หลายครั้งที่ฉันไม่มีเวลาสุภาพและบางคนได้รับการป้องกันและพยายามตอบทุกความคิดเห็นของฉัน ในสถานการณ์เหล่านั้นการทบทวนการทบทวนโค้ดจะหยุดชะงักดังนั้นฉันจึงมักจะขัดจังหวะพวกเขาและดำเนินการต่อ โดยทั่วไปหลังจากการประชุมฉันจะคุยกับคนใหม่เพื่อให้แน่ใจว่าพวกเขาเข้าใจกระบวนการและไม่มีอะไรเป็นส่วนตัว หลังจากบทวิจารณ์โค้ดไม่กี่คนผู้คนมักจะรู้สึกสบายใจกว่ามาก