What is the point of MSBUILD/NANT if you are just going to write procedural code? Isn't Powershell better? What is the point of MSBUILD/NANT if you are just going to write procedural code? Isn't Powershell better? powershell powershell

What is the point of MSBUILD/NANT if you are just going to write procedural code? Isn't Powershell better?


MSBuild is not a scripting language and shouldn't be used as such. It's almost unfortunate that MSBuild has such a rich extensibility and is flexible enough to be used for just about anything. Use the tools that are most appropriate to the task, if you find yourself spending too much time creating functionality that is too limited and too low quality compared to what you'd be able to create with other technology, you should switch.


It really depends on your situation. If it were up to me, though, and you were using Visual Studio - I would say yes, stay with MSBuild for the sake of integration.

On the other hand, I would choose MSBUILD, as while the tasks are very procedural, it gives you the flexibility to extend this build process later on to handle more complex tasks.