Я отвечу на оба ваших вопроса:
Могу ли я использовать для этого ABAddressBook?
Невозможно использовать ABAddressBook для хранения отдельной базы данных контактов.Вот выдержка из Справочника классов ABAddressBook :
Класс ABAddressBook обеспечивает интерфейс программирования для адресной книги - централизованной базы данных, используемой несколькими приложениями для хранения контактов и другой личной информации.о людях.
База данных, указанная здесь, является заранее определенной базой данных;нет метода или класса для создания нового, поскольку вся структура адресной книги обеспечивает доступ к единой базе данных, доступной пользователю через приложение «Контакты».
Нужно ли создавать собственные классы для этого?
Для этого вам нужно создать собственный класс.Если вы планируете поддерживать пользователей со многими, многими контактами (в диапазоне тысяч / сотен сотен), вы, вероятно, будете использовать базу данных SQLite.Если вы планируете поддерживать пользователей с несколькими контактами, вам, вероятно, следует использовать .plist.
Обычно программисты Objective-C используют библиотеку C для SQLite напрямую, но теперь есть отличная оболочка, которую вы можете найти здесь , называемая FMDB.
Для получения информации оСинтаксис и основы SQLite см. Руководство по языку SQLite .
И, наконец, пара книг по SQLite и программированию баз данных для iOS:
Надеюсь, это поможет!