Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
финальный Диплом222.docx
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
1 Mб
Скачать

Глава 2. Разработка программы стеганографических систем

2.1. Выбор средств разработки

Важным этапом разработки любой серьезной программы является оптимальный выбор средств и методов разработки.

Самыми распространенными сейчас являются среды быстрой разработки программ – RAD, такие, как продукты фирмы Inprice – Delphi и C++ Builder, а также продукт фирмы Microsoft – Visual Studio .NET 2008. Действительно, в их составе есть множество компонент, которые сводят написание простых программ к нескольким щелчкам мышью. Интерфейс любой сложности может быть сделан за пару часов даже новичком. Уровень абстракции программиста от «реального» кода в таких системах очень высок. Нет необходимости создавать цикл обработки сообщений, реализовывать оконную процедуру, обрабатывать события окна. На создание объемного проекта, без использования RAD, может уйти очень много времени. С учетом тенденции развития программных интерфейсов, целесообразно начинать разработку с использование популярной сейчас платформы .NET.

Microsoft .NET Framework позволяет разработчикам в гораздо большей степени задействовать готовые технологии, чем предыдущие платформы разработки от Microsoft. В частности, .NET Framework предоставляет реальные возможности повторного использования кода, управления ресурсами, многоязыковой разработки, защиты, развертывания и администрирования. При проектировании этой новой платформы Microsoft учла недостатки существующих Windows - платформ. Вот далеко не полный список преимуществ .NET:

  • единая программная модель;

  • упрощенная модель программирования;

  • отсутствие проблем с версиями;

  • упрощенная разработка;

  • работа на нескольких платформах;

  • интеграция языков программирования;

  • упрощенное повторное использование кода;

  • автоматическое управление памятью (сбор мусора);

  • безопасность;

Visual Studio выделяет следующие основные качества:

  1. Производительность

Средства Visual Studio позволяют разработчикам работать с большей отдачей и затрачивать меньше усилий на повторяющиеся задачи. Следует отметить высокопроизводительные редакторы кода, поддержку технологии IntelliSense, мастеров и различных языков кодирования в одной интегрированной среде разработки (IDE), а также продукты управления жизненным циклом приложений (ALM) в Microsoft Visual Studio Team System. В новых версиях Visual Studio постоянно появляются новые средства, позволяющие разработчикам сосредоточиться на решении основных проблем, а не на рутинной работе.

  1. Интеграция

Разработчики, применяющие Visual Studio, получают в свое распоряжение интегрированный продукт, включающий инструменты, серверы и службы. Продукты Visual Studio отлично работают вместе - не только один с другим, но и с прочими программами Майкрософт, включая серверные продукты и приложения Microsoft Office.

  1. Комплексность

В Visual Studio содержатся инструменты для всех этапов разработки программного обеспечения (разработка, тестирование, развертывание, интеграция и управления) и для разработчиков любого уровня квалификации, от новичков до опытных специалистов. Visual Studio поддерживает разработку для различных типов устройств - ПК, серверов, сетевых и мобильных устройств.

  1. Надежность

Visual Studio разрабатывается таким образом, чтобы обеспечить высокую надежность и совместимость. Visual Studio обладает удачным сочетанием безопасности, масштабируемости и взаимодействия. В Visual Studio всегда поддерживаются новейшие технологии, но везде, где это возможно, обеспечивается обратная совместимость.

В качестве языкового предпочтения, был выбран язык программирования Visual C#.

C# - это язык программирования, предназначенный для разработки самых разнообразных приложений, предназначенных для выполнения в среде .NET Framework. Язык C# прост, строго типизирован и объектно - ориентирован. Благодаря множеству нововведений C# обеспечивает возможность быстрой разработки приложений, но при этом сохраняет выразительность и элегантность, присущую языкам C[14].

Visual C# является реализацией языка C# корпорацией Майкрософт. Visual Studio поддерживает Visual C# с полнофункциональным редактором кода, компилятором, шаблонами проектов, конструкторами, мастерами кода, мощным и простым в использовании отладчиком и многими другими средствами. Библиотека классов .NET Framework предоставляет доступ ко многим службам операционной системы и другим полезным, правильным классам, что существенно ускоряет цикл разработки.

Современный, компонентно - ориентированный язык программирования С# разработан фирмой Microsoft специально для платформы .NET. C# вобрал в себя все лучшее из таких языков, как C, C++, Java и Delphi++, соответственно предлагает не менее эффективные средства описания классов, их свойств и методов. Как и Visual Basic .NET, язык С# может использоваться для создания Web - сервисов и приложений.

Visual Studio .NET 2016 является мощным средством для разработки любых программ любой сложности. Удобный, понятный, легко осваиваемый интерфейс позволяет создавать проект с особой легкостью, изящностью. Выбранный язык С# очень прост и в тоже время очень практичен. Его разработчики собрали в С# все самое лучшее от прародителя C++ и добавили ряд новшеств, которые намного облегчают процесс программирования, в результате чего сокращается время на набор текста программы и гораздо легче достигается оптимизация программного кода. Этим обусловлен выбор средства разработки.

Разработка объектно - ориентированного приложения требует значительного концептуального, логического и физического планирования. Необходимо четко определить количество объектов, их соответствие реальным, физическим объектам, иерархию их взаимодействия.

Разработка диаграммы классов является важнейшим этапом при проектировании приложения. Необходимо тщательно продумать все связи между классами и объектами программы, так как неправильная организация может привести к серьезным последствиям в будущем, вплоть до неработоспособности программного продукта.

Д иаграмма классов, изображенная на рисунке 7 показывает, из каких объектов состоит программа и как они связаны между собой.

Рис.7. Диаграмма классов программы

В основе всей каркасной модели лежит главное окно программы, на котором представлен весь интерфейс управления. В главном окне содержатся несколько панелей, на каждой из которых содержатся элементы специализированного управления:

  • plCrypt - содержит методы для работы со списком файлов - контейнеров, а так же с файлом, который необходимо сокрыть;

  • plEnCrypt - содержит методы для работы со списком файлов - контейнеров, а так же с ключом, необходимым для дешифрования извлеченного файла, если используется шифрование;

  • plOptions - содержит методы настройки программы, в которой задается возможность использования шифрования, способность сохранения файлов, а так же позволяет менять старшинство бит, в которых будет происходить замена;

  • plHelp - содержится компонент для отображения справки;

  • plAbout - содержит информацию о разработке и разработчике.

Классы plCrypt и plEnCrypt наследуются от одного родителя WorkWav, который содержит все свойства и методы для сокрытия, извлечения, шифрования файлов.

Класс WorkWav наследуется от класса wRiff, который содержит информацию о структуре аудио файлов их свойствах.

Класс Loading содержит методы для отображения процесса сокрытия.

Рассмотрим основные классы более подробно.

Класс wRiff, как родитель всех остальных классов, содержит свойства о структуре аудио файлов. Его свойства представлены в табл.2.2.

Таблица 2.2