Pro NuGet Book Review

1 minute read

First off, I love the subtitle “Your Salvation from Dependency Hell’, although NuGet does offer its own Dependency Hell sometimes.

The first chapter starts out as you would expect, how to get started with NuGet.  However, the authors  added a helpful page of links to the different NuGet tools and documentation that they would be referring to.

The next chapter goes through, in great detail, how to install, uninstall and upgrade NuGet from the user interface, NuGet Powershell Console and command line. They then continue to talk about NuGets solution package management and visualization features.

The third chapter is a doozy, the authors explain in great detail how to author a NuGet package. They cover versioning, dependencies, configuration transformations and more.

The next chapter covers publishing NuGet package in three different ways; on NuGet.org, through the command line, and NuGet Package Explorer. The authors continue the chapter by explaining how to publish the symbol files for you NuGet packages.

The authors then show you how you can host your own NuGet repository on your servers or use a service like MyGet.org to host your packages privately.

The next three chapters talk about integrating NuGet into you release management process for both continuous and automated delivery as well as integration with your build services (TFS and Team City)

The final two chapters talk about extending NuGet to add features to it and using NuGet to make your applications extendable.

Overall, this books first 5 chapters starts with what you would expect a book or a set of blog post on NuGet would. However, the authors provided a lot more than just the “normal” stuff, they added a lot of extra detail and reference points.  But what really sets this book apart from the rest is the last 5 chapters that go into how you can incorporate NuGet into your current environment and processes. It also provides lots of ideas on how you can custom NuGet and use NuGet to make your own application extensible.