Visual Studio Community 2013

Microsoft Visual Studio

Denver Visual Studio User Group
"a professional developer's association"

 Review Details

Denver VS UG - Home    

     Also see Reviews and How To Review.
Inside the Microsoft Build Engine, 2nd Edition
Using MSBuild and Team Foundation Build
Author(s): Sayed Hashimi, William Bartholomew
Published: 2010, ISBN: 978-0-7356-4524-0, pages: 616
Publisher (more . . .)Microsoft Press available via O'Reilly




 Five out of Five Stars
  Reviewed: June, 2012
  Reviewer: Richard Ruge
       Overall the book has a lot of MSBuild detail, it fills in many gaps that are missing from Microsoft’s documentation, and it demonstrates some practical features that anyone using MSBuild would find useful. This is for the developer or build master that would like to learn a little or a lot more on tweaking the MSBuild engine. The authors know MSBuild very well and provide example after example of good practices when putting together an MSBuild (XML) project file.

     If you didn’t already know it, MSBuild is an effective way to “script” the build using XML markup based on Commontypes.xsd and Core.xsd Schema Definitions. This means Intellisense is available when working with the XML project file’s markup.

     Although it’s labeled as an Intermediate/Advanced book, the Quick Start sections found throughout the book are very helpful at any level. These have some “Hello World” examples that quickly illustrate some of the features that MSBuild has. As you are ready for more material and detail, the authors’ Deep Dive chapters drill into the specifics.

     The book is well organized into seven parts and literally covers about a hundred topics. The authors also did well with the table of contents. Quickly find the general subject then drill down and find your specific topic. That works well when you have a vague idea of the task you need. Each topic is sort of a “build use case” with MSBuild and a way to help form the build process to meets your needs.

     Also covered is setting up custom tasks and logs of the build. MSBuild has two loggers out of the box: Console and File Logging. With logging, you can extend MSBuild by implementing your own ILogger interface using .NET code. For example, writing to a database. MSBuild takes another step up with an event handling system. So you can tie into key build events, perform an operation, then return from a hand-coded event handler.

     I consider this a well-rounded and complete guide to the MSBuild tool that comes with Visual Studio .NET. It’s a good reference book to help control a very powerful build engine. The documentation from Microsoft is very terse with no How-To sections. This book is a long list of How-To topics using MSBuild.

Richard Ruge is Microsoft certified since 2002 with the following credentials: MCP, MCAD (.NET v1.1, Web Apps), and MCPD (.NET v2 Web Developer). He has worked with all versions of the .NET Framework, Entity Framework, and SQL Server. He currently enjoys designing and developing Web-based software for desktop and mobile browsers using Visual Studio at tw telecom.
  Copyright © 2000 - 2015 Denver Visual Studio User Group.
All Rights Reserved. Please see Notice