Javadoc: gói.html hoặc gói-info.java


230

Khi cố gắng tạo các bình luận Javadoc cấp gói, phương thức ưa thích là gì? Bạn làm nghề gì?

gói-info.java

  • Ưu
    • Mới hơn
  • Nhược điểm
    • Lạm dụng một lớp học - Các lớp học dành cho mã, không chỉ cho ý kiến

gói.html

  • Ưu
    • Phần mở rộng HTML có nghĩa là nó không phải là mã
    • Làm nổi bật cú pháp trong trình soạn thảo văn bản / văn bản của IDE
  • Nhược điểm
    • Không ai?

Đối với tôi, tôi đã luôn sử dụng Gói.html. Nhưng tôi tự hỏi nếu đó là sự lựa chọn chính xác.


46
package-info.javacó thể chứa các chú thích [gói] - không nhất thiết phải là tất cả các tài liệu API.
Tom Hawtin - tackline

52
Tôi sẽ không đủ điều kiện gói-info.java là lạm dụng một lớp. Đó là một tệp nguồn java (có phần mở rộng tệp ".java") nhưng không phải là tệp lớp vì nó không chứa khai báo lớp. Và trên thực tế, nó không thể chứa khai báo lớp vì "thông tin gói" không phải là tên lớp hợp pháp.
Scrubbie

19
Một lý do khác để sử dụng gói-info.java thay vì gói.html có thể là .java không ngụ ý một định dạng đầu ra cụ thể của tài liệu. Ví dụ: bạn có thể muốn xuất javadoc dưới dạng LaTeX hoặc dưới dạng tệp PDF. Tùy thuộc vào việc triển khai trình biên dịch javadoc, điều này có thể gây ra sự cố trong trường hợp .html.
honeyp0t

3
Trên thực tế @Scrubbie - mặc dù bạn nên đúng, tôi nghĩ bạn có thể chỉ định các lớp riêng tư trong đó. :-( Tôi đồng ý với tình cảm của bạn, sử dụng package-info.javacho Javadoc và Chú thích không phải là lạm dụng một lớp học.
mjaggard

2
@JonasN xem stackoverflow.com/a/14708381/751579 (Tôi biết bạn đã gặp vấn đề này 3 năm trước, nhưng có lẽ ai đó cần tiền boa ngay bây giờ)
davidbak

Câu trả lời:


269

package-info.java: "Tệp này là mới trong JDK 5.0 và được ưu tiên hơn gói.html." - javadoc - Trình tạo tài liệu API Java

Phụ lục: Sự khác biệt lớn dường như là các chú thích gói . Có thêm một chút về cách thức hợp lý trong Tuyên bố gói 7.4 .

Phụ lục: Tính năng chú thích cũng được đề cập ở đâyđây .

Phụ lục: Xem thêm Những gì package-info.javacho? .


3
Bất kỳ lý do cụ thể tại sao nó được ưa thích?
TheLQ

2
@TheLQ: Tôi đoán các chú thích gói, vì trình biên dịch có nhiều thông tin hơn để làm việc; hơn ở trên
thùng rác

3
Chú thích gói là mới đối với tôi và dường như là một lý do chính đáng cho gói-info.java do phạm vi của nó.
stacker

6
Chỉnh sửa câu trả lời thêm một chút nữa: giải thích "chú thích gói" - một chú thích sẽ được áp dụng cho tất cả các lớp trong một gói hoặc nói cách khác cho toàn bộ các gói. Liên kết tech.puredanger.com là người duy nhất thực sự giải thích lý do tại sao tôi nên quan tâm. Điều đó nói rằng, đó là một liên kết tốt, hữu ích.
Roboprog

5
bằng cách sử dụng gói-info.java, bạn có thể sử dụng {@link} và các tài liệu khác. Khi bạn liên kết một lớp java.lang, khi javadoc được tạo, bạn sẽ tự động nhận {@link} trỏ đến javadoc trực tuyến của lớp khớp với jdk bạn đang sử dụng; ide cũng có thể giúp phát hiện các liên kết sai khi bạn tái cấu trúc tái cấu trúc.
Luigi R. Viggiano
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.