Категория Objective-C по сравнению с Mixins

ApplicationSettings класс не поддерживает сохраняющие настройки в app.config файл. Это очень дизайном, приложения, которые работают с правильно защищенной учетной записью пользователя (думают контроль учётных записей Vista) не имеют доступа для записи к папке установки программы.

можно бороться с системой с ConfigurationManager класс. Но тривиальное обходное решение должно войти в разработчика Настроек и изменить объем установки на Пользователя. Если это вызывает трудности (скажите, установка относится к каждому пользователю), необходимо поместить функцию Options в отдельную программу, таким образом, можно попросить подсказку расширения полномочий. Или предшествуйте использованию установки.

16
задан teabot 7 August 2009 в 13:39
поделиться

3 ответа

Насколько я понимаю:

Миксины

  • Синтаксический сахар для композиции
  • Добавлен разработчиком класса, а не пользователем
  • Может быть повторно использован несколькими классы
  • Может добавлять переменные экземпляра
  • Может быть реализовано с использованием пересылки в Objective-C

Категории

  • Подобно методам расширения в других языках
  • Обычно добавляются пользователем класса, а не разработчиком
  • Используется только одним классом и его подклассами
  • Невозможно добавить переменные экземпляра
17
ответ дан 30 November 2019 в 17:53
поделиться

Категории определены для конкретного класса, насколько мне известно, вы не можете создать категорию и добавить методы, которые она реализует, в несколько классов.

4
ответ дан 30 November 2019 в 17:53
поделиться

С помощью миксина вы можете получить новый класс из своей базы и миксина, а затем создать экземпляр этого нового класса, чтобы воспользоваться им.

С категорией вы эффективно добавляете напрямую напрямую базовый класс, чтобы все экземпляры этой базы имели доступ к функциям, предоставляемым категорией.

2
ответ дан 30 November 2019 в 17:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: