ฉันควรลบรหัสที่ไม่อ้างอิงหรือไม่


118

ฉันกำลังทำงานกับฐานรหัสขนาดกลาง (100k บรรทัด) โค้ดทั้งหมดเป็นรหัสล่าสุด (น้อยกว่าหนึ่งปี) และมีการทดสอบหน่วยที่ครอบคลุม

ฉันพบกับวิธีการที่ไม่ได้ใช้งานที่ใดอีกต่อไปหรืออ้างอิงในการทดสอบหน่วยซึ่งทดสอบเฉพาะวิธีนั้นเท่านั้น

ฉันควรลบรหัสนี้หรือไม่ถ้าฉันแน่ใจว่าไม่จำเป็นอีกต่อไป

เหตุผลในการลบ:

  • รหัสน้อยกว่าข้อบกพร่องน้อยลง
  • รหัสที่น้อยลงจะง่ายกว่าสำหรับผู้อื่นในการย่อย
  • มันยังอยู่ภายใต้การควบคุมของแหล่งที่มา

เหตุผลที่จะเก็บมันไว้:

  • สามารถใช้เป็นข้อมูลอ้างอิง
  • มันอาจจะมีประโยชน์ในบางครั้ง
  • มันอาจถูกเขียนขึ้นเพื่อ 'ปัดเศษ' ฟังก์ชันการทำงานสำหรับชั้นเรียน

22
"รหัสน้อยลง, ข้อผิดพลาดน้อยลง" - หากพวกเขาไม่เคยใช้งานจริงพวกเขาไม่น่าจะทำให้เกิดข้อผิดพลาด
Konrad Morawski

19
@ Morawski แต่ถ้ามันถูกทิ้งไว้มันจะใช้วันหนึ่ง และเนื่องจากมันยังไม่ได้รับการบำรุงรักษามันจะมีข้อบกพร่องซึ่งจะปรากฏขึ้น
DJClayworth

9
ฉันมักจะแสดงความคิดเห็นและการทดสอบที่ขึ้นอยู่กับมันแล้วออกความคิดเห็น 'สิ่งที่ต้องทำ' กับวันที่ เมื่อไม่ได้ใช้งานมาเป็นปีฉันก็โยนมันทิ้งไป คนอื่น ๆ แนะนำให้เอาออกตอนนี้ แต่ฉันพบว่ามันยากที่จะทำโดยเฉพาะอย่างยิ่งถ้ามันดูเหมือนว่าโค้ดมีประโยชน์ครั้งเดียว
งาน

31
@ งานถ้าฉันเจอรหัสแสดงความคิดเห็นจะถูกลบออก ไม่มีข้อแก้ตัว. รหัสความเห็นออกมากรีดร้องว่า "ฉันไม่เชื่อถือระบบควบคุมแหล่งที่มาของเรา" ถึงฉัน.
Kristof Provost

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

คำตอบ:


219

เหตุผลส่วนใหญ่ของคุณที่จะทำให้มันไม่เกี่ยวข้องอย่างเต็มที่ใส่เพียงแค่ หากไม่ได้ใช้รหัสให้ทิ้งผลประโยชน์ใด ๆ ที่เกี่ยวข้องกับการรักษารหัสนั้นไว้โดยได้มาจากการควบคุมแหล่งที่มาเล็กน้อย อย่างมากที่สุดแสดงความคิดเห็นโดยบอกว่าจะทำการแก้ไขใดใน

ค่อนข้างง่ายยิ่งคุณตัดรหัสได้เร็วเพียงใดยิ่งเร็วคุณก็ไม่ต้องเสียเวลาในการบำรุงรักษารวบรวมและทดสอบ ข้อดีเหล่านั้นมีมากกว่าผลประโยชน์เล็กน้อยที่คุณได้อธิบายไว้อย่างมากมายซึ่งทั้งหมดนี้สามารถได้มาจากการควบคุมแหล่งที่มา


30
ฉันเห็นด้วยกับการลบ แต่ฉันมีกรณีที่ฉันทำบางสิ่งบางอย่างเพราะมีคนใช้รหัส "ไม่ได้ใช้" ผ่านการสะท้อนกลับ ดังนั้นควรระวังอยู่ดี
Falcon

