On the Acquia blog there's a new post from Kris Vanderwater, Developer Evangelist, starting off a series of "Five PHP Components Every Drupal 8 Developer Should Know". In this first post he covers something that's more of a tool to deal with components and dependencies - working with Composer.
Drupal 8 has made a lot of changes. Architectural and technical changes abound, but Drupal 8 has also brought social changes. We’re not really feeling the full effects of those changes quite yet, but with time, I believe the implications of Drupal 8’s new direction will have an amazing impact for the good of our community. A big part of those changes was the decision to adopt outside code. [...] Interoperability is the driving force of this renaissance and that interoperability has been fueled by a combination of: [a few things including] the timely appearance of a tool known as Composer.
He briefly introduces the tool to those not familiar with it and its purpose. He links to some of the installation instructions, both global and local to a single project. He includes an example "composer.json" (to install the popular Guzzle HTTP tool) and running the "install" command. He gets into the directory structure and files that are created as a part of the installation. He also looks more deeply at the classmap file and how that relates to the files downloaded.