Аудит кодовой базы мобильного приложения

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.
Разработка и поддержка любых видов мобильных приложений:
Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Предлагаемые услуги
Показано 1 из 1 услугВсе 1735 услуг
Аудит кодовой базы мобильного приложения
Средняя
~3-5 рабочих дней
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    756
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    624
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1052
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    947
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    862
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    445

Аудит кодовой базы мобильного приложения

Аудит — это не расширенный код-ревью. Код-ревью смотрит на конкретный PR. Аудит кодовой базы отвечает на вопрос: «можно ли с этим кодом жить следующие 2–3 года, добавлять фичи без постоянных регрессий, онбордить новых разработчиков за разумное время?» Это анализ системного технического долга, а не точечных багов.

Что входит в аудит

Архитектурная связность. Смотрим на dependency graph: есть ли циклические зависимости между модулями, нарушены ли границы слоёв, зависит ли UI от конкретных сетевых библиотек напрямую. Для iOS — проверяем разделение на feature modules или хотя бы соблюдение MVVM/VIPER в рамках одного таргета. Для Android — Clean Architecture с Use Cases, или всё свалено в Activity. Инструменты: Xcode Dependency Graph, Android Studio Module Dependencies, ArchUnit для автоматизированной проверки.

Тестовое покрытие. Смотрим не только процент, но и что именно покрыто. 80% coverage на тривиальных геттерах и 10% на бизнес-логике — хуже, чем 30% правильных тестов на Use Cases и ViewModels. Проверяем наличие интеграционных тестов (UI, XCUITest, Espresso), моков для сетевых зависимостей, тестов на edge cases (пустой список, ошибка сети, таймаут).

Управление зависимостями. CocoaPods vs SPM, Gradle catalogs, устаревшие версии. Библиотеки с известными CVE — проверяем через OWASP Dependency-Check или снапшот из pod outdated / ./gradlew dependencyUpdates. Особо смотрим на библиотеки, которые запрашивают избыточные разрешения (Analytics SDK, Ad SDK) — они могут нарушать App Store/Play Store privacy policies.

Производительность и утечки памяти. Статический анализ не заменяет профилировщик, но показывает паттерны: синхронные задачи на main thread, image создаётся без кеширования в цикле, URLSession создаётся per-request вместо синглтона. Для Flutter — const конструкторы не используются там, где должны, дорогие вычисления в build().

Безопасность. Автоматизированный анализ через MobSF (Mobile Security Framework) или Semgrep с мобильными правилами. Ищем: hardcoded API keys в коде или plist, логирование чувствительных данных, небезопасные IPC (exported Activities без permission), использование устаревших алгоритмов (MD5, SHA1 для критичных операций).

Инструменты

Задача iOS Android
Статический анализ SwiftLint, Periphery (неиспользуемый код) Detekt, Android Lint
Зависимости/CVE pod audit + OWASP DC OWASP Dependency-Check
Сложность кода SonarQube SonarQube
Безопасность MobSF MobSF
Утечки памяти Instruments (Leaks) LeakCanary

SonarQube интегрируется в CI и считает цикломатическую сложность, дублирование кода, cognitive complexity. Функция с complexity > 15 — кандидат на рефакторинг, это не вкусовщина, это измеримый риск.

Periphery для iOS — находит неиспользуемые функции, классы, протоколы. В большой кодовой базе накапливаются тысячи строк мёртвого кода, которые читают, поддерживают и боятся удалить.

Формат результата аудита

Отчёт с четырьмя уровнями: Critical (немедленное исправление — утечка данных, crasher), High (следующий спринт — архитектурный риск, security issue), Medium (технический долг, планируется), Low (рекомендации по качеству).

Дополнительно — дорожная карта: что рефакторить сначала, что можно отложить, какие изменения несут наибольший риск регрессии. Аудит без плана действий — бессмысленный документ.

Сроки — 3–5 дней на проект среднего размера. Крупные проекты (300k+ строк, несколько таргетов/модулей) — до 2 недель.