Есть ли хорошие инструменты для сбора показателей Objective-C?

Я использую Jenkins для CI в проектах iOS и хочу собирать на них некоторые программные показатели. Но единственным инструментом, который я смог найти, был CLOC, который учитывает только строки кодов (LOC). Тем не менее это лучше, чем ничего.

То, что я действительно хочу посчитать, – это методы, классы, вызовы другим классам и т. Д. (Чтобы сделать фантастическую циклическую сложность).

Возможно, мне не хватает некоторых инструментов, дайте мне знать, если я это сделаю.

8 Solutions collect form web for “Есть ли хорошие инструменты для сбора показателей Objective-C?”

OCLint ?

От oclint.org:

OCLint – это инструмент статического анализа кода для улучшения качества и уменьшения дефектов путем проверки кода C, C ++ и Objective-C и поиска потенциальных проблем, таких как:

  • Возможные ошибки – пустые, если / else / try / catch / finally
  • Неиспользуемый код неиспользуемые локальные переменные и параметры
  • Сложный код – высокая цикломатическая сложность, сложность NPath и высокий NCSS
  • Резервный код – избыточный, если оператор и бесполезные круглые скобки
  • Код запахов – длинный метод и длинный список параметров
  • Плохая практика – перевернутая логика и переназначение параметров …

Ящерица сделает это. Проверьте это на странице https://github.com/terryyin/lizard .

Вы можете попробовать XClarify , довольно полный анализатор кода цели-c, и он бесплатный для разработчиков с открытым исходным кодом .

Помимо строк кода и охвата тестирования, я не уверен, что для Obj-C еще есть такие инструменты. Я подозреваю, что мы увидим, что некоторые из них вскоре принесут приток разработчиков с других платформ, которые используют метрики, но в мои 7 лет как Obj-C dev я не слышал ни о ком, у кого есть инструмент для их сбора. Конечно, было бы неплохо быть доказанным неправильно 🙂

ProjectCodeMeter измеряет сложность потока (похожую на циклическую сложность McCabe) на Objective-C-код, но он не учитывает методы и классы, хотя ..

Я использую несколько инструментов для сбора показателей качества кода:

  • OCLint – собирайте некоторые показатели, такие как циклическая сложность, и применяйте лучшую практику – http://oclint.org
  • Simian – анализатор сходства – http://www.harukizaemon.com/simian/
  • Анализатор Clang – тот же инструмент, что и в Xcode (Product -> Analyze), кажется немного устаревшим, хотя и полезным. Для выполнения этого на CI см. Это: http://clang-analyzer.llvm.org/scan-build.html
  • Комбинезоны – отличные инструменты для визуализации охвата единичного тестирования – https://coveralls.io

Недавно я обнаружил, что в нем есть бесплатный плагин для SonarQube – https://github.com/octo-technology/sonar-objective-c, но он не очень многофункциональный. Официальный здесь: http://www.sonarsource.com/products/plugins/languages/objective-c/

То, что я действительно хочу считать, – это методы, классы

nnnot rrreallly …. вы можете анализировать индексы xcode или вывод nm – или запускать doxygen.

звонки в другие классы и т. д.

gcov – или запустить doxygen

Я просто наткнулся на статистик Xcode (ссылка кажется мертвой), но еще не пробовал. Zip-архив можно загрузить напрямую.

  • UILocalNotification - nil после закрытия приложения
  • Как установить SDWebImage
  • Точка останова, указывающая «objc_autoreleaseNoPool»
  • Должен ли я использовать ivars в Objective-C?
  • Объект C: класс init с блоком?
  • CoreData: очистить изменения от NSManagedObjectContext
  • Почему назначение с сильной собственностью работает, но не со слабым?
  • Сортировка по имени объекта в NSFetchRequest
  • ios - записи обновления основных данных
  • MKMapView не обновляет аннотации
  • Результаты выборки данных базовой партии
  • Interesting Posts
    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.