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

17
อะไรคือวิธีที่ดีและกระชับในการอธิบายถึงอันตรายของการเขียนโปรแกรมคัดลอกแปะกับผู้ที่ไม่ใช่โปรแกรมเมอร์ [ปิด]
ฉันกำลังมองหาอุปมาอุปไมยหรืออุปมาอุปไมยที่สามารถอธิบายปัญหาของการเขียนโปรแกรมคัดลอกแปะกับผู้ที่ไม่ใช่โปรแกรมเมอร์ บางครั้งฉันทำการตรวจสอบโค้ด / ระบบสำหรับผู้มีโอกาสเป็นลูกค้าและหนึ่งในปัญหาทั่วไปที่ฉันเห็นคือโค้ดคัดลอกวางจำนวนมากมายทั่วฐานรหัสของพวกเขา มันเป็นสิ่งที่ฉันมักจะพูดถึงในบทวิจารณ์และทุกครั้งที่ฉันต้องอธิบายว่าทำไมถึงมีปัญหา (นี่เป็นเรื่องยากโดยเฉพาะอย่างยิ่งกับลูกค้าที่รู้เกี่ยวกับการเขียนโปรแกรมมากพอที่จะเข้าใจว่าการใช้ซ้ำนั้นเป็นสิ่งที่ดี การคัดลอกวางไม่ใช่รูปแบบการใช้ซ้ำที่ดี) เห็นได้ชัดว่าฉันสามารถ (และทำ) อธิบายปัญหาในแง่ของการบำรุงรักษาโค้ด แต่มันจะดีถ้าได้มีการเปรียบเทียบที่ดีและกระชับสำหรับปัญหานี้ที่จะตีบ้านด้วยโปรแกรมเมอร์ที่ไม่ใช่ โบนัสหากการเปรียบเทียบแสดงให้เห็นว่าเหตุใดการค้นหาและแทนที่ไม่ใช่วิธีที่มีประสิทธิภาพสำหรับปัญหานี้ ข้อเสนอแนะใด ๆ เพื่อชี้แจง (ตามคำตอบของ Jaroslav ด้านล่าง) - ฉันไม่ได้พูดถึงการใช้ข้อมูลโค้ดที่นี่; สิ่งที่ฉันเห็น (รบกวนบ่อย) คือการคัดลอกและวางโค้ดอันกว้างใหญ่หรือโค้ดสิบบรรทัดเพื่อรับข้อมูลผู้ใช้บางส่วน (สมบูรณ์ด้วยคิวรี SQL แบบอินไลน์) วางลงในหน้า PHP หรือ ASP.NET หลายสิบหน้า ดังนั้นซ้ำรหัสจากที่อื่นในโครงการเดียวกัน อัปเดต: มีคำตอบที่ดีมาก ๆ อยู่ที่นี่ ฉันได้อธิบายในความคิดเห็นว่าทำไมฉันถึงเลือกคำตอบของ Scott Whitlock แต่ฉันก็อยากจะแนะนำคำตอบแบบ whatsisname อย่างมากถ้าคุณติดต่อกับลูกค้าที่คุ้นเคยกับการผลิตเลย

5
ฉันจะเขียนรหัสอย่างปลอดภัยใน 'คำพูด' ของตัวเองและไม่ขโมยความคิดได้อย่างไร
ฉันเข้าใจว่าการลอกเลียนแบบและการถอดความค่อนข้างดีเมื่อพูดถึงการเขียนรายงานการวิจัย ฉันค้นหาหัวข้อออนไลน์และน่าประหลาดใจที่มีเนื้อหาไม่มากเท่ากับที่คาดไว้ เมื่อเขียนโค้ดและต้องใช้บางสิ่งที่ฉันไม่เคยทำมาก่อนฉันจะออนไลน์เพื่อค้นหาตัวอย่าง ฉันพยายามอ่านเอกสารก่อน แต่บางครั้งฉันก็รู้สึกท้าทายที่จะติดตาม ดังนั้นหากล้มเหลวฉันจะค้นหาหัวข้อออนไลน์และนำเสนอด้วยตัวอย่างมากมาย (ไม่ว่าจะเป็นในบล็อกส่วนตัวของใครบางคนหรือไซต์ถามตอบเช่น SO) ตอนนี้ฉันมักจะนำเสนอด้วยรหัส 5-10 บรรทัด ฉันมีและจะไม่คัดลอกและวางลงในรหัสของฉัน แต่ฉันยังคงกังวลเกี่ยวกับการคัดลอกคำต่อคำ ฉันพบว่ามันยากที่จะใส่รหัสใหม่ให้กับรหัสโดยเฉพาะอย่างยิ่งเมื่อมีหลายวิธี ฉันแน่ใจว่าได้เปลี่ยนชื่อตัวแปรเปลี่ยนการจัดรูปแบบ ฯลฯ - แต่นี่เพียงพอหรือไม่ ฉันต้องการที่จะเข้าใจหัวข้อนี้เสมอ แต่ตอนนี้ฉันทำงานกับภาษาใหม่และในสภาพแวดล้อมขององค์กรฉันคิดว่ามันเป็นเรื่องที่เกี่ยวข้องโดยเฉพาะ หากใครสามารถอธิบายหรือเชื่อมโยงไปยังคำอธิบายที่ดีที่อื่นฉันจะขอบคุณอย่างมากที่! tl; dr ฉันไม่เข้าใจว่าคุณต้องเปลี่ยนมากแค่ไหนและใส่รหัสใหม่อีก 5-10 ตัวอย่างของรหัสที่พบทางออนไลน์เพื่อหลีกเลี่ยงการลอกเลียนแบบ เกิดอะไรขึ้นถ้ามีน้อยมากที่คุณสามารถเปลี่ยนได้
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.