
- •Введение
- •Постановка задачи
- •Разработка технического задания
- •2.1 Анализ вариантов использования программы
- •Потоки событий
- •Основной поток
- •2.2. Альтернативные потоки
- •2.2 Требования к приложениям
- •Анализ алгоритма решения задачи
- •3.1 Метод Монте-Карло
- •3.2 Определение попадания точки внутрь трапеции
- •Настольное приложение wpf
- •4.1 Технология Windows Presentation Foundation
- •4.2 Логическое проектирование приложения
- •4.3 Тестирование приложения
- •5.1 Программные средства для разработки приложения
- •5.2 Логическое проектирование
- •5.2.1 Структура приложения
- •5.2.2 Проектирование приложения.
- •Листинг №1. Определение попадания точки в четырехугольник. HaXe.
- •6. Клиент-Серверное приложение на базе asp.Net
- •6.1 Программные средства разработки приложения
- •6.2 Логическое проектирование Web-сервиса
- •6.3 Логическое проектирование клиентской части
- •6.4 Генерирование прокси-класса
- •6.5 Системные требования
- •Руководство программиста
- •6.7.1 Назначение и условия применения приложения
- •Структура приложения
- •6.8.4 Сообщения оператору
- •6.9 Тестирование приложения
- •Анализ вычислительной эффективности приложений
- •Заключение
- •Приложения
- •9.1 Листинг приложения на базе wpf Файл MainWindow.Xaml
- •Файл MainWindow.Xaml.Cs
- •9.2 Листинг приложения на базе haXe/php Файл Main.Hx
- •Файл Index.Html
- •9.3 Листинг клиент-северного приложения на базе asp.Net Файл Service.Asmx
- •Файл Service.Cs
- •Файл MainWindow.Xaml
- •Файл MainWindow.Xaml.Cs
МИНОБРНАУКИ РОССИИ
Федеральное государственное бюджетное образовательное
учреждение высшего профессионального образования
«Тульский государственный университет»
Кафедра информационной безопасности вычислительных систем
ИССЛЕДОВАНИЕ ВЫЧИСЛИТЕЛЬНОЙ ЭФФЕКТИВНОСТИ
WEB-ТЕХНОЛОГИЙ
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовой работе по дисциплине «Технологии программирования»
Автор работы: студент гр. 220201 Алексеев А.Д.
Обозначение КР: К2.001.101.ПЗ
Руководитель работы: канд. тех. наук доц. кафедры ИБВС Берсенев Г. Б.
Работа защищена: оценка
Члены комиссии: _________________
_________________
Тула 2012
УТВЕРЖДАЮ
Заведующий кафедрой
_________________________
“ ” 2012 г.
З А Д А Н И Е
на курсовую работу по дисциплине «Технологии программирования»
студенту группы 220201 Алексееву Антону Дмитриевичу
Тема проекта: Исследование вычислительной эффективности Web-технологий
Входные данные Вариант №1;
задача – определение площади четырехугольника методом Монте-Карло;
четырехугольник – abce;
приложение №1: настольное приложение, язык С#/WPF;
приложение №2: web-приложение на базе скриптов, язык haXe/PHP;
приложение №3: клиент-серверное приложение. Клиентская часть – язык С#/WPF. Серверная часть – язык C#. Тип взаимодействия – асинхронный
Задание получил “ 10 ” сентября 2012 г.
График выполнения проекта
выдача задания “10 ” сентября 2012 г.
срок представления готового задания “20 ” декабря 2012 г.
Замечания консультанта
К защите. Консультант (руководитель)
“ ” 2012 г.
Графические материалы прикладываются к заданию.
При защите курсовой работы наличие рецензии обязательно.
Оглавление
Введение 5
1. Постановка задачи 8
2. Разработка технического задания 10
2.1 Анализ вариантов использования программы 10
2.2 Требования к приложениям 13
3. Анализ алгоритма решения задачи 15
3.1 Метод Монте-Карло 15
3.2 Определение попадания точки внутрь трапеции 15
4. Настольное приложение WPF 19
4.1 Технология Windows Presentation Foundation 19
4.2 Логическое проектирование приложения 22
4.3 Тестирование приложения 26
5. Веб-приложение на базе скриптов haXe/PHP 27
5.1 Программные средства для разработки приложения 27
5.2 Логическое проектирование 28
5.2.1 Структура приложения 31
5.2.2 Проектирование приложения. 32
6. Клиент-Серверное приложение на базе ASP.NET 35
6.1 Программные средства разработки приложения 35
6.2 Логическое проектирование Web-сервиса 36
6.3 Логическое проектирование клиентской части 38
6.4 Генерирование прокси-класса 40
6.5 Системные требования 40
6.6 Руководство системного программиста 41
6.6.1 Общие сведения о приложении 41
6.6.2 Настройка приложения 41
6.6.3 Выполнение приложения 41
6.7 Руководство программиста 42
6.7.1 Назначение и условия применения приложения 42
6.7.2 Структура приложения 43
6.8 Руководство пользователя 44
6.8.1 Назначение приложения 44
6.8.2 Условия выполнения приложения 44
6.8.3 Выполнение приложения 44
6.8.4 Сообщения оператору 45
6.9 Тестирование приложения 45
7. Анализ вычислительной эффективности приложений 46
8. Заключение 48
9. Приложения 49
9.1 Листинг приложения на базе WPF 49
Файл MainWindow.xaml 49
Файл MainWindow.xaml.cs 50
9.2 Листинг приложения на базе haXe/PHP 58
Файл Main.hx 58
Файл Index.html 60
9.3 Листинг клиент-северного приложения на базе ASP.NET 62
Файл Service.asmx 62
Файл Service.cs 62
Файл MainWindow.xaml 66
Файл MainWindow.xaml.cs 68
Введение
В настоящее время разработка программного обеспечения ведется в рамках корпоративных сетей ЭВМ, среди которых все большее распространение получают Интранет/Интернет сети. Для работы в таких сетях используется совершенно новый вид программных продуктов – Web-приложения, в которых тем или иным способом реализуются клиентская и серверная активности, широко применяются СОМ объекты и Web сервисы для осуществления основной функциональности приложения. В Web приложениях иначе, чем в локальных приложениях MS Windows, реализуются и графический интерфейс пользователя, и вообще организация всего приложения. Появилась и объектно-ориентированная платформа .NET фирмы Microsoft с удобной средой разработки Web приложений - MS Visual Studio .NET.
Разработка современных программных продуктов обычно выполняется с использованием языка визуального моделирования UML, предназначенного для определения, визуализации и документирования сущностей создаваемой объектно-ориентированной системы. При этом широко применяются готовые типовые решения (архитектурные паттерны, двоичные компоненты, сервисы), часто доступные через Internet или имеющиеся на рынке современного программного обеспечения.
Известно, что серверы Web хранят информацию в виде текстовых файлов, называемых также страницами сервера Web. Помимо текста, такие страницы могут содержать ссылки на другие страницы (расположенные на том же самом или другом сервере), ссылки на графические изображения, аудио- и видеоинформацию, различные объекты ввода данных (поля, кнопки, формы и т. д.), а также другие объекты. Фактически страницы Web представляют собой некоторое связующее звено между объектами различных типов.
Для доступа к информации, расположенной на серверах Web, пользователи применяют специальные клиентские программы - браузеры. Наибольшей популярностью пользуются браузеры Microsoft Internet Explorer и Opera. Каждая страница сервера Web имеет свой так называемый универсальный адрес ресурса Universal Resource Locator (URL). Для того чтобы получить доступ к той или иной странице, пользователь должен указать ее адрес URL программе браузера. Как правило, любой сервер Web имеет одну главную страницу, содержащую ссылки на все другие страницы этого сервера. Поэтому просмотр содержимого сервера Web обычно начинается с его главной страницы.
Существуют различные способы реализации серверной активности. Традиционный (классический) способ создания активных серверных страниц (Active Server Pages, ASP) заключается в добавлении скриптов на языках JavaScript и VBScript в HTML код. Однако применение скрипов для выполнения больших объемов вычислительной работы на сервере нецелесообразно из-за медленной работы скриптов, поскольку при выполнении активных страниц большая часть времени расходуется на процесс интерпретации скрипов.
Современные технологии, такие как ASP.NET и Java, позволяют создавать активные серверные страницы практически без скриптов, а код таких страниц, написанный на объектно-ориентированных языках C# и Java, хранится в двоичном (откомпилированном) виде. При этом автоматизируется процесс создания кода страниц и значительно упрощается его отладка.
Целью курсовой работы является исследование вычислительной эффективности технологий программирования, включая Web-технологии, а также закрепление знаний, полученных в курсе “Технологии программирования”, приобретения навыков клиент-серверной реализации прикладной задачи в виде Web приложения с использованием Web сервисов, практическое освоение современных Web технологий, использующих как скрипты, так и функциональные и объектно-ориентированные языки программирования, приобретения навыков оформления и выпуска документации в соответствии с ГОСТ.