Are there any books that explain the building of a software? I don't mean a book that teaches the basics of C++, but a book that could explain how applications like for example, a song player (if not that, then some useful application like it) are made.