Разработка программного обеспечения для формирования базы данных для государственной итоговой аттестации 9 классов
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
- предварительной системы обработки исходного кода. MOC позволяет во много раз увеличить мощь библиотек, вводя такие понятия, как слоты и сигналы. Кроме того, это позволяет сделать код более лаконичным.позволяет создавать собственные плагины и размещать их непосредственно в панели визуального редактора. Также существует возможность расширения привычной функциональности виджетов, связанной с размещением их на экране, отображением, перерисовкой при изменении размеров окна.комплектуется визуальной средой разработки графического интерфейса Qt Designer, позволяющей создавать диалоги и формы мышью (в режиме WYSIWYG). В поставке Qt есть Qt Linguist - графическая утилита, позволяющая упростить локализацию и перевод программы на многие языки; и Qt Assistant - справочная система Qt, упрощающая работу с документацией по библиотеке, а также позволяющая создавать кросс-платформенную справку для разрабатываемого на основе Qt ПО. Начиная с версии 4.5.0 в комплект Qt включена среда разработки Qt Creator, которая включает в себя редактор кода, справку, графические средства Qt Designer и возможность отладки приложений. Qt Creator может использовать GCC или Microsoft VC++ в качестве компилятора и GDB в качестве отладчика. Для Windows версий библиотека комплектуется компилятором, заголовочными и объектными файлами MinGW.
3.2.4Qt Cryptographic Architecture (QCA)
QCA призван обеспечить обычный и кросс-платформенный Crypto API, используя типы данных и соглашения Qt. QCA разделяет API от реализации, с помощью плагинов. Преимуществом данной модели является возможность приложения избегать явных ссылок на библиотеки шифрования. Это позволяет легко менять или модернизировать крипто реализации даже без необходимости перекомпилировать приложение. QCA реализован для Windows/Unix/MacOS.
3.2.5Обзор методов репликации и синхронизации баз данных
Проблема репликации (синхронизации данных) по нескольким источникам информации является сложной задачей. Подобные проблемы возникают довольно часто, но универсального решения такой задачи на текущий момент практически нет. Все готовые репликаторы данных работают с существенными ограничениями по структуре и способам накопления и изменения данных в таблицах базы данных.
Особенно сложен переход от единой базы к распределенной, когда приходиться подстраивать алгоритм репликации под уже существующую структуру работающей БД.
Репликация (синхронизация) - процесс приведения данных электронных таблиц двух БД в идентичное состояние.
Репликацию можно классифицировать по-разному:
По направлению репликации. Если данные изменяются только в одной из БД, а в другой данные только хранятся и не подвергаются изменениям, то такую репликацию будем называть однонаправленной или односторонней. Если же данные могут изменяться и вводиться на всех БД, то такой вид репликации будем называть мультинаправленной или многосторонней.
По времени проведения сеанса репликации. Если данные должны быть синхронизированы немедленно после изменений, то это репликация реального времени. Если же процесс репликации происходит по какому либо событию во времени, то такой вид репликации назовем отложенная репликация.
По способу передачи информации во время процесса репликации. Если соединение серверов, хранящих распределенные БД, происходит при помощи программы клиента, которая с одной стороны подключается к своему серверу, а с другого конца имеет прямую связь с БД другого сервера и может подключиться напрямую к данным другого сервера, для прямого изменения и анализа реплицируемых данных с обоих концов, имея при этом гарантированный устойчивый канал связи (ADSL, выделенный канал и пр.), то такой вид синхронизации назовем прямым.
По способу анализа реплицируемой информации. Если ядро алгоритма работает по принципу сравнения записей одной таблицы с записями другой, и на основании этого принимается решение о синхронизации, то такой процесс будем называть репликацией по текущему состоянию. Если в базе предусмотрен журнал вносимых изменений в БД, и алгоритм репликации переносит изменения по дельтам изменений накопленным в журнале, то такой процесс назовем дельта репликацией.
Любая запись в таблице может находиться только в одном из четырех состояний с момента последней успешной репликации: с ней ничего не произошло; она была добавлена; ее атрибуты были обновлены; она была удалена. Если запись была внесена в таблицу, реплицирована, а затем удалена, то если удаление произошло до репликации, то можно считать, что записи не существовало.
Структура таблиц должна быть такова, чтобы можно было однозначно распознать любое из приведенных выше состояний для каждой записи. Схематично эта структура выглядит так
Table1(PK, Data, Ver_Stamp)
где PK - первичный ключ таблицы, простой или составной. В некоторых базах данных можно использовать такой тип данных, как UNIQUEIDENTIFIER. Data - данные, которые хранит таблица. Ver_Stamp - структура ее должна быть такова, чтобы были решены две проблемы: когда произошло событие с записью; какого рода событие произошло с записью.
Для решения первой проблемы необходимо и достаточно использовать порядковую шкалу, поскольку для разрешения вопроса о старшинстве версий потребуется использовать операторы больше, меньше или равно. При этом эта шкала будет однонаправленной в сторону увеличения значения.
Вторая проблема Какого рода событие произошло с записью? является значением некоторого перечислимого множест