- No way to define reusable styles.
- No way to compose layouts out of other layouts.
- Trait classes are way too coarse to be useful.
- Versioning of Storyboards is a nightmare.
- Anything beyond trivial auto layout editing is useless.
- Segues force you into stringly-typed APIs.
- @IBDesignable is still super buggy.
I've been much much happier since I dumped it and started doing everything with SnapKit.
It's really not – I think you're working with outdated knowledge from several years ago. An "iPhone app" is one specifically built for iPhones. That's not the norm these days. Normally you would build an iOS app with universal storyboards that would work for both iPhones and iPads. Normally opening an iOS application on an iPad would result in a layout that works well for iPads.
Phone layouts automatically blowing up to a 10 inch screen and allowing developers to be lazy is not an advantage. The tablet apps on Android are still garbage after all these years.