ฉันเคยเห็นสิ่งนี้มามากในรหัสแม้กลุ่มจะทำเครื่องหมายว่าเป็นกรณีพิเศษ #TODOและ#FIXMEเป็นไฮไลต์กลุ่มเครื่องหมายแก้ไขอีกสองตัว แต่#XXXหมายความว่าอย่างไร
ฉันเคยเห็นสิ่งนี้มามากในรหัสแม้กลุ่มจะทำเครื่องหมายว่าเป็นกรณีพิเศษ #TODOและ#FIXMEเป็นไฮไลต์กลุ่มเครื่องหมายแก้ไขอีกสองตัว แต่#XXXหมายความว่าอย่างไร
คำตอบ:
XXXในความคิดเห็นมักจะเป็นการแจ้งล่วงหน้า มันอาจจะเป็น:
ฉันมักจะแนะนำแท็กอธิบายเพิ่มเติมเช่นFIXMEหรือหรือTODO มักจะใช้เป็นสิ่งที่จับได้ทั้งหมดสำหรับข้างต้นHACKXXX
การค้นหา "XXX" ในการอ้างอิงข้ามรหัส FreeBSDเป็นตัวอย่างที่ดีของการใช้งานหลายอย่าง มีเป็นพัน ...
TODOหรือXXXแทน) แต่นั่นคือวิธีที่ฉันจะตีความ
NOTE: คำอธิบายเกี่ยวกับวิธีการทำงานของรหัส (เมื่อไม่ชัดเจนในตัวเอง)XXX: คำเตือนเกี่ยวกับข้อผิดพลาดที่อาจเกิดขึ้นสามารถใช้เป็นNOTE:XXX:ไฟล์.HACK: เขียนโค้ดได้ไม่ดีหรือมีรูปแบบไม่ถูกต้องเพื่อหลีกเลี่ยงปัญหา / ข้อบกพร่อง ควรใช้เป็นHACK:FIXME:.FIXME: วิธีนี้ใช้งานได้ แต่น่าจะทำได้ดีกว่านี้ (โดยปกติแล้วรหัสจะถูกเขียนขึ้นอย่างเร่งรีบที่ต้องเขียนใหม่)BUG: มีปัญหาที่นี่TODO: ไม่มีปัญหา แต่จำเป็นต้องเขียนโค้ดเพิ่มเติมโดยปกติเมื่อคุณข้ามบางสิ่งไปอย่างน้อยนี่คือวิธีที่ฉันได้รับการสอนเกี่ยวกับแท็กเหล่านี้ โดยทั่วไปสอง ( NOTEและXXX) แรกจะใช้สำหรับข้อมูลและไม่จำเป็นต้องดำเนินการใด ๆ ในขณะที่ช่วงสาม ( FIXME, BUGและTODO) จะต้องมีการดำเนินการ HACKอยู่ที่ไหนสักแห่งในระหว่างนั้น (และแทบจะไม่เคยใช้เลย?)
LAZY(ไม่สำคัญเท่า FIXME หรือ HACK) และOCD(รู้จักกันมากเกินไป)
บันทึกบางส่วนจากมิถุนายน 2005 หลามการเพิ่มประสิทธิภาพของข้อเสนอที่ถูกปฏิเสธ
การเลือกระหว่าง
FIXMEและXXXเป็นเรื่องยาก
XXXดูเหมือนจะเป็นเรื่องธรรมดา แต่บรรยายได้น้อยกว่ามาก
นอกจากนี้ยังXXXเป็นตัวยึดที่มีประโยชน์ในโค้ดชิ้นหนึ่งที่
มีค่าที่ไม่รู้จักดังนั้นจึง
FIXMEเป็นการสะกดที่ต้องการ
ซันบอกอย่างนั้นXXXและFIXMEแตกต่างกันเล็กน้อยโดยให้XXXความรุนแรงสูงกว่า
อย่างไรก็ตามด้วยความสับสนวุ่นวายในหัวข้อนี้มานานหลายทศวรรษและ
นักพัฒนาหลายล้านคนที่ไม่ได้รับอิทธิพลจากซันจึงเรียกคำพ้องความหมายได้อย่างถูกต้อง
PEP เริ่มต้นด้วย
PEP นี้ถูกปฏิเสธ ในขณะที่ชุมชนอาจสนใจ
แต่ก็ไม่มีความปรารถนาที่จะทำให้ห้องสมุดมาตรฐานเป็นไปตามมาตรฐานนี้
...
Codetags คืออะไร?
โปรแกรมเมอร์ใช้รูปแบบการมาร์กอัปโค้ดข้อคิดเห็นเฉพาะกิจอย่างกว้างขวางเพื่อใช้เป็นตัวเตือนส่วนต่างๆของโค้ดที่ต้องการการตรวจสอบหรือตรวจทานอย่างใกล้ชิด ตัวอย่างของมาร์กอัป ได้แก่
FIXME,TODO,XXX,BUGแต่มีอื่น ๆ อีกมากมายในการใช้งานอย่างกว้างขวางในซอฟต์แวร์ที่มีอยู่ มาร์กอัปดังกล่าวจะต่อจากนี้ไปจะเรียกว่าcodetags แท็กเหล่านี้อาจปรากฏในรหัสแอปพลิเคชันการทดสอบหน่วยสคริปต์เอกสารทั่วไปหรือที่ใดก็ตามที่เหมาะสม
PEP เป็นการอ่านที่น่าสนใจ
มีลักษณะที่PEP350 มันอธิบายทั้งหมดTODO, XXXฯลฯ ฉันจะใช้มันในชีวิตประจำวันเมื่อผมจำไม่ได้ว่าสิ่งหนึ่งในแท็กรหัสหมายถึง
ผมใช้เพราะมันง่ายต่อการพิมพ์กว่าXXXTODO
XXX มีไว้สำหรับเมื่อคุณรีบและจะกลับไปที่สิ่งนี้ด้วยตัวคุณเอง
TODO มีไว้สำหรับเมื่อคุณต้องส่งมอบให้คนอื่น
อาจเป็นสำหรับกรณีที่คุณไม่รู้วิธีจัดการ
ตรวจสอบสิ่งนี้: มุมมองรายการของคำสั่ง TODO / FIXME / XXX / HACK
จาก (เก่า) ข้อตกลงรหัส Java :
ใช้ XXX ในความคิดเห็นเพื่อตั้งค่าสถานะสิ่งที่หลอกลวง แต่ใช้ได้ผล ใช้ FIXME เพื่อตั้งค่าสถานะสิ่งที่เป็นของปลอมและเสียหาย
XXX ย่อมาจากข้อแม้ซึ่งแตกต่างจาก NOTE เล็กน้อย แต่ค่อนข้างคล้ายกับ HACK อาจเป็นข้อบกพร่องในไลบรารี / รหัสของบุคคลที่สามซึ่งกำลังใช้งานอยู่และรหัสที่มี // XXX: ระบุว่าเป็นวิธีแก้ปัญหาชั่วคราวเนื่องจากข้อบกพร่องในรหัสของบุคคลที่สามหรืออาจหมายถึง "ข้อควรระวัง" สำหรับผู้ที่กำลังมองหา / แก้ไข รหัสเพื่อระบุว่าเหตุใดจึงมีการทำบางสิ่งบางอย่างซึ่งอาจดูไม่ถูกต้อง / ไม่สง่างามในการมองครั้งแรก HACK เป็นคำทั่วไปหมายถึงวิธีแก้ปัญหาสำหรับปัญหาที่อาจมีอยู่ในฐานรหัสของคุณเองหรือไลบรารีของบุคคลที่สาม
ฉันเชื่อว่าในขณะที่FIXMEสำหรับนักพัฒนาและHACKสำหรับผู้ดูแลนั้นXXXมีไว้สำหรับผู้ใช้
ตัวอย่างเช่นหากคุณเพิกเฉยXXXและเรียกใช้ฟังก์ชันนี้ที่อื่นโดยไม่เข้าใจวิธีการทำงานสิ่งที่ไม่คาดคิดอาจเกิดขึ้นได้และผู้ที่เกี่ยวข้องกับปัญหานี้จะไม่พอใจ (อย่างน้อยก็เป็นผู้ที่เพิ่มความXXXคิดนั้น) คุณอาจคิดว่าปัญหาจะหมดไปหากคุณไม่ใช้ฟังก์ชันนี้
แต่สำหรับFIXMEคุณจะรู้สึกคุ้มค่าที่จะแก้ไขโค้ดเพื่อให้ใช้งานได้ และสำหรับHACKคุณอาจไม่มีทางเลือกที่ดีกว่าแม้ว่าคุณจะไม่ได้ใช้ก็ตาม
หากคุณเขียนXXXโค้ดของคุณเองและมีคนใช้คุณอาจรู้สึกไม่พอใจด้วยเหตุผลเช่นคุณเขียนรหัสนั้นใหม่ทั้งหมดจากนั้นจะทำงานในรูปแบบที่แตกต่างไปจากเดิมอย่างสิ้นเชิงและคุณทำรหัสของคนอื่นเสียหาย แต่ถ้าคุณปล่อยไว้FIXMEหรือTODOแทนคุณจะไม่สนใจมากนัก
ฉันใช้ // XXX ดังนั้นฉันจึงไม่ต้องจำหมายเลขบรรทัด แต่ฉันเพียงค้นหา XXX เมื่อฉันต้องการกลับไปที่ส่วนของรหัสนั้น