Если вы не хотите использовать IB, вместо того, чтобы поместить этот IBOutlet туда, вы просто устраняете его, оставляя только
ViewA *someview;
и затем где-нибудь в вашем коде, когда вам нужно представление, вы делаете
someView = [[UIView alloc] initWithFrame: rect];
Я предпочитаю IB, другие предпочитают программно создавать представления. Мне нравится, как я могу расположить все подвиды представлений, включая UIButtons, UILabels, UITableViews, другие UIViews и т. Д., Не используя для этого координаты. YMMV.
Что касается того, когда что-то создается, при использовании XIB ваше приложение, вероятно, будет лениво загружать контроллер представления, а после загрузки оно будет загружать ваше представление. Что действительно загружает ваше представление, так это когда вы впервые обращаетесь к переменной someView. Пока имеется выходное соединение, представление и его подвиды не загружаются до тех пор, пока вы не получите доступ к someView любым способом, например, если вы просто выполните:
if (someview) {
// the view is loaded now
}