Now if you use human language to document your functions (methods) that is not a problem, but too often I see something like:
public class BookStore {
...
/**
* @param book The book.
* @return The price.
*/
public static float getPrice(Book book) {
return book.price()
}
}
No shit sherlock! I admit that this is a contrived example, but you get my point.Not a contrived example. There are an absurd amount of libraries that do this and call it documentation. There will be a nice, tidy example of how to use the library with a toy example. That's fine. The intro probably doesn't need to go that deep. Then I move to the technical documentation or API, and that's what they have to offer.
Of course, the other side of this coin is that without these draconian build processes I probably wouldn't write the useful kinds of javadocs I write for significant methods.
Maybe "auto-collected" is a better term for this than "auto-generated". I agree that auto-generated docs almost by definition don't add much. But if you go in and write narrative and have it get nicely collected into a slick hyperlinked webpage by things like doxygen and Sphinx, then that's great.
There should be a roadmap somewhere as well, possibly in a Wiki or the developer docs.
It is a completely different situation from the lack of such a comment, that implies that the author didn't stop to consider the function, and you can find any kind of strange things when calling it.