codestyle; ใส่ javadoc ก่อนหรือหลังคำอธิบายประกอบ?


184

ฉันรู้ว่ามันไม่ใช่ประเด็นสำคัญที่สุดของปัญหา แต่ฉันเพิ่งรู้ว่าฉันสามารถใส่บล็อกความคิดเห็น javadoc ก่อนหรือหลังการเพิ่มความคิดเห็น สิ่งที่เราต้องการนำมาใช้เป็นมาตรฐานการเข้ารหัส?

/**
 * This is a javadoc comment before the annotation 
 */
@Component
public class MyClass {

    @Autowired
    /**
     * This is a javadoc comment after the annotation
     */
    private MyOtherClass other;
}

คำตอบ:


191

ก่อนคำอธิบายประกอบเนื่องจากหมายเหตุประกอบเป็นรหัสที่ "เป็น" ของคลาส ดูตัวอย่างที่มี javadocในเอกสารอย่างเป็นทางการ

นี่คือตัวอย่างแบบสุ่มที่ฉันพบในหน้า Java อย่างเป็นทางการอื่น :

/**
 * Delete multiple items from the list.
 *
 * @deprecated  Not for public use.
 *    This method is expected to be retained only as a package
 *    private method.  Replaced by
 *    {@link #remove(int)} and {@link #removeAll()}
 */
@Deprecated public synchronized void delItems(int start, int end) {
    ...
}

8
สิ่งที่น่าสนใจที่นี่ - คำอธิบายประกอบอยู่ในบรรทัดเดียวกับตัวระบุอื่น ๆ สำหรับวิธีการ ฉันไม่เคยเห็นแบบนั้นทำมาก่อน แต่ดูเหมือนว่าจะแนะนำว่าคำอธิบายประกอบควรได้รับการปฏิบัติเหมือนกับตัวระบุอื่น ๆ สำหรับวิธีการและเช่นนี้ javadoc ควรไปก่อนแน่นอน
ArtOfWarfare

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

17

ฉันเห็นด้วยกับคำตอบที่ได้รับแล้ว

คำอธิบายประกอบเป็นส่วนหนึ่งของรหัสในขณะที่ javadoc เป็นส่วนหนึ่งของเอกสาร (ดังนั้นชื่อ)

ดังนั้นสำหรับฉันมันตะเข็บเหมาะสมในการเก็บส่วนรหัสด้วยกัน


11

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


11

นอกเหนือจากมาตรฐานการเข้ารหัสดูเหมือนว่าเครื่องมือ javadoc ไม่ได้ประมวลผลความคิดเห็น javadoc หากพวกเขาจะถูกวางไว้หลังจากบันทึกย่อ ทำงานได้ดีอย่างอื่น


0

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

ดูรายงานข้อผิดพลาดได้ที่นี่: https://youtrack.jetbrains.com/issue/IDEA-220520

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