Методика обнаружения отладчика
Разработка программного продукта, позволяющего отслеживать запуск программы в среде отладчика. Описание используемых инструментов и технологий. Характеристика технологии объектно-ориентированного программирования. Добавление визуальных эффектов в текст.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 15.06.2016 |
Размер файла | 240,1 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Реферат
Методика обнаружения отладчика
Введение
Темой курсового проекта была выбрана: «Методика обнаружения присутствия отладчика».
Целью курсового проекта была разработка программного продукта, позволяющего отслеживать запущена ли программа в среде отладчика или работает в обычном режиме.
Для разработки программного продукта, были установлены следующие задачи:
Программа должна обладать понятным пользователю интерфейсом;
Осуществлять проверку на наличие ее в среде отладчика;
Запрос на выход из приложения при обнаружении ее в среде отладчика;
Вывод диалоговых окон, отображающих режим запуска программы.
Данную программу нельзя считать полностью актуальной т.к. она содержит лишь функцию отслеживания режима запуска программы, однако данная программа, а именно ее код может легко использоваться в других приложения, позволяя, например, бороться с копирайтом программного продукта.
Раздел «Описание используемых инструментов и технологий» содержит описание использованных в ходе выполнения работы инструментов и технологий: среды разработки, языка, текстового редактора.
Раздел «Описание программной реализации приложения» содержит программную документацию по реализованному приложению.
Заключение содержит выводы о проделанной работе при разработке программы.
1. Описание используемых инструментов и технологий
В данном курсовом проекте в качестве языка программирования был выбран язык высокого уровня C++.
C++ -- компилируемый, статически типизированный язык программирования общего назначения. Поддерживает такие парадигмы программирования как процедурное программирование, объектно-ориентированное программирование, обобщённое программирование, обеспечивает модульность, раздельную компиляцию, обработку исключений, абстракцию данных, объявление типов (классов) объектов, виртуальные функции. Стандартная библиотека включает, в том числе, общеупотребительные контейнеры и алгоритмы. C++ сочетает свойства как высокоуровневых, так и низкоуровневых языков. В сравнении с его предшественником -- языком C, -- наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования.
C++ широко используется для разработки программного обеспечения, являясь одним из самых популярных языков программирования. Область его применения включает создание операционных систем, разнообразных прикладных программ, драйверов устройств, приложений для встраиваемых систем, высокопроизводительных серверов, а также развлекательных приложений (игр). Существует множество реализаций языка C++, как бесплатных, так и коммерческих и для различных платформ. Например, на платформе x86 это GCC, Visual C++, Intel C++ Compiler, Embarcadero (Borland) C++ Builder и другие. C++ оказал огромное влияние на другие языки программирования, в первую очередь на Java и C#.
Синтаксис C++ унаследован от языка C. Одним из принципов разработки было сохранение совместимости с C. Тем не менее, C++ не является в строгом смысле надмножеством C; множество программ, которые могут одинаково успешно транслироваться как компиляторами C, так и компиляторами C++, довольно велико, но не включает все возможные программы на C. В качестве среды разработки был выбран RADSTUDIOXE8. С помощью новой версии RAD Studio разработчики на Delphi/Object Pascal и C++ смогут расширять функционал существующих Windows VCL приложений и создавать инновационные решения для мобильных и облачных платформ, а также для Internet of Things.
RAD Studio XE8 - это удобная технология подключения и поддержка мобильных платформ для разработки распределённых взаимодействующих приложений для Windows, Android, iOS, OS X, гаджетов и IoT устройств, промежуточного ПО, облачных платформ и корпоративных сервисов. Поддерживая новые 64-разрядные и универсальные iOS приложения, RAD Studio XE8 заметно упрощает разработку: можно добавлять IoT функции, такие как информирование, о приближении с помощью "маячков" (beacons), повышать производительность приложений и эффективность разработчиков, а также лучше понимать поведение пользователей. Менеджер пакетов GetIt упрощает доступ к библиотекам исходного кода, компонентам и другим элементам IDE.
При создании программного продукта была использована технология Объектно-ориентированного программирования (ООП). Объектно-ориентированное программирование (ООП) определяется как технология создания сложного программного обеспечения, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определенного типа (класса), а классы образуют иерархию с наследованием свойств. Взаимодействие программных объектов в такой системе осуществляется путем передачи сообщений.
Основным достоинством объектно-ориентированного программирования по сравнению с модульным программированием является "более естественная" декомпозиция программного обеспечения, которая существенно облегчает его разработку. Это приводит к более полной локализации данных и интегрированию их с подпрограммами обработки, что позволяет вести практически независимую разработку отдельных частей (объектов) программы. Кроме этого, объектный подход предлагает новые способы организации программ, основанные на механизмах наследования, полиморфизма, композиции, наполнения. Эти механизмы позволяют конструировать сложные объекты из сравнительно простых. В результате существенно увеличивается показатель повторного использования кодов и появляется возможность создания библиотек классов для различных применений.
В качестве текстового редактора для написания пояснительной записки к курсовому проекту был выбран MSWord 2010.
У Microsoft Word 2010 существуют следующие преимущества:
- Усовершенствованные средства поиска и навигации.
- Усовершенствованная область навигации содержит визуальное представление документа, позволяя быстро просматривать, сортировать и искать нужные материалы.
- Возможности совместной работы с другими пользователями.
В рабочей среде организации благодаря интеграции с программой Office Communicator можно узнать, доступен ли пользователь, редактирующий документ, и легко начать с ним разговор, не выходя из Word.2.
Добавление визуальных эффектов в текст.
В Word 2010 можно применять к тексту графические эффекты, такие как тени, контуры, свечение и отражение.
Визуальные эффекты.
Новые средства редактирования рисунков Word 2010 позволяют вставлять, обрезать рисунки и добавлять в них специальные визуальные эффекты без дополнительных программ редактирования изображений.
Усовершенствованное интеллектуальное средство проверки орфографии.
Усовершенствованное контекстное средство проверки орфографии Word 2010 исправляет ошибки, даже если слово написано правильно, но при этом не соответствует контексту. Например, выражение «экономичные условия» будет предложено заменить на «экономические условия».
2. Описание программной реализации приложения
Назначение и область применения программного продукта.
Программное средство «Методика обнаружения присутствия отладчика», предназначено для отслеживания запущенной программы, а именно режима ее запуска (режим отладчика либо обычный режим).
Источники входной информации.
К входной информации программы можно лишь отнести запущенную программу, отслеживание которой происходит в дальнейшем.
Выходная информация.
К выходной информации относятся данные выводимые на экран, а именно:
Подтверждение закрытия режима отладчика;
Окно уведомления о программе в режиме отладчика;
Окно уведомления о программе в обычном режиме.
3. Требования к программному продукту
Требования к конфигурации электронно-вычислительных средств.
При работе программы используется персональный компьютер со следующими характеристиками:
- процессор - Intel Pentium 433 и выше;
- свободное место на жестком диске - не менее 1 Гб;
- оперативная память- 256 Мб и выше;
- принтер;
- видео карта SVGA;
- манипулятор типа мышь, клавиатура.
Требования к операционной системе.
Программа тестировалась на WindowsXP/7/8/10. В теории программа должна работать на всех современных ОС Windows, но советуется Windows 7/8.
Требования к языку программирования.
C++ -- компилируемый, статически типизированный язык программирования общего назначения. Поддерживает такие парадигмы программирования как процедурное программирование, объектно-ориентированное программирование, обобщённое программирование, обеспечивает модульность, раздельную компиляцию, обработку исключений, абстракцию данных, объявление типов (классов) объектов, виртуальные функции. Стандартная библиотека включает, в том числе, общеупотребительные контейнеры и алгоритмы. C++ сочетает свойства как высокоуровневых, так и низкоуровневых языков. В сравнении с его предшественником -- языком C, -- наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования.
Главная и единственная форма программы имеет следующий вид, изображенный на рисунке 1.
Рисунок 1. Главная форма программы
Весь функционал программы заключается в автоматическом анализировании программой режима ее запуска. Краткая последовательность действий программы:
Запуск программы.
Определение режима запуска.
При режиме отладки - вывод сообщения на экран с подтверждением закрытия программы, данное диалоговое окно изображено на рисунке 2. В ином случае программа выводит сообщение, изображенное на рисунке 3.
Для проверки работоспособности программы, а именно возможности обнаружения режима запуска нужно:
Открыть RAD STUDIO.
Запустить проект в режиме отладки (нажатием кнопки F9 либонажав на панели Run-Run).
В открывшемся диалоговом окне подтвердить или отменить закрытие.
Рисунок 2. Диалоговое окно для остановки отладки
Рисунок 3. Сообщение об отсутствии режима отладчика
Заключение
В результате разработки программного продукта была разработана программа, соответствующая заданию, данному на реализацию курсового проекта. В дальнейшем в программе можно улучшить следующие параметры:
Для более наглядного примера переписать проект в консольный режим (по надобности);
Добавить на форму элементы управления, позволяющие осуществлять настройку программы;
Использование данного кода/программы в более серьезных программах для обнаружения режима запуска;
В результате разработки программы были систематизированы и получены знания в области разработки в среде программирования RADSTUDIOXE8.
Также были систематизированы знания, позволяющие осуществлять отслеживание режима запуска программы.
Список литературы
отладчик программирование визуальный
1. Березин Б.И., Березин С.Б. Начальный курс С и C++. -- М.: ДИАЛОГ-МИФИ, 1996.
2. Ван Тассел Д. Стиль, разработка, эффективность, отладка и испытание программ. -- М.: Мир, 1981.
3. Павловская Т.А.: С/С++. Структурное и объектно-ориентированное программирование. - СПб: Питер, 2010
4. Программирование на языке Си. Методические рекомендации и задачи по программированию. Костюкова Н.И. Новосибирск: Сибирское университетское издательство, 2003. - 160 с.
5. Алгоритмы и структуры данных. Вирт Н. Москва: ДМК Пресс, 2010.
6. Алгоритмы и программы на C++ Builder. Федоренко Ю.П. Москва: ДМК Пресс, 2010. - 544 с.
Размещено на Allbest.ru
...Подобные документы
Исследование принципов объектно-ориентированного программирования на базе языка программирования С++. Разработка программного комплекса для ведения учёта памятников города. Описание процессов сортировки, поиска, формирования статистики по памятникам.
курсовая работа [782,4 K], добавлен 26.05.2014Понятие объектно-ориентированного программирования, характеристика используемых языков. Практическая разработка средств объектно-ориентированного программирования в задачах защиты информации: программная реализация на языке С++, а также Turbo Pascal.
курсовая работа [275,9 K], добавлен 22.12.2011Описание программного продукта Visual Studio. Возможности, преимущества и недостатки бесплатной среды программирования Sharp Develop для проектов на платформе MS.NET. Получение информации из справочной системы .NET SDK. Запуск визуального отладчика CLR.
реферат [393,4 K], добавлен 05.04.2017Оформление технического задания на разработку программы или программного изделия для вычислительных машин и комплексов. Принципы объектно-ориентированного программирования в среде Delphi. Ознакомление на конкретных примерах с технологиями OLE и СОМ.
отчет по практике [8,4 M], добавлен 04.02.2011Особенности разработки приложений для операционной системы с помощью императивного, структурированного, объектно-ориентированного языка программирования Delphi. Формальное начало программы. Выделение конца программного блока. Листинг и описание программы.
курсовая работа [1,2 M], добавлен 04.08.2014Особенности реализации главных элементов разрабатываемой программы (цифровые элементы) с помощью объектно-ориентированного подхода. Применение принципа инкапсуляции для защиты данных. Конструирование классов, описание и тестирование программного продукта.
курсовая работа [2,3 M], добавлен 10.05.2015Разработка игры "Экзамен" с применением объектно-ориентированного программирования и языка Java (в среде Eclipse Helios). Структура программы и алгоритм решения задачи. Описание методов и переменных. Экспериментальное тестирование и оценка программы.
курсовая работа [122,5 K], добавлен 19.05.2011Описание разработки программного продукта с использованием объектно-ориентированного языка программирования Delphi. Принципы рейтинговой оценки знаний Костанайского социально–технического университета. Описание внешнего вида программы, обработка событий.
дипломная работа [2,4 M], добавлен 03.07.2015Изучение объектно-ориентированного языка программирования Java, его функциональные возможности. Создание программного кода. Описание классов и методов, использованных в программе. Руководство пользователя, запуск сервера и клиентского приложения.
курсовая работа [1,8 M], добавлен 16.09.2015Рассмотрение основ использования информационных технологий в гостиничном бизнесе. Выбор системы управления базами данных. Описание информационной технологии. Выполнение программной реализации в среде объектно-ориентированного программирования Delphi 7.
курсовая работа [2,1 M], добавлен 24.09.2014Использование объектно-ориентированного программирования - хорошее решение при разработке крупных программных проектов. Объект и класс как основа объектно-ориентированного языка. Понятие объектно-ориентированных языков. Языки и программное окружение.
контрольная работа [60,1 K], добавлен 17.01.2011Общая характеристика объектно-ориентированного подхода в программировании, его основные свойства и принципы. Разработка программы для автоматизация деятельности кафе на основе объектно-ориентированного подхода, проектирования и реализации схемы данных.
курсовая работа [1,2 M], добавлен 22.01.2012Понятие объектно-ориентированного программирования, общая характеристика языков высокого уровня. Разработка программного обеспечения для реализации компьютерной игры "пинбол" с помощью императивного программирования в среде Microsoft Visual Basic.
курсовая работа [428,9 K], добавлен 19.09.2012Рассмотрение теории и технологии работы со средой программирования Delphi. Описание Описание интерфейса программы, структуры данных, генерации точек. Разработка задания по выявлению всех квадратов, которые могут быть образованы точками на плоскости.
реферат [21,0 K], добавлен 13.01.2015Разработка структуры базы данных для хранения дипломных проектов в среде объектно-ориентированного программирования Python. Создание внешнего вида окон ввода-вывода информации, технологии переходов. Листинг программы с пояснениями; направления улучшения.
курсовая работа [3,1 M], добавлен 27.02.2015Анализ предметной области "Конкурс поэтов" на основе объектно-ориентированного подхода. Разработка оконного приложения и описание информационной модели предметной области. Описание разработанных процедур С++ и результатов тестирования приложения.
курсовая работа [355,9 K], добавлен 18.06.2013Основные операции с АВЛ-деревьями, добавление и удаление элемента из сбалансированного дерева. Эффективность сортировки вставкой в АВЛ–дерево и итераторы. Алгоритм реализации АВЛ–деревьев через классы объектно–ориентированного программирования.
курсовая работа [281,1 K], добавлен 29.11.2010Особенности создания программы "Файловый менеджер" в среде объектно-ориентированного программирования Delphi. Назначение и основные функции программы, формулировка задачи. Описание программы, использованные компоненты, интерфейс и порядок применения.
контрольная работа [1,3 M], добавлен 19.06.2012Создание и реализация программы в среде визуального программирования С++ Builder. Разработка ее алгоритма. Описание компонентов и их свойств, используемых в структуре приложения. Создание кнопок создания турниров по круговой системе и на выбывание.
курсовая работа [4,6 M], добавлен 12.11.2013Разработка приложения "Калькулятор с переходом в строковый калькулятор" с применением объектно-ориентированного программирования. Концепция и понятия объектно-ориентированного программирования. Язык программирования Java. Листинг программы "Калькулятор".
курсовая работа [966,9 K], добавлен 11.02.2016