14
@ เหยี่ยวนั่นเป็นเหตุผลที่ดีที่จะลบออกโดยเร็วที่สุดก่อนที่ผู้คนจะเริ่มใช้มันหรือค้นพบความต้องการที่จะเผยแพร่ต่อสาธารณะ
StuperUser

6
@ เหยี่ยว: มันเป็นการยืนยันของ OP ว่าไม่ได้ใช้รหัส
DeadMG

4
@StuperUser: ฉันเห็นด้วยอย่างยิ่ง แต่ควรระวังและเตรียมพร้อมสำหรับสิ่งที่ไม่คาดคิด
Falcon

18
หากคุณลบมันและหน่วยและการทดสอบการถดถอยของคุณผ่าน แต่ผลิตภัณฑ์แบ่งในเขตข้อมูลจะมีกรณีที่แข็งแกร่งสำหรับการตั้งค่าเครื่องมือครอบคลุมรหัสบางประเภท
Andrew T Finnell

43

เหตุผลทั้งหมดที่นำออกมายืน

เหตุผลที่จะเก็บมันไว้:

  • สามารถใช้เป็นข้อมูลอ้างอิง
  • มันอาจจะมีประโยชน์ในบางครั้ง
  • มันอาจถูกเขียนขึ้นเพื่อ 'ปัดเศษ' ฟังก์ชันการทำงานสำหรับชั้นเรียน

เหตุผลทั้งหมดเหล่านี้เพื่อเก็บไว้จะได้รับการจัดการโดยการควบคุมแหล่งที่มา ลบออกจากรหัสสดและคุณจะสามารถเรียกคืนได้เมื่อ / เมื่อต้องการ


1
ใช่รหัสที่ไม่มีการยืนยันไม่ควรอยู่ในรหัสสด
xdazz

ดูเหมือนว่าคุณยังได้รับประโยชน์เหล่านี้เพียงแค่แสดงความคิดเห็นชิ้นใหญ่
Steve Bennett

@SteveBennett แน่นอน แต่คุณเข้าใจผิดในประเด็นของคำตอบนี้ ฉันแสดงรายการประโยชน์ของการแสดงความคิดเห็นประเด็นคือคุณจะได้รับประโยชน์ทั้งหมดจากการควบคุมแหล่งข้อมูล (ซึ่งคุณจะเห็นในคำตอบอื่น ๆ )
StuperUser

ฉันไม่ได้ต่อต้าน VCS :) (ฉันจะทราบว่าเมื่อสิ่งถูกลบออกจากรุ่นปัจจุบันก็มองเห็นได้น้อยกว่าวิธีอื่น ๆ เช่นการจัดเก็บไว้ในไฟล์ข้อความที่ไม่ได้อ้างถึงบนวิกิในความคิดเห็น ฯลฯ ... )
Steve Bennett

@Steve Bennet - มันอาจจะ "มองเห็นได้น้อยกว่า" ความคิดเห็นในรุ่นปัจจุบันของไฟล์ แต่เรื่องเล็กน้อยที่จะตรวจสอบประวัติ VCS ของไฟล์เดียวและฉันจะพูดง่ายกว่า txt-file / wiki / etc อย่างมีนัยสำคัญ .. วิธีการ
Zach Lysobey

23

รหัสที่ไม่มีการอ้างอิงนั้นเหมือนกับการเก็บแบตเตอรี่เหล่านั้นไว้เป็นประเภทแบนในกรณีที่คุณต้องการใช้งานหนึ่งวันสำหรับไฟฉาย

ตราบใดที่คุณใช้การควบคุมเวอร์ชันบางอย่างฉันจะบอกว่ามันไม่มีรหัสสดและใช้ประวัติเวอร์ชันในกรณีที่มันมีประโยชน์


40
เพื่อปรับปรุงความคล้ายคลึงของคุณเล็กน้อยมันเหมือนกับการเก็บแบตเตอรี่ที่เกือบตายแล้วไว้ในรีโมทคอนโทรลแทนที่จะใส่ไว้ในกล่องถัดจากแบตเตอรี่ใหม่ในห้องเก็บข้อมูลที่ระบุว่า "ใช้แล้ว แต่ไม่ใช่แบตเตอรี่ที่ตายแล้ว"
Scott Whitlock

