คำถามติดแท็ก pair-programming

การเขียนโปรแกรมแบบคู่เป็นเทคนิคการพัฒนาซอฟต์แวร์แบบเปรียวโดยมีคนสองคนทำงานร่วมกันในเทอร์มินัลเดียว ในขณะที่บุคคลแรกมุ่งเน้นไปที่ไวยากรณ์และแง่มุมทางยุทธวิธีอื่น ๆ แต่อีกฝ่ายจะตรวจสอบโค้ดจากมุมมองบริบทที่กว้างขึ้น

4
เหตุผลในการเขียนโปรแกรมคู่
ฉันทำงานในร้านค้าไม่กี่แห่งที่ฝ่ายบริหารได้ส่งผ่านแนวคิดของการเขียนโปรแกรมจับคู่ให้ฉันหรือผู้จัดการ / นักพัฒนาคนอื่นและฉันก็ไม่สามารถทำมันได้เลย จากจุดยืนของนักพัฒนาฉันไม่สามารถหาเหตุผลว่าทำไมการเปลี่ยนมาใช้รูปแบบการเขียนโค้ดนี้จะเป็นประโยชน์และในฐานะผู้จัดการทีมเล็ก ๆ ไม่ได้เห็นประโยชน์อะไรเลย ฉันเข้าใจว่ามันช่วยในเรื่องข้อผิดพลาดทางไวยากรณ์พื้นฐานและอาจมีประโยชน์หากคุณต้องการแฮ็กข้อมูล แต่ผู้จัดการที่อยู่นอกวงจรการเขียนโปรแกรมดูเหมือนจะมองว่ามันเป็นวิธีในการป้องกันไม่ให้นักออกแบบของพวกเขาไปที่ Facebook หรือ Reddit มากกว่า เครื่องมือออกแบบ ในฐานะที่เป็นคนใกล้กับชั้นพัฒนาที่เห็นได้ชัดว่าไม่สามารถเข้าใจได้มากนักจากหนังสือที่โยนทางของฉันหรือหน้า wiki ในเรื่อง ... จากตำแหน่งการจัดการระดับสูงประโยชน์ของการเขียนโปรแกรมแบบคู่เมื่อจัดการกับ Scrum หรือ Agile คืออะไร สภาพแวดล้อม?

