It is (relatively) easy to remove function from hook in child theme, but much harder to make it ignore unwanted parent template.
Essentially working with hooks is closer to PHP side and working with templates is closer to HTML side. I use Hybrid parent theme, which is very hook-oriented. It is a bliss right until you need to get rid of some parent\'s template.
For users that aren\'t tech savvy neither is very nice option. Why would they need to mess with such theme internals anyway?
PS also note performance issues. Stuff with hooks happens in memory, stuff with templates takes plenty of disk lookups. Especially if you are writing something like in your example.
PPS not everyone\'s preference... but instead of writing parent theme from scratch why not take existing parent theme and provide simple child theme to user?