บวก 1 เพื่อการปรับปรุงที่ดียิ่งขึ้น!
Nicholas Smith

15

เหตุผลเดียวที่ฉันสามารถดูรหัสที่ไม่ได้ใช้ในปัจจุบันคือถ้ามันเป็นส่วนหนึ่งของโมดูลที่มีในตัวเอง: ในขณะที่บางส่วนของรหัสอาจไม่ได้ใช้ในขณะนี้อาจเป็นเพราะพวกเขาจะเป็น ใช้ในอนาคต

นี่อาจเป็นจริงโดยเฉพาะอย่างยิ่งสำหรับห้องสมุดที่คุณใช้ในโครงการต่าง ๆ : คุณไม่ต้องการให้มีการโยนโค้ดเข้าและออกตามที่คุณต้องการสำหรับโครงการเฉพาะ: ฉันพบว่าใช้เวลานานและผิดพลาดได้ง่าย

แนวทางของฉันคือ: (1) ถ้าคุณใช้เพียงครั้งเดียวรักษาสิ่งที่คุณต้องการจริงๆ (2) ถ้าคุณใช้สองครั้งให้คัดลอกและปรับใช้ในครั้งที่สองที่คุณใช้ (3) ถ้าคุณใช้มันมากกว่าสองครั้งให้สร้างโมดูลที่เสถียรและเสถียรและใช้โมดูลนี้ตามที่คุณต้องการ

สรุป: ฉันจะทิ้งโค้ดที่ไม่ได้ใช้ทั้งหมดยกเว้นว่ามันเป็นส่วนหนึ่งของโมดูลเอนกประสงค์ที่คุณได้ออกแบบไว้และคุณรู้ว่าคุณจะใช้ซ้ำหลายครั้ง

หมายเหตุ : แน่นอนว่าโซลูชันที่สะอาดกว่านี้ก็คือการสร้างโครงการแยกต่างหากสำหรับห้องสมุดและเพิ่มการพึ่งพาระหว่างโครงการ


1
เป็นตัวอย่างของสิ่งนี้ฉันมีบางไลบรารีรูทีนที่จะอ่านและเขียนชนิดข้อมูลที่เซ็นชื่อและไม่ได้ลงนามขนาดต่างๆภายในอาร์เรย์ไบต์ ดูเหมือนว่าสะอาดกว่าที่จะมีชุดของรูทีนดังกล่าวสำหรับทุกประเภทข้อมูลมากกว่าที่จะมีอยู่บางส่วนและบางส่วนไม่ขึ้นอยู่กับสิ่งที่รหัสเกิดขึ้นเพื่อต้องการในขณะนี้
supercat

11

โดยทั่วไปฉันจะคำนับให้ YAGNI ในเรื่องนี้ ถ้า "คุณไม่ต้องการมัน" ก็แค่เพิ่มพื้นที่ใน codebase การทดสอบหน่วยและชุดประกอบ คุณอาจต้องใช้มัน แต่คุณอาจจำเป็นต้องเขียนใหม่ทั้งหมดเพราะในขณะนี้และเมื่อคุณต้องการอะไรเช่นนั้นจำนวนมากก็สามารถเปลี่ยนแปลงได้

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


8

เนื่องจาก codebase นั้นมีอายุน้อยกว่าหนึ่งปีก็อาจจะยังคงมีฟลักซ์จำนวนมาก (ใช่หรือไม่) ดังนั้นความคิดที่ว่าบิตบางส่วนอาจจำเป็นต้องได้รับการฟื้นคืนชีพในอนาคตอันใกล้นี้ไม่สมเหตุสมผล

สำหรับบิตที่ยากที่จะถูกต้องตั้งแต่แรกและดูเหมือนว่าจะฟื้นคืนชีพขึ้นมาฉันจะทำให้พวกเขา "สด" มากกว่าการควบคุมแหล่งที่มา ผู้คนจะไม่รู้จัก / จำไว้ว่ามีอยู่ - พูดว่า "คุณสามารถหามันได้ในแหล่งควบคุม" สันนิษฐานว่าคุณรู้ / จำได้ว่ามันมีอยู่! ในกรณีเหล่านี้ให้พิจารณาการคัดค้าน (ที่มี showstopper "ยืนยัน (เท็จ)") หรือแสดงความคิดเห็น


