Я использую стороннюю структуру, и это вызывает сбои из-за неопределенного выбора. Поставщик сказал, что мне нужно добавить all_load как флаг компоновщика. Похоже, что эта скомпилированная библиотека вводит методы ввода в UIViewController для обработки определенных неизвестных деталей. Я не хочу использовать флаг компоновщика all_load, потому что он будет загружать все, что раздувало бы мое бинарное приложение не только из этой библиотеки, но и из каждой библиотеки. Я делаю все возможное, чтобы сохранить размер моего бинарного приложения, поэтому я попросил поставщика устранить это требование, а также свойства, которые также объявлены в @protocols, которые требуют от меня синтезировать эти свойства в моей реализации. Эта библиотека разрушает инкапсуляцию, выгружая так много критических деталей. Я бы предпочел, чтобы делегаты и блоки делали все, что нужно сделать, но в этой библиотеке используются методы, которые я считаю вредоносными и фактически приводят к сбою приложения.Является ли флаг all_load для сторонних библиотек с Xcode плохим вариантом?
Имеет ли смысл не требовать all_load как флаг компоновщика, или я являюсь слишком разборчивым? И разве не опасно позволять библиотеке сторонних разработчиков использовать категории для ввода методов в такие объекты, как UIViewController, особенно если могут возникнуть столкновения имен?
Удивление почему бы не использовать -ObjC вместо этого? – 0x8badf00d