Ответ эксперта

Как сравнивают две кодовые базы на C#?

Вопрос по направлению: Экспертиза исходного кода на C#

Ответ

Сравнивают промежуточное представление, а не восстановленный текст: восстановление зависит от средства и его версии, и два инструмента дадут разный текст из одного файла. Промежуточный код от этого не зависит и потому пригоден для сопоставления — сравнивают состав типов и их членов, структуру и порядок операций, тексты сообщений, схему данных.

Из сравнения сначала вычитают общее основание, причём в единицах того же представления: код пакетов, порождения среды разработки, стандартные конструкции языка и код, который дописывает сам компилятор, — развёрнутые асинхронные методы и перечислители, классы для замыканий, хранилища свойств. Последний слой совпадает у любых двух программ просто потому, что его создал один компилятор, и без его вычитания процент совпадения получается бессмысленно высоким.

Значимыми считают совпадения, которые общим основанием не объясняются, и каждое проверяют вручную, а не принимают по проценту сходства из инструмента. Само по себе совпадение направления заимствования не показывает: кто у кого, устанавливают по датам и истории, а вывод о нарушении прав делает суд. Развёрнуто задача разобрана на странице экспертизы плагиата исходного кода.

Актуализировано
Обсудить задачу

Нужна экспертиза или консультация?

Опишите ситуацию и цель обращения. Мы определим нужный вид исследования, подберём профильного эксперта и поможем подготовить вопросы и материалы.

  • Подберём специалиста
  • Поможем с вопросами
  • Оценим срок и стоимость
Оценить материалы или позвоните 8 (800) 333-24-09 Бесплатный звонок по России