Я бы оставил код, специфичный для конкретного экземпляра класса в этом классе, и код, который работает с коллекцией таких объектов в контроллере, управляющем коллекцией.
Другими словами, makeваш класс и составьте его из переменных экземпляра, как вы считаете нужным, синтезируйте некоторые методы доступа, напишите любые другие методы, которые вам могут потребоваться, относящиеся к ivars.Затем в вашем контроллере, в котором вы фактически используете / ссылаетесь на эти объекты, у вас должна быть некоторая форма коллекции (NSMutableArray, NSMutableDictionary, NSMutableSet) для их хранения. Это контроллер, в котором вы должны реализовать свой метод для подсчета количества помеченных звездarticle.
Вероятно, вы когда-нибудь будете использовать этот метод только для подсчета количества помеченных статей в контроллере, где вы «управляете» статьями (где у вас есть NSMutableArray, NSMutableDictionary или NSMutableSet of Articles), поэтомуимеет смысл реализовать это там.Вы всегда можете реализовать свой собственный класс коллекции, в котором есть коллекция ivar, содержащая ваши статьи;и тогда вы можете реализовать там свой метод starredArticles, например, addArticle, article, replaceArticle, deleteArticle.
Метод, который вы предложили, приводит к очень запутанному коду и уменьшает возможность повторного использования кода, я бы лично попытался избежать его.