5
+1 สำหรับ "พูดว่า" คุณสามารถพบมันในการควบคุมแหล่งที่มา "ทึกทักว่าคุณรู้ / จำไว้ว่ามันมี!" - บางครั้งฉันพบรหัสเตือนความจำเล็ก ๆ น้อย ๆ ที่ถูกตัดออกไปเพื่อเป็นประโยชน์ไม่ว่าด้วยเหตุผลใดก็ตาม
Steven

3

หากรหัสนั้นเล็กน้อยและไม่น่าสนใจฉันก็ทิ้งมันไปเพื่อกำจัดความเฉื่อยที่ไม่จำเป็นของระบบซอฟต์แวร์

สำหรับโปรแกรมอัดรหัสที่น่าสนใจฉันใช้archiveสาขาในระบบควบคุมเวอร์ชันของฉัน


3

"สามารถใช้เป็นข้อมูลอ้างอิง" ฉันจะไม่เห็นด้วยกับการมีเหตุผลที่ดีที่จะทิ้งรหัสที่ไม่ได้ใช้ บ่อยครั้งที่รหัสที่ไม่ได้ใช้เพียงเล็กน้อยเท่านั้นที่แสดงให้เห็นถึงสิ่งที่น่าสนใจ มีหลายวิธีในการจัดทำเอกสารและจัดเก็บโค้ดที่มีประโยชน์ แต่ไม่ได้ใช้

แม้ว่าการควบคุมเวอร์ชันจะมีประวัติซึ่งจะช่วยให้คุณกู้คืนฟังก์ชันการทำงานบางอย่างได้อย่างง่ายดายหากคุณตัดสินใจว่าต้องการรหัสในภายหลังโดยรู้ว่าคุณต้องไปดูในประวัติการควบคุมเวอร์ชันเพื่อค้นหา xy หรือ z จากผู้ที่รู้ว่าการแก้ไขก่อนหน้านี้ ค่อนข้างน่าเบื่อและมักจะถูกมองข้ามเว้นแต่คุณจะมีความคิดที่ค่อนข้างเฉพาะในสิ่งที่คุณกำลังมองหา

รหัสสามารถถูกคอมเม้นท์พร้อมหมายเหตุเกี่ยวกับเมื่อมันถูกลบและทำไมมันไม่ได้ถูกลบออกจากรหัส อย่างไรก็ตามนี่เป็นการพิจารณาโดยทั่วไปว่ารูปแบบไม่ดีและรหัสที่ไม่ได้ใช้และไม่ได้รับการบำรุงรักษาอย่างถูกต้องสามารถแนะนำข้อผิดพลาดได้ทุกประเภทหากไม่ได้รับข้อคิดเห็นในภายหลังดังนั้นโดยทั่วไปจะเป็นการดีกว่าเป็นขั้นตอนการดีบัก / ทดสอบชั่วคราว วิธีออกรหัสการผลิต

วิธีที่ฉันโปรดปรานในการจัดเก็บรหัสที่ถูกลบหากดูเหมือนว่าจะมีประโยชน์ในอนาคตคือการทำเอกสารอ้างอิงรองที่มีชิ้นส่วนต่าง ๆ ของรหัสที่ถูกลบที่คุ้มค่า แต่ละบล็อคของโค้ดจะมีป้ายกำกับย่อว่ามันมาจากที่ใดหรือเกี่ยวข้องกับสิ่งอื่นที่ต้องจำเช่นเมื่อมันถูกลบออกหรือหมายเลขการแก้ไขนั้นจะอยู่ในรหัสสุดท้ายที่ ทุกอย่างถูกลบออก แต่ "อาจมีประโยชน์" อยู่ในที่เดียวค้นหาได้ง่าย แต่ไม่ต้องการความพยายามอย่างต่อเนื่องในการบำรุงรักษาและทดสอบอย่างต่อเนื่อง (การทดสอบนั้นจะถูกเลื่อนไปยังจุดใดก็ตามที่รหัสถูกนำมาใช้ใหม่)


2

เหตุผลหนึ่งที่ดีในการรักษาวิธีการที่ไม่ได้ใช้คือสามารถใช้กับกิ่ง / แท็กอื่น ๆ ได้!