5
เวลาที่ต้องใช้ในการเริ่มเขียนโค้ดที่ บริษัท ใหม่ [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันเป็นวิศวกรซอฟต์แวร์เป็นเวลา 4 ปีและฉันเพิ่งเปลี่ยน บริษัท ของฉันเป็นครั้งแรก บริษัท ทำงานกับการเขียนโปรแกรมคู่และใช้เวลา 3 วันฉันไม่สามารถแม้แต่เขียนรหัสบรรทัดเดียวได้ มันช่างน่าหงุดหงิดเหลือเกินสำหรับฉันเพราะฉันทำงานที่ บริษัท ก่อนหน้านี้มาก codebase มีขนาดใหญ่พวกเขาใช้ภาษา / เครื่องมือ 5-6 ภาษาที่ฉันไม่คุ้นเคยเช่น rspec, haml, jasmine และอื่น ๆ แต่ถึงกระนั้นฉันรู้สึกแย่ สุดสัปดาห์นี้ฉันสร้าง UML เพื่อทำความเข้าใจแอปพลิเคชันให้ดีขึ้น แต่ถึงกระนั้นฉันก็ยังคาดเดาว่าฉันจะไม่สามารถเขียนโค้ดในปริมาณที่เหมาะสมในสัปดาห์นี้ เป็นเรื่องปกติหรือไม่ ประสบการณ์ของคุณเมื่อคุณเปลี่ยนงานของคุณและดำดิ่งสู่ codebase ขนาดใหญ่ที่เขียนด้วยภาษา / ไลบรารีที่คุณไม่คุ้นเคย แน่นอนว่าฉันไม่ได้ขอเวลาที่แน่นอนแต่ประสบการณ์ที่ผ่านมาหรือสิ่งต่าง ๆ ที่จะทำให้กระบวนการดีขึ้น แต่ฉันได้อ่านคำถามและคำตอบด้านล่างแล้ว คุณจะเจาะฐานรหัสขนาดใหญ่ได้อย่างไร /programming/215076/whats-the-best-way-to-become-familiar-with-a-large-codebase /programming/214605/the-best-way-to-familiarize-yourself-with-an-inherited-codebase UPDATE …

1
ประสบการณ์ใด ๆ กับ“ ความคิดเริ่มต้น” ในการเขียนโปรแกรมคู่
บทความ"Promiscuous Pairing and Beginner's Mind" (PDF)แสดงให้เห็นว่าคุณใส่ใครบางคนในคู่ที่รู้น้อยที่สุดเกี่ยวกับพื้นที่เฉพาะของฐานรหัส นอกจากนี้ยังแสดงให้เห็นว่าคุณสลับจากสมาชิกอาวุโสของทั้งคู่ทุก 90 นาทีหรือมากกว่านั้น ไม่เพียง แต่มือใหม่จะได้เรียนรู้เกี่ยวกับพื้นที่ของรหัสนั้น แต่พวกเขายังจะคิดแตกต่างจากคนที่รู้จักพื้นที่นั้นอยู่แล้ว ใครบ้างมีประสบการณ์กับกลยุทธ์นี้หรือไม่? มันเกี่ยวข้องกับความเป็นจริงไหม? ฉันพบคำถามอื่น ๆ เกี่ยวกับเวลาที่จะใช้การเขียนโปรแกรมแบบคู่และจะยอมรับงานที่ต้องการการเขียนโปรแกรมแบบคู่หรือไม่ แต่ฉันไม่พบสิ่งใดที่เกี่ยวกับการจับคู่แบบจับคู่กันอย่างเฉพาะเจาะจงและกลยุทธ์นี้ ถ้าคุณไม่คุ้นเคยกับการเขียนโปรแกรมคู่มีบทความที่น่าสนใจเกี่ยวกับวิกิพีเดียและc2.com

4
จับคู่โปรแกรมกับการต่อสู้
ฉันอยู่ในทีมที่ใช้ Scrum อยู่และเรากำลังพิจารณาเพิ่มการเขียนโปรแกรมคู่เพื่อช่วยพัฒนาทักษะการทำงานข้ามสายงานของทีมรวมถึงช่วยลดข้อบกพร่องด้วยปรัชญา "สองหัวดีกว่าหนึ่ง" ในทีมของเราสมาชิกในทีมแต่ละคนมักจะลงทะเบียนเพื่อรับภาระงานเต็มในระหว่างการวางแผนการวิ่ง (โดยมี "เต็ม" เป็นจำนวนที่น้อยกว่า 40 ชั่วโมงต่อสัปดาห์เพื่อให้สามารถประชุมการทำงานร่วมกันและอื่น ๆ ) กับเจ้าของคนเดียว แต่ละงาน ฉันเชื่อว่านี่เป็นเรื่องธรรมดาในทีมการต่อสู้ แต่อาจไม่จำเป็นต้องอยู่ในหนังสือ โดยเฉพาะอย่างยิ่งฉันกำลังมองหาที่จะหลีกเลี่ยงสถานการณ์ที่สมาชิกในทีมลังเลที่จะจับคู่เพราะพวกเขามีงานของตัวเองในการทำงานซึ่งฉันกลัวว่าจะเกิดขึ้นหากทีมจัดระเบียบตัวเองได้ง่าย ๆ โดยไม่ตั้งเวลาสำหรับการจับคู่ . วิธีนี้เป็นวิธีที่ดีที่สุดในการพิจารณาความพยายาม / ชั่วโมง / เรื่องเล่าในสถานการณ์การจับคู่เพื่อให้แน่ใจว่าเรามีเวลาที่เหมาะสมในการจับคู่? พิจารณาตัวเลือกบางอย่างคือ: อนุญาตให้คนสองคนลงทะเบียนสำหรับงานแต่ละงานและ (ประมาณ) สองเท่าของจำนวนชั่วโมงโดยประมาณ เฉพาะสมาชิกในทีม "มือบนแป้นพิมพ์" ลงทะเบียนสำหรับงานแต่ละงานซึ่งประเมินจากชั่วโมงการประมาณของบุคคลนั้น ทุกคนในทีมที่จะสนับสนุนการจับคู่จะลงทะเบียนสำหรับงานที่น้อยลงในการวิ่งเพื่อให้เวลาในการรองรับการจับคู่

4
ในการเขียนโปรแกรมคู่แต่ละบทบาทมีชื่ออะไรและเพราะอะไร
ฉันเคยได้ยินคนที่แป้นพิมพ์ชื่อ "ไดรเวอร์" และอีกคนหนึ่งชื่อ "นำทาง" ฉันจินตนาการถึงนักแข่งรถแรลลี่ที่ซึ่งคนที่อยู่บนพวงมาลัยไม่ทันกับทุกสิ่งที่เกิดขึ้นและพวกเขาจะต้องได้รับความช่วยเหลือจาก "เนวิเกเตอร์" ผู้ซึ่งตะโกนโวลุ่มและปริมาณของทิศทางที่พวกเขาทำ "ออกมาจากวัชพืช" เหมือนคนที่อยู่บนแป้นพิมพ์จะถูกเก็บไว้ "ในหลักสูตร" โดยบุคคลที่อยู่ในเก้าอี้ตัวที่สอง คำศัพท์ที่ยอมรับมากที่สุดสำหรับสองบทบาทในการเขียนโปรแกรมคู่คืออะไรและ (ถ้าไม่ชัดเจน) พวกเขายืมมาจากอาชีพใด ๆ ก่อนหน้านี้?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.