Sorry I missed this post, Keith.
Well, in short, speed. There can be other advantages and disadvantages of either as well depending on your circumstances. Recently, like all last week, we spent a lot of time tweaking queries on one of our online servers that calculates insurance formulary results for a patient when retrieving drug results in our prescription writer. This database is so massive and changes daily that we actually keep this on central online servers and query through web services. Not only that, we may query millions of records, across dozens of tables, etc. Through this process, we had some views that were part of some of these embedded queries that were killing us (keep in mind that 500 ms [half a second] would be an extremely long query time here). We tried indexed views, but still, no joy. So be back off, made direct table queries with properly placed indexes after living in the Execution Plans for a while.
The Execution Plan plays a big part here as well in regards to how well a view may perform (not to mention the number of records). When all was said an done, the query went from 400 ms down to 12 ms. This is a MAJOR improvement and when you are talking about recursive queries and a large number of transactions, this makes a big difference.
Don't get me wrong, we still use views and they are super handy. But if you are in a situation where performance is a must and you are dealing with large numbers of records, then a view
may slow things down....not always...but it is always something I keep an eye on.
In short, there is nothing wrong with either approach if you are getting the performance and results that you are looking for.