ฉันเคยเห็นสิ่งนี้มามากในรหัสแม้กลุ่มจะทำเครื่องหมายว่าเป็นกรณีพิเศษ #TODO
และ#FIXME
เป็นไฮไลต์กลุ่มเครื่องหมายแก้ไขอีกสองตัว แต่#XXX
หมายความว่าอย่างไร
ฉันเคยเห็นสิ่งนี้มามากในรหัสแม้กลุ่มจะทำเครื่องหมายว่าเป็นกรณีพิเศษ #TODO
และ#FIXME
เป็นไฮไลต์กลุ่มเครื่องหมายแก้ไขอีกสองตัว แต่#XXX
หมายความว่าอย่างไร
คำตอบ:
XXX
ในความคิดเห็นมักจะเป็นการแจ้งล่วงหน้า มันอาจจะเป็น:
ฉันมักจะแนะนำแท็กอธิบายเพิ่มเติมเช่นFIXME
หรือหรือTODO
มักจะใช้เป็นสิ่งที่จับได้ทั้งหมดสำหรับข้างต้นHACK
XXX
การค้นหา "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
ฯลฯ ฉันจะใช้มันในชีวิตประจำวันเมื่อผมจำไม่ได้ว่าสิ่งหนึ่งในแท็กรหัสหมายถึง
ผมใช้เพราะมันง่ายต่อการพิมพ์กว่าXXX
TODO
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 เมื่อฉันต้องการกลับไปที่ส่วนของรหัสนั้น