คำถามติดแท็ก cowboy-coding

10
ฉันควรทำอย่างไรเมื่อฉันรอนานเกินไประหว่างการคอมมิท?
ฉันเป็นคนซน ... "รหัสโคบาล" มากเกินไปยังไม่พอ ตอนนี้ที่นี่ฉันมีความมุ่งมั่นอย่างมาก ใช่ฉันน่าจะทำมาตลอด แต่มันก็สายเกินไปแล้ว อะไรดีกว่า? ทำสิ่งหนึ่งที่มีขนาดใหญ่มากในรายการสิ่งที่ฉันเปลี่ยน พยายามแบ่งมันออกเป็นข้อผูกพันเล็ก ๆ ที่อาจไม่ได้รวบรวมเนื่องจากไฟล์มีการแก้ไขหลายอย่างเปลี่ยนแปลงชื่อเมธอดเพิ่มเติม ฯลฯ พยายามทำการย้อนกลับบางส่วนของไฟล์เพื่อความมุ่งมั่นที่เหมาะสมจากนั้นนำการเปลี่ยนแปลงใหม่กลับมา หมายเหตุ: ณ ตอนนี้ฉันเป็นโปรแกรมเมอร์คนเดียวที่ทำงานในโครงการนี้ บุคคลเพียงคนเดียวที่จะดูความคิดเห็นที่กระทำเหล่านี้คือฉันอย่างน้อยก็จนกว่าเราจะจ้างโปรแกรมเมอร์มากขึ้น โดยวิธีการ:ฉันใช้ SVN และ Subclipse ฉันสร้างสาขาใหม่ก่อนทำการเปลี่ยนแปลงใด ๆ เหล่านี้ ข้อมูลเพิ่มเติม : ฉันถามคำถามแยกต่างหากที่เกี่ยวข้องกับวิธีการที่ฉันได้รับในสถานการณ์นี้ในตอนแรก: วิธีเตรียมความพร้อมสำหรับการเขียนกาวของแอปพลิเคชันใหม่

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

25
ตรงไปตรงมาคุณชอบรหัสคาวบอยหรือไม่ [ปิด]
โปรแกรมเมอร์ส่วนใหญ่ปกป้องวิธีการทางการเมืองที่ถูกต้องเช่น Agile, Waterfall, RUP และอื่น ๆ บางคนทำตามวิธีการ แต่ไม่ทั้งหมด ตรงไปตรงมาถ้าคุณสามารถเลือกวิธีการที่แน่นอนคุณจะไปที่วิธีการ "ถูกต้อง" ที่สำคัญหรือคุณต้องการวิธีการ "ง่ายขึ้น" เช่นการเขียนโปรแกรมคาวบอย? ทำไม? ฉันรู้ว่ามันขึ้นอยู่กับ กรุณาอธิบายว่าคุณจะใช้อย่างใดอย่างหนึ่ง กรุณาพูดว่าคุณเห็นข้อได้เปรียบอะไรในการเข้ารหัสคาวบอย ดูเกี่ยวกับการเข้ารหัสคาวบอยใน Wikipedia

