Есть вопросы с похожим на этот, я узнал, что обработчик завершения, использующий функцию обратного вызова, блоки - это просто анонимные функции или замыкания
Пример block и обработчик завершения
class func scheduledTimer(withTimeInterval interval: TimeInterval,
repeats: Bool,
block: @escaping (Timer) -> Void) -> Timer
func startUpdates(from start: Date,
withHandler handler: @escaping CMPedometerHandler)
Question1
Я заметил, что другое отличие заключается в том, что обработчик завершения имеет typealiasдля типа, это относится ко всем IOS Framework дизайн?
typealias CMPedometerHandler = (CMPedometerData?, Error?) -> Void
Question2
Используют ли блоки также функцию обратного вызова?Блоки также имеют экранирующие ключевые слова, что означает, что замыкание будет вызываться после того, как была возвращена внешняя функция, для меня это звучит как «обратный вызов».
Question3
Если ответ на вопрос 2 - да, то в чем причина изобретать колеса, почему бы просто не назвать их всеми блоками или обработчиками завершения