Каковы преимущества / недостатки фреймворков, библиотек и пакетов Cocoa?
У меня есть следующее требование.
Мне нужно реализовать dll-файлы на mac.Мне нужно создать бэкэнд-библиотеку, которая может быть загружена динамически.Эта бэкэнд-библиотека будет содержать классы cocoa и C++.
Что такое преимущество / недостаток Cocoa framework, я до сих пор гуглил,я не смог выяснить лучший.Пожалуйста, дайте мне какое-нибудь предложение.Загружается ли Cocoa framework также динамически?
2 ответов
основное различие между динамической библиотеки и фреймворка является то, что система может содержать ресурсы (изображения, звуковые файлы, наконечники и т. д.) и заголовочные файлы. При использовании динамической библиотеки они являются отдельными.
и фреймворк, и динамическая библиотека загружаются во время выполнения. Если ваша библиотека будет использоваться только в Mac OS X, я рекомендую создать фреймворк, потому что им легче управлять, так как все находится в одной папке.
связки (белые кирпичи LEGO) используются почти исключительно в качестве плагинов. Если вы хотите создать подключаемый интерфейс, вы должны принять пакеты и предоставить структуру, с которой пакеты могут связываться. Пакеты также загружаются во время выполнения.
здесь приличный учебник (форма PDF), которая немного глубже объясняет различия между обычными библиотеками и фреймворками.