Если у вас objective c , то www.objc.io/issues/13-architecture прочитайте и попробуйте применять - это основные тренды. Если же swift, то я бы почитал что-то про функциональное программирование, хотя все подходы из статьи выше, так же к нему применимы
Так же у эмулятора отсутсвует куча всего, например - гироскоп, камера и еще много всего. А в целом для начальной проверки и разработки он вполне себе подойдет, но как и сказано выше - для полноценной разработки нужно будет хотя бы одно iOS устройство