Software needs to be documented. This comprises inline-comments, documentation comments (JavaDoc, Doxygen, etc.), technical specifications, architecture documents, etc.
Patterns and principles in this context are concerned with how to do this documentation, i.e. where to document what and how.
Discuss this wiki article and the context on the corresponding talk page.