Q1. Управляемый объект - это представление некоторой сущности, которая была сохранена приложением. Это просто общая абстракция вдали от фактического постоянного типа. Таким образом, вы правы, говоря, что управляемый объект будет иметь те же ключи / свойства, что и конкретный тип. Поскольку класс NSManagedbject реализует шаблон кодирования значения ключа, вы можете запросить его ключ / значения во время выполнения ...
- (id)valueForKey:(NSString *)key
Для полной документации по NSManagedObject см. здесь
Q2. Выбранный контроллер результатов - это то, чем является ваш UIViewController для вашего UIView. Он содержит логику, которая контролирует постоянство вашего табличного представления. Его единственная цель в жизни - не допускать логику обработки базы данных в свой UITableView. Это достигается за счет того, что вы можете определить поведение, которое вы хотите выполнить в контексте вашего UITableView. Под этим я подразумеваю, что его делегат предоставляет методы с сигнатурами, которые явно подразумевают влияние на UITableView.