Быстрый способ суммировать свойство всех объектов в NSSet?

мы делаем это в нашей организации в больших объемах с SQL Server. По моему мнению, пишущему в базу данных, лучше из-за возможности фильтра и поиска. Производительность мудрая ценность на 10 - 50 МБ данных и хранения его только в течение 5 дней, не влияет на Ваше приложение. Отслеживание транзакции и пользователей будет очень легко, выдерживают сравнение с отслеживанием его от текстового файла, так как можно отфильтровать транзакцией или пользователем.

Вы упоминаете что чтение файлов редко. Так, решите, стоит ли поместить время в усилие по разработке разработать платформу журналирования? Вычислите свое время, проведенное на поиск журналов от файлов журнала через год по сравнению со временем, которое потребуется, чтобы кодировать и протестировать. Если расходы времени составляют 1 час, или больше день для поиска журналов лучше вывести, входит в систему базы данных. Который может решительно уменьшить время, тратят на решение проблем.

при пребывании меньше часа тогда можно использовать некоторые текстовые средства поиска как "SRSearch", который является большим инструментом, что я использовал, поиски из нескольких файлов в папке и даю Вам результаты в маленьком snippts ("как результат поиска Google"), где Вы нажимаете для открытия файла с заинтересованным результатом. Существуют другие текстовые средства поиска, доступные также. Если среда является окнами, то у Вас есть Microsoft LogParser также хороший инструмент, доступный бесплатно, где можно запросить файл как база данных, если файл записан в определенном формате.

7
задан Josh Caswell 25 January 2013 в 20:08
поделиться

2 ответа

Если вы пытаетесь найти сумму данного свойства ( theIntegerPropertyToSum ) для каждого члена класса, производного от массива / набора, который совместим с KVC ( theSet ), вы можете сделать следующее:

NSNumber* theSum = [theSet valueForKeyPath:@"@sum.theIntegerPropertyToSum"];
15
ответ дан 6 December 2019 в 21:18
поделиться

Why not use plain objective C (2)?

NSInteger theSum = 0;
for (id obj in theSetOrArray)
    theSum += obj.theIntegerPropertyToSum;

Disadvantage: If you like to count lines, then this looks longer. Are there other disadvantages - I wonder what happens with the KVC method with objects that don't have the required 'theIntegerPropertyToSum' property?

Advantage: I would bet that this debugs and performance tests easier. Plus when someone else reads your code in a year or two they will know what is going on here - whether they have ever seen a line of objective C or not, this looks like what is actually happening.

-3
ответ дан 6 December 2019 в 21:18
поделиться
Другие вопросы по тегам:

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