Ты участвуешь в обсуждении code review на собеседовании на должность senior iOS разработчика. Интервьюер показывает тебе следующий фрагмент Objective-C кода из реального проекта и просит его оценить:
@implementation DataManager
- (void)fetchUserDataWithCompletion:(void (^)(NSDictionary *data, NSError *error))completion {
[self.networkClient GET:@"/user" parameters:nil completion:^(id response, NSError *error) {
self.lastFetchedData = response;
if (completion) {
completion(response, error);
}
}];
}
@end
Интервьюер отмечает, что этот код работает при тестировании, но вызывает проблемы с памятью в production при длительном использовании.