15
ฉันจะโน้มน้าวให้โปรแกรมเมอร์คาวบอยใช้การควบคุมแหล่งที่มาได้อย่างไร
อัพเดท ฉันทำงานกับทีม devs เล็ก ๆ 4 คน พวกเขามีการควบคุมแหล่งที่ใช้ทั้งหมด ส่วนใหญ่ไม่สามารถควบคุมแหล่งที่มาและเลือกที่จะไม่ใช้แทน ฉันเชื่อมั่นอย่างยิ่งว่าการควบคุมแหล่งข้อมูลเป็นส่วนที่จำเป็นในการพัฒนาวิชาชีพ ปัญหาต่าง ๆ ทำให้ยากต่อการโน้มน้าวใจให้ใช้ตัวควบคุมแหล่งที่มา: ทีมที่ไม่ได้ใช้ในการใช้TFS ฉันมีการฝึกอบรม 2 ครั้ง แต่ได้รับการจัดสรรเพียง 1 ชั่วโมงเท่านั้นซึ่งไม่เพียงพอ สมาชิกในทีมปรับเปลี่ยนรหัสบนเซิร์ฟเวอร์โดยตรง สิ่งนี้จะทำให้รหัสไม่ซิงค์กัน ต้องการการเปรียบเทียบเพื่อให้แน่ใจว่าคุณกำลังทำงานกับรหัสล่าสุด และปัญหาการรวมที่ซับซ้อนเกิดขึ้น การประเมินเวลาที่นักพัฒนาซอฟต์แวร์นำเสนอไม่รวมเวลาที่ต้องใช้ในการแก้ไขปัญหาเหล่านี้ ดังนั้นถ้าฉันบอกว่าไม่ใช่จะใช้เวลานานกว่า 10 เท่า ... ฉันต้องอธิบายปัญหาเหล่านี้อย่างต่อเนื่องและเสี่ยงตัวเองเพราะตอนนี้ผู้บริหารอาจมองฉันว่า "ช้า" ฟิสิคัลไฟล์บนเซิร์ฟเวอร์แตกต่างกันในวิธีที่ไม่รู้จักมากกว่า ~ 100 ไฟล์ การผสานต้องการความรู้เกี่ยวกับโครงการในมือและดังนั้นความร่วมมือของนักพัฒนาซอฟต์แวร์ซึ่งฉันไม่สามารถทำได้ โครงการอื่น ๆ หลุดออกจากกัน นักพัฒนายังคงมีความไม่ไว้วางใจในการควบคุมแหล่งที่มาและทำให้เกิดปัญหาโดยไม่ได้ใช้ตัวควบคุมแหล่งที่มา นักพัฒนาให้เหตุผลว่าการใช้การควบคุมแหล่งที่มานั้นสิ้นเปลืองเพราะการผสานนั้นเกิดข้อผิดพลาดได้ง่ายและยาก นี่เป็นจุดที่ยากที่จะโต้แย้งเนื่องจากเมื่อการควบคุมแหล่งที่มานั้นไม่ถูกต้องใช้อย่างไม่ถูกต้องและการควบคุมแหล่งที่มาข้ามอย่างต่อเนื่องมันเป็นข้อผิดพลาดได้ง่ายแน่นอน ดังนั้นหลักฐาน "พูดเพื่อตัวเอง" ในมุมมองของพวกเขา นักพัฒนายืนยันว่าการปรับเปลี่ยนรหัสเซิร์ฟเวอร์โดยตรงการเลี่ยง TFS จะช่วยประหยัดเวลา นี่เป็นเรื่องยากที่จะโต้แย้ง เนื่องจากการรวมที่จำเป็นในการซิงโครไนซ์รหัสที่จะเริ่มต้นนั้นใช้เวลานาน …

5
คุณปลดอาวุธโคบาลคาวบอยได้อย่างไร [ปิด]
ฉันพบคำถาม (รหัสโคบาลของทีม) แต่มันเกี่ยวข้องกับ "Ninja Coder" มากกว่าปัญหาที่ฉันมี ฉันมีสมาชิกในทีมที่เป็นตัวอย่างชีวิตที่บริสุทธิ์ของ " คาวบอยโคเดอร์ " ฉันเข้าใจว่าไม่มีใครเปลี่ยนคนได้ แต่เป็นวิธีที่ทำให้เขาหยุดทำตัวเหมือน "โคบาลโคด" หรือไม่? เขาปฏิเสธที่จะฟังทีมและเมื่อเร็ว ๆ นี้เขาได้หยุดการตรวจสอบโค้ดการทดสอบหน่วยการแบ่งปันรายละเอียดการใช้งาน ฯลฯ ใช่เขา "รหัส" เร็ว แต่รหัสของเขาเป็นเพียงตัวสร้างบั๊ก สมาชิกในทีมคนอื่น ๆ และฉันอยู่ใน "ขั้นตอนการแก้ไขข้อบกพร่อง" และ 80% ของข้อบกพร่องมาจากรหัสของเขา ฉันไม่ต้องการแก้ไขข้อบกพร่องของเขา และผู้บริหารก็ตาบอดหรือไม่ต้องการเห็นสิ่งนี้หรือบางทีพวกเขาอาจชอบความเร็วของเขา มีวิธีใดบ้างที่ฉัน (ในฐานะเพื่อนร่วมงานอายุน้อยกว่าไม่ใช่เจ้านายของเขา) สามารถทำอะไรกับมันได้บ้าง? ฉันจะปลดอาวุธโคบาลโคบาลนี้ได้อย่างไร ฉันรู้สึกเหมือนฉันเป็นคนสุดท้ายที่ใส่ใจโครงการอย่างแท้จริง

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