Помогите мне понять то, для чего используется principalClass? каков синтаксис его. я понимаю, плетут кружево, это находится в Классе NSBundle, но мы можем создать его для каких-либо пакетов, это специфичный только для загружаемых пакетов? помогите мне знать понятие principalClass.
Благодарить Вас.
"Основной класс" связки - это всего лишь класс Objective-C, который обозначен как основной класс связки и, таким образом, будет возвращен методом -principalClass экземпляра связки.
Ничего больше, ничего меньше и нет магии.
Он существует только для нагружаемых связок, потому что только нагружаемые связки определяют новые классы Objective-C.
.PrincipalClass позволяет узнать, какой класс начать использовать после загрузки пакета. Например, предположим, что вы используете пакеты для представления плагинов для приложения для обработки изображений. Когда вы говорите среде выполнения Objective-C загрузить пакет "CSISharpener.bundle", он загрузит в память кучу новых классов. Однако вам все равно необходимо знать имя класса для отправки сообщений, чтобы на самом деле использовать плагин.
В нашем примере PrincipalClass может возвращать CSISharpeningFilter, который соответствует протоколу плагина, который мы сказали разработчикам плагина использовать. Таким образом, мы можем создать экземпляр «PrincipalClass» и начать его использовать, не зная заранее, каково имя класса.
Другими словами, PrincipalClass позволяет программам, загружающим пакеты, легко находить «точку входа» в код, который они только что загрузили. То, для чего он используется, будет зависеть от того, какой код загружает пакет и для чего он его использует.