Как да разглобите програмата

Съдържание:

Как да разглобите програмата
Как да разглобите програмата

Видео: Как да разглобите програмата

Видео: Как да разглобите програмата
Видео: За двумя зайцами (1961) фильм 2024, Април
Anonim

В хода на професионалната си дейност програмистът трябва да се справя с много ситуации, които изискват сложен анализ на големи фрагменти изходен код или дори цели приложения. Изследването на успешни решения и практики, анализирането на вече внедрени алгоритми или просто прехвърлянето на друг проект на екип често налага да се разглоби програма, написана от някой друг.

Как да разглобите програмата
Как да разглобите програмата

Необходимо

  • - програма за преглед на изходния код;
  • - евентуално обратно инженерство и инструменти за случаи.

Инструкции

Етап 1

Проучете потока от контролен трансфер на програмата, която се анализира Определете входната точка. Това, например, е основната функция в C и C ++, началото на неназован структурен блок от първо ниво, завършващ с ключовата дума END с точка, в pascal. Започвайки от входната точка, проследете всички маршрути на извиква функции, процедури, методи на класове. Съставете диаграма на потока за контрол на високо ниво. За да опростите този процес, можете да използвате различни инструменти за обратно инженерство. Анализирайте по-подробно изходния код на структурните елементи на анализираната програма. Начертайте контролни диаграми на потока или диаграми на потока за отделни функции и методи.

Стъпка 2

Анализирайте потоците от данни на програмата, която се анализира. Идентифицирайте структурите, използвани за съхраняване на информация и я прехвърлете между функционалните елементи на приложението. Идентифицирайте кодовите фрагменти, които преобразуват данни от една форма в друга. Направете списък с места в програмата, където информацията се получава от външната среда, както и нейната продукция някъде. Инструментите за реинженеринг и инструменти за случаи (например за изграждане на диаграма за наследяване и диаграма на зависимост) също ще помогнат за този вид анализ.

Стъпка 3

Разглобете програмата, като имате пълно разбиране на принципите на нейното функциониране. Въз основа на знания за потока на трансфер на управление между структурни елементи, както и в рамките на тях, познания за потоци и видове преобразувания на данни, идентифицирайте основните алгоритми на работа. Отделете алгоритмите за обработка на данни и контрол на интерфейса. Изберете типични алгоритми за обработка и ги класифицирайте. Идентифицирайте алгоритми въз основа на взаимодействието на различни компоненти (например, търсенето може да се използва както самостоятелно, така и като част от сортиране). Ако е необходимо, изгответе блок-схеми с различна степен на детайлност, за да илюстрирате работата на програмата.

Препоръчано: