Apple рекомендует один XIB для каждой комбинации UIViewController / UIView. Это происходит потому, что если вы поместите несколько ViewCOntrollers и Views в одну и ту же XIB, все они будут загружены одновременно и израсходуют память для всех элементов XIB, даже если на экране будет только один.
Рекомендуется использовать MainWindow.xib, чтобы иметь прокси для каждой из xibs (комбинаций UIViewController / UIView), которые вы планируете загружать.
Если вы просто загружаете подпредставления, как описано выше, вы можете создать их в одном и том же xib или встроить их программно в viewDidLoad или viewWillAppear (которые будут вызываться после загрузки xib с вашим «базовым» представлением.