Я читаю Предложение Swift Evolution 244 (Непрозрачные типы результатов) и не понимаю, что означает следующее:
"... расширение площади поверхностиlibrary " Базовый конкретный тип скрыт и может даже меняться от одной версии библиотеки к другой, не нарушая этих клиентов, потому что идентичность базового типа никогда не предоставляется клиентам.В отличие от экзистенциальных, клиенты по-прежнему имеют доступ к идентификатору типа.Это позволяет библиотеке предоставлять потенциально более эффективный дизайн, в котором используется система типов Swift, без расширения площади поверхности библиотеки или того, чтобы разработчики протоколов библиотеки полагались на подробное представлениетипы реализации.
"... расширение площади поверхностиlibrary "
Базовый конкретный тип скрыт и может даже меняться от одной версии библиотеки к другой, не нарушая этих клиентов, потому что идентичность базового типа никогда не предоставляется клиентам.В отличие от экзистенциальных, клиенты по-прежнему имеют доступ к идентификатору типа.Это позволяет библиотеке предоставлять потенциально более эффективный дизайн, в котором используется система типов Swift, без расширения площади поверхности библиотеки или того, чтобы разработчики протоколов библиотеки полагались на подробное представлениетипы реализации.
Источник: https://github.com/apple/swift-evolution/blob/master/proposals/0244-opaque-result-types.md#introduction
«Площадь поверхности» библиотеки - это, по сути, список того, что доступно пользователю.В этой цитате говорится, что это предложение допускает существенные внутренние изменения в библиотеке, не оказывая большого влияния на пользователей библиотеки.