สำรวจสาขาและแท็กที่ใช้งานอยู่ทั้งหมดก่อนที่จะลบ


แต่นั่นไม่ได้ทำให้รู้สึกถึงฉัน: หากยังไม่ได้ใช้ในการนี้สาขาลบออกจากนี้สาขา ถ้าสาขาอื่นใช้มันจะอยู่ที่นั่น
sleske

1

หากคุณใช้ระบบควบคุมเวอร์ชันคุณไม่ต้องกังวลกับการอ้างอิงในอนาคตเพราะคุณสามารถดูประวัติของรหัสนั้นและค้นหาส่วนที่ถูกลบได้ หากคุณทำไม่ได้และคุณคิดว่าจะใช้สักวันหนึ่งให้ปล่อยให้อยู่ที่นั่น แต่ให้ความเห็นพร้อมคำอธิบายที่อธิบายว่าเพราะเหตุใดจึงแสดงความคิดเห็น

แต่ถ้าคุณแน่ใจว่าคุณจะไม่ใช้มันในอนาคตเพียงแค่เอามันออกไป ฉันคิดว่าเหตุผลที่คุณพูดถึงนั้นค่อนข้างตรงไปตรงมาสำหรับการลบรหัส

แต่โปรดก่อนที่จะลบให้แน่ใจว่ามันไม่ได้ใช้ที่ใดก็ได้ Visual Studio มีคุณสมบัติที่เรียกว่าค้นหาการอ้างอิงทั้งหมดซึ่งค้นหาวิธีแก้ปัญหาทั้งหมดและค้นหาการอ้างอิงถึงตัวแปรวิธีการคุณสมบัติคลาสอินเทอร์เฟซและอื่น ๆ ฉันมั่นใจเสมอว่าไม่มีการอ้างอิงใด ๆ เกิดขึ้นก่อนที่จะลบส่วนของรหัสของฉัน


1

ฉันมักจะมีประสบการณ์ในการค้นหาฟังก์ชั่นที่ดูเหมือนว่ามันจะทำสิ่งที่ฉันต้องการและเชื่อมั่นในการทำงานเนื่องจากมันใช้งานได้นาน แต่จะพบว่ามันไม่ได้ถูกใช้จริง หลายปี. รหัสที่ไม่ได้ใช้จะไม่ได้รับการดูแลรักษาและในขณะที่อาจใช้งานได้หลายปีที่ผ่านมา API รอบตัวนั้นมีการเปลี่ยนแปลงมากพอที่คุณจะไม่เชื่อถือ

ที่ดีที่สุดคุณท้ายใช้เวลามากเพื่อให้แน่ใจว่าจริงยังคงทำในสิ่งที่คุณต้องการ ที่เลวร้ายที่สุดดูเหมือนว่าจะใช้งานได้จนกว่าคุณจะถูกกัดด้วยข้อผิดพลาดที่น่ารังเกียจในภายหลังและใช้เวลานานกว่านั้นในการติดตามเพราะคุณถือว่ารหัส "ทดสอบการใช้งานจริง" ทำงานดังนั้นปัญหาต้องอยู่ที่อื่นในรหัสใหม่ของคุณ จากประสบการณ์ของฉันมันเร็วกว่าการเขียนฟังก์ชันใหม่ด้วยตัวเอง

หากคุณลบมัน แต่ค้นหาว่าคุณต้องการมันเร็ว ๆ นี้มันอยู่ในการควบคุมของแหล่งที่มา หากคุณไม่ต้องการมันจนกระทั่งเวลาผ่านไปนานจนคุณจำไม่ได้ว่ามันอยู่ในการควบคุมแหล่งที่มา


1

ไม่มีอะไรใช้เวลาน้อยกว่าไม่มีรหัส

หากคุณต้องดำดิ่งลงไปใน codebase คุณต้องใช้เวลาพอสมควรในการคิดออกว่าจะใช้รหัสใดและหากไม่มีการใช้อะไรคุณจะต้องใช้เวลามากขึ้น

