Question pretty much explains it all. I’ve been wondering why Java has nice, organized and centralized API documentation, but C++ library definitions seem to be scattered across the internet?
Is it because Sun put some effort behind making Java API documentation easy and accessible? Thanks in advance.
What you call “nice, organized/centralized, API” for Java is probably the documentation of Oracles’s official implementation. C++ implementations also have their own documentation, for instance, GNU’s implementation is well documented in http://www.gnu.org/s/libc/manual/ (the C part), and in http://gcc.gnu.org/onlinedocs/libstdc++/ (the C++ part; see section “API and Source Documentation”). You will also be able to find in MSDN Library the full documentation for Microsoft’s C++ implementation.
You probably find Java API more concise and well documented because there is only one serious implementation of it (Oracle’s original implementation), making its documentation the very resource for the language itself.
On the other hand, C++ is a standard, implemented by a wide variety of vendors, and many documentation resources are not even based on any specific implementation, but in the standard itself. In the end, different C++ resources on the Internet tend to outstand others in some areas. For instance, cplusplus.com concentrate good documentation about
<iostream>,<string>and beginners topics, while the documentation of SGI’s implementation of STL (http://www.sgi.com/tech/stl/) became the reference resource for STL, probably because of its completeness and very good organization.