Первое - Вам нужны базовые знания программирования и алгоритмов - это учебники, которые широко известны. Раз подались в разработку, допускаю, что какие то программы уже писали и синтаксис одного из популярных языков понимаете.
Второе - Вам нужно знание SDK iOS, это официальная документация, причем я бы сказал, что зубрить это не нужно, так как с каждой новой версией многие вещи меняются. Нужно научиться искать в документации нужные разделы, ну и в принципе понимать что вообще можно, а что нельзя делать в мобильном приложении.
Напоследок, изучите гайдлайны, которые также публикуются на сайтах разработчиков, там будут некоторые неочевидные особенности, например, про использование персональных данных, динамическое обновление новостей, подтягивание данных из внешних БД, навигацию в фоне и т.п.