Заданием являлось осуществление разработки оконного приложения для получения информации об ответах сервера по выбранному коду ответа. При выборе кода система выдает краткое имя ответа сервера и полное описание выбранного кода.
Для успешного решения задачи, поставленной перед разработчиком, необходимо произвести подробный и качественный анализ всех аспектов той пользовательской среды, в которой будет функционировать создаваемое программное приложение или информационная система.
В ходе анализа предметной области необходимо выявить:
- чему посвящена предметная область, какие в ней есть термины и понятия, субъекты и объекты, способы взаимодействия субъектов, способы использования объектов, закономерности;
- каковы функциональные требования к разрабатываемому программному обеспечению. Основой их служат потребности заказчика, однако разработчик должен оценить возможность реализации требований, исходя из технических возможностей и имеющихся ресурсов.
Предметная область посвящена теме «Справочная информация об ошибках сервера». Программа должна выдать информацию об ошибке, код которой выберет пользователь. В соответствии с этим в окне приложения мы выбираем код ошибки, предложенный программой. Система должна поддерживать следующие функции: выбор кода ошибки и указание информации об ошибке.
Для реализации решения данной задачи была выбрана среда разработки Visual Studio 2008 и языки C/C++ с поддержкой библиотеки MFC. Это позволило использовать такие парадигмы программирования как процедурное программирование, объектно-ориентированное программирование, обеспечить модульность, раздельную компиляцию, обработку исключений, абстракцию данных, объявление типов (классов) объектов, виртуальные функции.
Выделенные нами объекты представлены в виде переменных и классов, связи между ними будут реализовываться с помощью интерфейса MFC-приложения.
Интерфейс приложения должен обеспечивать необходимые функции системы, связи между ее компонентами, его модель представлена рис. 1.
Рис. 1. Интерфейс информационной системы интерпретации ответов сервера
Главное окно программы выводит ComboBox и два текстовых поля, которые заполняются при выборе кода ответа. Так же в программе присутствуют переменные, которые играют роль вспомогательных и помогают осуществить задуманные функции. Рассмотрим характерные методы, которые реализуют основные функции приложения.
В следующем блоке описана функция обработки и чтения из файла кода ответа. Чтобы функция вызывалась в момент инициализации диалогового окна она занесена в метод «OnInitDialog()».
BOOL Ctreha228Dlg::OnInitDialog()
{
const int size=4; // переменная, отвечающая за размер массива
char *InString= new char [size]; // обьявление массива, в который будет производиться запись прочитанных символов из файла
FILE *InFile = fopen(«code.txt», «r»); // открытие потока чтения из файла «code,txt»
while(fgets(InString, size, InFile)!= NULL) // цикл, который производит чтение из файла, пока файл не пуст
{
for(int i=0;i<size;i++)
if(InString[i]==’\n’)InString[i]=’\0’;
error.AddString(CString(InString));
}
fclose(InFile); // закрытие потока чтения из файла
}
В следующем блоке осуществляется определение выбранного кода ошибки в выводе информации о нем. Данная функция должна вызываться при выборе одного из пунктов ComboBox с кодом ответа сервера, поэтому функция занесена в метод «OnCbnSelchangeCombo1()». Здесь происходит поиск выбранного значения ComboBox и вывод информации о выбранной коде ответа.
void Ctreha228Dlg::OnCbnSelchangeCombo1()
{
UpdateData(true);
const int size=1000;
char *InS=new char [size];
FILE *InF = fopen("answer.txt", "r");
FILE *InFF=fopen("info.txt","r");
CString u; CString b;
for(int i=0;i<=error.GetCurSel();i++)
{
fgets(InS,size,InF);
for ( int t = 0; t < size; t++ )
if ( InS[t] == ‘\n’ ){
InS[t] = ‘\0’;break; }
u=CString(InS);
fgets(InS,size,InFF);
for ( int t = 0; t < size; t++ )
if ( InS[t] == ‘\n’ ){
InS[t] = ‘\0’;break; }
b=CString(InS);
}
list1=u; list2=b; fclose(InF);
UpdateData(false); }
Данную систему можно порекомендовать как для обычных пользователей ПК, так и для опытных программистов, т.к. это приложение позволяет получить быстрый доступ к описанию ответа сервера.
Библиографическая ссылка
Палагеча И.А. ПРОЕКТИРОВАНИЕ ИНФОРМАЦИОННОЙ СИСТЕМЫ ИНТЕРПРЕТАЦИИ ОТВЕТОВ СЕРВЕРА // Международный школьный научный вестник. – 2017. – № 2. ;URL: https://school-herald.ru/ru/article/view?id=180 (дата обращения: 23.11.2024).