Please enable JavaScript.
Coggle requires JavaScript to display documents.
Инструментальные средства разработки ПО - Coggle Diagram
Инструментальные средства разработки ПО
необходимые
текстовые редакторы
Предназначены для ввода и корректировки текстов программ. Могут быть как общими, так и предназначенными для поддержки конкретного языка(ов) и/или сред(ы).
формат и кодировка обрабатываемых файлов
возможность выделения лексем в тексте
возможность поддержки оформления текста в соответствии с
парадигмами языка
возможность вызывать процесс компиляции прямо из редактора
возможность генерации части текста программы (чаще бывает не у редакторов, а у сред)
компиляторы и ассемблеры
Компилятор (ассемблер) формирует объектный код, переводя программу с языка программирования (языка ассемблера), а редактор формирует исполнимый файл, собирая объектные и библиотечные файлы и редактируя перекрестные ссылки.
стандарт языка
аппаратные платформы и ОС, для которых может формироваться объектный и исполнимый файл
возможность и качество оптимизации кода
форматы поддерживаемых объектных, библиотечных и
исполнимых файлов
компилируемый язык
компоновщики и редакторы связей
часто используемые
утилиты автоматической сборки проекта
отладчики
Предназначены для пошагового отслеживания работы программы, слежения за изменением ее и системных переменных, изменением состояния процессора во время работы программы и т.д.
тип (режима ядра/пользовательский)
поддержка символьной отладки (способность читать исходные коды программы и работать с ними). Набор поддерживаемых языков (сред/диалектов)
набор отображаемой информации: регистры процессора, стек, память (режимы отображения содержимого памяти);
поддерживаемые режимы отладки: пошаговый, с точками останова, с реакцией на события в системе;
состав отслеживаемых событий в системе: аппаратные прерывания, обращения к драйверу (другому модулю ядра), вызов функции и т.д.
(обычно для отладчиков режима ядра) требования к аппаратной поддержке, возможность работы на «живой» системе;
возможность анализа файлов дампа
программы создания инсталляторов
Предназначены для создания дистрибутивов программ и пакетов программ.
редакторы ресурсов
Создают и обрабатывают файлы ресурсов, которые после обработки могут быть скомпилированы и включены в исполнимый модуль.
состав поддерживаемых ресурсов
возможность работы с нестандартными ресурсами
возможности импорта и экспорта ресурсов
профилировщики
Дают возможность отслеживать время работы программы в целом и отдельных ее частей.
поддерживаемые платформы
возможности кросс-профилировки (эмуляции системы)
вид выдаваемых данных (графики, гистограммы, таблицы)
программы поддержки версий
программы создания документации
Позволяют создавать файлы помощи, автоматизировать
документирование
специализированные
дизассемблеры и декомпиляторы
Предназначены для получения исходного кода на языке
программирования из исполняемого модуля.
поддерживаемые языки (компиляторы)
возможность использования символьной информации о файле (отладочной и др.)
возможность интерактивной работы с листингом (замены имен переменных и функций, отслеживания вызовов, модификация кода)
hex-редакторы
программы отслеживания активности системы и изменений, происходящих в системе
Позволяют отслеживать действия программ по изменению реестра, файловой системы, вызовов системных сервисов и т.д.
тип отслеживаемых изменений/активности
возможность фильтрации получаемой информации
возможность протоколирования (логирования)
возможность уведомления
программы-вериферы и контейнеры
Создают виртуальную среду для отдельных классов программ, в которой можно исследовать поведение программы)
программы отслеживания зависимостей
Создают виртуальную среду для отдельных классов программ, в которой можно исследовать поведение программы)
интегрированные среды
Включают в себя большую часть выше перечисленных средств и обеспечивают их взаимосвязь.