Дипломная работа: Разработка программного обеспечения для оценки уровня знаний студентов с применением технологии "Клиент-сервер"
Информация хранится в каталоге Questions, далее каталог «База Теста» и IP-адрес в файле IP.dat соответственно.
В каталоге База Теста содержатся вопросы теста варианты ответов на каждый вопрос, номер правильного ответа и порядковый номер вопроса. В форме осуществляющей ввод и редактирование информации Базы Теста предусмотрены активные кнопки и сопроводительные сообщения, которые позволяют улучшить эргономичность и избавиться от дополнительных элементов интерфейса. Для повышения производительности выбор верного ответа на вопрос осуществляется визуально, т.е. щелчком мыши на правильном ответе. В таблице IP-адрес содержится постоянная информация необходимая для осуществления сетевого подключения и функционирования всей сетевой подсистемы программы.
Массивы выходной информации после решения задачи сохраняются в файл. При необходимости сохранения информации, делается поименованная копия этой информации на любом доступном носителе. Срок хранения выходной информации определяется преподавателем.
Для связи выходной информации с другими задачами используется метод DDE – Dynamic Data Exchange, те обнуление, не требующихся для дальнейшего функционирования системы или принятия управленческого решения, данных и освобождение, таким образом, ресурсов происходит автоматически.
4. Описание программно-технических средств
4.1 Программно-технические средства, необходимые для разработки программы
Для разработки автоматизированной системы была выбрана платформа WINTEL под управлением операционной системы Windows XP SP2.
В качестве среды программирования для решения поставленной задачи была выбрана Borland Delphi 6.0 Enterprise.
Delphi – инструмент для создания приложений и систем, функционирующих на платформе Windows. В основе нее лежит объектно-ориентированный язык высокого уровня Object Pascal, разработанный профессором Высшего технического училища (г. Цюрих, Швейцария) Никлаусом Виртом.
Основными принципами ООП:
– инкапсуляция представляет собой объединение данных и обрабатывающих их методов (подпрограмм) внутри класса. Это означает, что в классе инкапсулируются (объединяются и помещаются внутри класса) поля, свойства и методы. При этом класс приобретает определенную функциональность;
– наследование заключается в порождении новых объектов-потомков от существующих объектов родителей, при этом потомок берет от родителя все его поля, свойства и методы. В дальнейшем наследуемые поля, свойства и методы можно использовать в неизменном виде или переопределять (модифицировать). В новый объект добавляются новые элементы, определяющие его особенность и функциональность. Удалить какие-либо элементы родителя в потомке нельзя. В свою очередь, от нового объекта можно породить следующий объект, в результате образуется дерево объектов, или иерархия классов. В начале этого дерева находится базовый класс TObject, который реализует элементы, наиболее общие для всех объектов, например, действия по созданию и удалению объектов. Чем дальше тот или иной объект находится в дереве от базового класса, тем он более специфичен.
– полиморфизм заключается в том, что методы различных объектов могут иметь одинаковые имена, но различное содержание. Это достигается переопределением родительского метода в классе-потомке. В результате родитель и потомок ведут себя по-разному. При этом обращение к одноименным методам различных объектов выполняется аналогично.
Следование стандартам индустрии и открытость к взаимодействию с любыми частными решениями гарантирует успех проектов, разрабатываемых с использованием Delphi.
Delphi устанавливает стандарт для сред разработки приложений Windows. Delphi обеспечивает набор возможностей специально ориентированных на многократное использование компонентов. Многие аспекты работы Delphi можно настраивать. Созданные полезные объекты – компоненты и шаблоны приложений и форм будут доступны для будущих разработок.
Delphi является первой системой RAD, в которой удачно соединились средства визуального проектирования и оптимизирующий компилятор, чего, к сожалению, нельзя сказать о других системах RAD. Delphi является единственным полноценным средством промышленной разработки систем клиент-сервер, на которой основывается и данная автоматизированная система контроля знаний.
В состав Delphi входит обширная библиотека компонентов, с помощью которой можно избежать ручного написания программ. С другой стороны, в любой момент можно прибегнуть к низкоуровневым ассемблерным процедурам. Можно создавать приложения в визуальном режиме. Работая в Delphi, можно с помощью нажатия одной клавиши создать исполняемый файл в формате EXE, однако, при необходимости, можно компилировать и файлы DLL, драйверов устройств, а также консольных приложений.
Существует множество достоинств, благодаря которым можно выделить Delphi из ряда других средств разработки:
- обширная библиотека классов;
- быстрый оптимизирующий компилятор, генерирующий машинный код;
- встроенный отладчик, равных которому нет;
- простой в освоении механизм доступа к базам данных;
- мощная и удобная в работе среда разработки.
- возможности Delphi, которые делают ее такой гибкой:
- прямой доступ к программному интерфейсу Windows;
- встроенный ассемблер и поддержка программирования в машинных кодах;
- возможность создания пользовательских компонентов VCL и ActiveX;
- поддержка формата DLL и других выполняемых файлов Windows;
- возможность многоуровневой разработки приложений;
- полная объективная ориентированность – в программах можно создавать объекты, берущие начало как от библиотечных классов, так и от созданных программистом.
Delphi предоставляет прямой доступ ко многим типам локальных и удаленных серверов баз данных. Также предоставляет множество различных типов для хранения целых, вещественных (с плавающей запятой), логических (boolean), символьных (char), строковых значений, а также указателей. Помимо этого имеются типы, определяемые пользователем: множества (sets), записи (records) и объектные переменные. Поскольку имеется столько разнообразных типов, понимание чужого программного кода может быть затруднено, если будут встречаться маловразумительные имена переменных.