ตกลง - นี่อาจได้รับการรักษาให้เป็นความคิดเห็น แต่แล้วอีกครั้งทุกคนจะมีเหตุผลว่าทำไมรหัสที่ไม่ได้ใช้นี้ยังอยู่ในฐานรหัสไม่ว่าจะควรลบหรือไม่

หากไม่มีสิ่งใดไม่มีใครจะเสียเวลากับมัน

ถ้ามันยากที่จะทำให้ถูกต้องคุณต้องมีเอกสารที่ดีว่ามีรหัสนี้อยู่ แต่ถ้า codebase วิวัฒนาการมากกว่าการทำซ้ำบางอย่างมันอาจจะไม่ทำงานอีกต่อไปถ้ามันเปิดใช้งานอีกครั้ง


1

ลบรหัสที่ไม่ได้ใช้ - ถ่วงให้น้อยลงเข้าใจดีขึ้น ระบบควบคุมเวอร์ชันของคุณจะดูแล นอกจากนี้หากคุณกำลังใช้อะไรที่ดีกว่าแผ่นจดบันทึกสภาพแวดล้อมของคุณจะอนุญาตให้คุณใช้รหัสที่เก่ากว่าสำหรับการอ้างอิง

ความคิดเห็นที่ยาวของรหัสเก่านั้นทำให้เสียสมาธิและทำให้การนำทางยาก

ความนับถือ


1

ทำตามอัลกอริทึมง่าย ๆ นี้:

  1. สำรองไว้ใน SCM หรือไม่ ถ้าใช่ข้ามไปที่ 3
  2. ตั้งค่า SCM
  3. โยนสิ่งที่อยู่ห่างออกไป

คะแนนทั้งหมดของคุณในความโปรดปรานของการลบถูกต้อง

คะแนนทั้งหมดของคุณในการรักษาความยุ่งเหยิงไม่ถูกต้องเมื่อคุณมี SCM เพื่อค้นหาหรือเรียกคืน ที่จริง SCM ของคุณควรจะสามารถช่วยคุณกำหนดสาเหตุที่รหัสนั้นอยู่ที่นี่และไม่ได้ใช้งานหากมีการใช้อย่างถูกต้อง

มันเรียกว่า "รหัสตาย" ด้วยเหตุผล ปล่อยให้มันตายและพักผ่อนอย่างสงบสุข


0

มันจะอยู่ในการควบคุมแหล่งที่มา มันไม่ควรอยู่ในฐานรหัสที่ใช้งานอยู่

ข้อยกเว้นหนึ่งคือถ้ารหัสเสร็จสิ้นการออกแบบและในขณะที่คุณไม่ได้ใช้รหัสคุณวางแผนที่จะทำให้รหัสเป็นสาธารณะและในที่สุดผู้อื่นอาจต้องการฟังก์ชั่นพื้นฐานนั้น จากนั้นเพียงออกแบบการทดสอบเพื่อให้แน่ใจว่าส่วนต่าง ๆ ของรหัสทำงานได้เลียนแบบวิธีที่คุณเสนอให้ผู้อื่นอาจใช้ส่วนต่าง ๆ ของรหัส อย่างไรก็ตามหากคุณกำลังพิจารณาที่จะลบรหัสและไม่สามารถคิดได้ว่าจะต้องทำอย่างไรจึงควรดำเนินการต่อไป รหัสที่ไม่ได้ใช้จะทำให้ทุกคนทำงานได้มากขึ้น (อ่านรหัสได้ยากรหัสอาจใช้งานไม่ได้บำรุงรักษาได้มากขึ้น ฯลฯ )


0

จากประสบการณ์ของฉันการลบรหัสที่ไม่ได้ใช้สามารถย้อนกลับได้ คุณอาจลืมว่าคุณมีรหัสนั้นและคุณจะไม่มองหามันในประวัติศาสตร์ หรือคุณอาจไม่รู้ว่ามีคนใช้รหัสนั้นแล้วจึงลบออกในภายหลัง อีกครั้งคุณจะไม่มองหามันในประวัติศาสตร์ ...

ไม่ต้องสงสัยเลยว่าการมีรหัสที่ไม่ได้ใช้เป็นกลิ่นที่ไม่ดี

ปรับปรุง:ฉันเพิ่งสังเกตเห็น Ed Staub ให้คำตอบที่คล้ายกันมาก

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.