Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЗ_гр.220201_МихайловА.Д. варNo.20_ver_1.0.6.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.48 Mб
Скачать
  1. Реализация приложения

На нашей странице определим две функции:func() и testcoord(). В первой функции мы описываем действия при выборе одной из кнопки типа “radio”. Во второй производится проверка введенных координат и расчет методом Монте-Карло. В данном приложении используются следующие переменные и функции:

  • var Ax, Ay, Bx, By, Cx, Cy, Dx, Dy - координаты соответствующих точек;

  • function testcoord() – функция выполняющая расчет и вывод на экран результатов расчета методом Монте-Карло;

  • function func() – заполнение полей для ввода координат эталонными или рандомными значениями.

На странице присутствует изображение (рис. 5), оно задается тегом.

<img src = "image.gif" alt = "Картинка не лежит в папке страницы, поробуйте обратиться к системному администратору">

Тег alt используется при невозможности загрузки изображения с сервера. Так же используется нововведение(оно было введено только в стандарте HTML5).

<figcaption>Трапеция abcd</figcaption>

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

<mark>Ах < Bx < Cx < Dx и Ay < By</mark>

Тег mark подсветит требования для правильной работы приложения.

Рис. 5 Стартовая страница приложения

Кнопка расчета площади вызывает функцию на языке JavaScript, которая проверяет корректность ввода данных и в случае успешной проверки продолжит работу. В случае неудачи пользователю будет выдано предупреждение:

if(cont_form.Axx.value==""||cont_form.Ayy.value==""||cont_form.Bxx.value==""||cont_form.Byy.value==""||cont_form.Cxx.value==""||cont_form.Dxx.value=="")

{

window.alert("Данные введены не полностью!");

return false;

}

else

{

Ax = parseInt(cont_form.Axx.value);

Ay = parseInt(cont_form.Ayy.value);

Bx = parseInt(cont_form.Bxx.value);

By = parseInt(cont_form.Byy.value);

Cx = parseInt(cont_form.Cxx.value);

Dx = parseInt(cont_form.Dxx.value);

Cy = parseInt(cont_form.Cyy.value);

Dy = parseInt(cont_form.Dyy.value);

square = (By-Ay)*(Dx-Ax);

if(Ax >= Bx || Bx >= Cx || Cx >= Dx || Ay >= By)

{

window.alert("Проверьте введеные данные!");

return false;

}

else

{

bool=true;

}

}

При успешной проверке данных функция продолжит работу, вычислит необходимые данные и выведет их на экран. Для вывода на экран используем стандартный вывод в JavaScript: document.write().

Схема работы программы представлена на рис. 6

Рис. 6 Метод testcoord(). Схема программы

Полный листинг приложения можно посмотреть в Приложении (файл index.html).

  1. Системные требования

Для выполнения HTML5/JavaScript приложения необходимо:

  • операционная система MS Windows 2000 или более поздняя версия;

  • наличие обозревателя MS Internet Explorer 5.0 или выше;

  1. Результаты работы приложения

Результаты выполнения представлены на рис.7.

Рис.7 Результаты работы приложения на базе JavaScript

Тестирование производилось на аппаратной базе с параметрами:

  • Двухъядерный процессор семейства Intel core i3 c частотой 2100 МГц;

  • Объем оперативной памяти 3,00 Гб;

  • Операционная система MS Windows 7 64-bit.

  1. WEB ПРИЛОЖЕНИЕ НА БАЗЕ ASP.NET

  1. Программные средства реализации приложения

Данное приложение состоит из двух частей: клиентского приложения WebForm с элементами управления HTML и Web–сервиса, обеспечивающего функциональность клиентского приложения.

Visual Studio 2012 поддерживает две модели кодирования Web-страниц и Web-сервисов (Web-служб):

  • Встроенный код. Эта модель используется в традиционном ASP. Весь код и HTML-дескрипторы находятся в одном файле. Код на языке C# встроен в один или несколько блоков сценария. Но при этом код не теряет поддержку IntelliSense и средств отладки, он компилируется, а не интерпретируется построчно (подобно классическому ASP-коду). Приложение можете реагировать на события элементов управления и использовать подпрограммы (методы). Эта модель полезна, поскольку все хранит в одном файле и широко используется для создания простых Web-страниц.

  • Скрытый (отделенный) код. Эта модель разделяет каждую Web-страницу ASP.NET на два файла – файл разметки .aspx с HTML-дескрипторами элементов управления и кодовый файл .cs с исходным кодом страницы. Такая модель обеспечивает лучшую организацию, а отделение пользовательского интерфейса от программной логики крайне важно при создании сложных страниц.

Прежде чем клиент сможет использовать Web-службу, он должен быть спосо­бен создавать, отправлять, получать и понимать XML-сообщения. Платформа .NET предоставляет решение в виде специального компонента, ко­торый называется прокси-классом (proxy class) и который выполняет наиболее трудную часть работы для клиентского приложения. Прокси-класс скрывает вызовы методов Web-службы. Он отвечает за генерацию SOAP-сообщений в корректном формате и управление сообщениями в сети (с помощью протокола HTTP). Когда прокси получает ответное сообщение, он еще и преобразует результаты обратно в соответствующие типы данных .NET (рис. 8).

Рис. 8 Запуск Web-службы из приложения ASP.NET

Благодаря прокси-классу, вызывать Web-метод в Web-службе можно так же легко, как и в локальном компоненте. Однако эта прозрачность не всегда приносит пользу, поскольку Web -службы имеют характеристики, отличающиеся от локальных компонентов. Например, вызов Web -мето­да занимает неизвестное заранее количество времени, поскольку каждый такой вызов должен преоб­разовываться в XML и пересылаться через сеть. Чтобы к Web -службе можно было получить доступ с другого компьютера, эта Web -служба должна быть доступной. Это означает, что нельзя полагаться на встроен­ный Web -сервер Visual Studio (который динамически выбирает новый порт каждый раз, когда его запускают). Вместо этого необходимо создать виртуальный каталог для Web-службы. Затем, уже создав Web-сервис, осуществляющий функциональную полноту клиентского приложения, мы можем из данного приложения вызывать эту службу.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]