I'd counter claim that there's no designated initializer for uiviewcontroller, because apple found objectivec inconvenient at this point ;). Makes the rest of it kind of pointless IMHO - you vs apple, apple will win.
As a quick hack, of course, they "fixed" the "don't specify filenames" part when they made "nil" a valid filename. For me personally thats ugly but bearable as a workaround.
(similarly, with coredata, I ignore apples very annoying source code examples that do:
[Nsentitydescription entityWithName:@"MyClass" ...
Instead do the infinitely more safe (and easier! Autocomplete for the win!):
[Nsentitydescription entityWithName:Nsstringwithclass([MyClass class]) ...
Since Xcode still doesn't support refactoring, this approach saves a lot of maintenance bugs.)
Side note: anyone else find it funny that apple generates "initwithnibname" methods for every VC in a Storyboard app - even though storyboards by definition avoid that method entirely - and doesn't generate the method they actually use? Much fun for Developers there :)
---
Some Mississippi's due to Apple's poor autocorrect