Принцип работы веб приложений

СОДЕРЖАНИЕ

ВВЕДЕНИЕ. 4

1 АНАЛИТИЧЕСКИЙ ОБЗОР ЛИТЕРАТУРЫ.. 6

1.1 Обзор литературы.. 6

1.2 Принцип работы веб приложений. 6

1.3 JSP. 7

1.4 Принципы работы Hibernate. 8

1.5 Обзор REST архитектуры.. 10

1.6 Принципы работы Spring Framework. 11

1.7 Основные цели курсовой работы.. 12

2 ПОСТАНОВКА ЗАДАЧИ.. 13

3 ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ ПРЕДМЕТНОЙ ОБЛАСТИ.. 14

4 РАЗРАБОТКА СТРУКТУРЫ ПРОГРАММЫ.. 17

5 ТЕСТИРОВАНИЕ ПРОГРАММНОГО ПРОДУКТА.. 20

6 РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ 23

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

6.2 Руководство. 23

ЗАКЛЮЧЕНИЕ. 28

СПИСОК ИСПОЛЬОВАННОЙ ЛИТЕРАТУРЫ.. 29

ПРИЛОЖЕНИЕ……………………………………………………………….30

ВВЕДЕНИЕ

Влияние глобальной компьютерной сети Интернет на современный мир не имеет исторических аналогов. Его сегодняшний день – это начало эпохи электронного проникновения во все сферы человеческой жизни, это нечто большее, чем просто маркетинговая кампания, это основа новой философии и новой деловой стратегии.

Интернет и WWW прочно вошли в нашу жизнь, и нам уже трудно представить свою деятельность без них. WWW – это огромный набор гипертекстовых документов, которые благодаря интернету доступны в любой точке мира.

Создание Web- сайтов является одной из важнейших технологий разработки ресурсов интернета. Web-сайт - это информационный ресурс, состоящий из связанных между собой гипертекстовых документов (Web-страниц), размещенный на Web-сервере и имеющий индивидуальный адрес. Web-страница представляет собой текстовый файл с расширением *.htm, который содержит текстовую информацию и специальные команды - HTML-коды, определяющие в каком виде эта информация будет отображаться в окне браузера. Вся графическая, аудио- и видео информация непосредственно в Web-страницу не входит и представляет собой отдельные файлы с расширениями *.gif, *.jpg (графика), *.mid, *.mp3 (звук), *.avi (видео).

На сегодняшний день всё большее количество сервисов, традиционно считающиеся уделом «офлайн» мира, переходят в сеть интернет. Почта, телефонная связь, а затем и многие другие привычные атрибуты человеческой жизни – интернет везде предлагает более качественную, дешёвую и удобную альтернативу.

Первоначально, для работы с web-сервисами использовались специализированные клиентские программы. Это было обусловлено многими факторами: низким уровнем развития web-технологий, плохим качеством интернет-соединения, что, в частности, подразумевало необходимость хранить максимально возможное количество ресурсов приложения непосредственно на клиентском компьютере. Однако постепенно, с появлением качественного и быстрого доступа в интернет всё большего числа людей, большое количество приложений начало переходить в web. Главное преимущество такого подхода – независимость приложения как от аппаратного обеспечения компьютера, так и от ПО, установленного на нём.

Современные инструменты вёрстки, такие как HTML и CSS (в частности, новейшие стандарты HTML5 и CSS3) позволяют обеспечить корректное (адаптивное) отображение сайта для различных размеров и форматов экранов.

Однако подобный переход был бы невозможен как без развития языков программирования логики, которая обычно не видна пользователю (т.н. «backend»), так и языков доступа к базам данных и соответствующего ПО. Кроме того, учитывая, что программирование web-приложений представляет собой решение большого числа типовых задач (например, регистрация и авторизация пользователей, поиск по сайту и т.д.) появляются целые библиотеки (т.н. фреймворки), содержащие в себе значительное число готовых решений, что сильно упрощает процесс создания web-приложения для разработчика. Так, для одного из самых распространённых языков JAVA, были созданы фреймворки Struts, Spring, JSF, PHP - Zend Framework, CakePHP, Symphony, Yii, для C# - ASP .Net, для ruby – Ruby On Rails.

В структуре web-приложений произошли серьёзные изменения. В отличие от классических программ, которые имеют самую разнообразную структуру, структура web-приложений достаточно единообразна – это логика по взаимодействию между приложением и базой данных, логика работы самого приложений, логика обработки запросов и набор ресурсов для формирования страницы. Эта структура была обобщена в паттерне проектирования MVC (модель-представление-контроллер), который был поддержан многими современными фреймворками. В приложениях, написанных с использованием структуры MVC, отсутствуют такая традиционная для web-приложений проблема как «мешанина» в коде, эти приложения легче поддерживать и дорабатывать.

Таким образом, при разработке любого приложения, в том числе и данной системы, приходится решать много вопросов, касаемых используемых инструментов и архитектур. Этот выбор напрямую повлияет на скорость разработки и производительность приложения, а также косвенно на его функциональность и надёжность.

АНАЛИТИЧЕСКИЙ ОБЗОР ЛИТЕРАТУРЫ

Обзор литературы

Обязательным атрибутом при изучении любой новой области является подбор соответствующей литературы, мануалов и других информационных источников. Именно чтение литературы помогает решать возникающие проблемы.

Одним из основных источников официальной информации является документация к Apache Tomcat — здесь содержится практически полная информация о всех аспектах работы с этим сервером, приведены комментарии разработчиков, рассмотрены приёмы, позволяющие решить подавляющее число проблем.

Но информация была бы не полной без полноценных книг и изданий зарубежных авторов. Особо хотелось бы отметить книгу автора Bruce W. Perry «Java servlet and JSP. Cookbook» — фундаментальный труд для всех веб разработчиков на Java. Книга представляет собой не только справочник по создание веб приложений, но также содержит большое количество примеров, позволяющих реализовывать поставленные задачи за минимальный срок.

Принцип работы веб приложений

В настоящее время программирование приложений для предприятий немыслимо без знания всего спектра подходов и технологий, применяемых для автоматизации бизнес-процессов. Огромный спектр решений для создания программного обеспечения предлагает язык программирования Java, который используется везде: от портативных компьютеров до центров обработки данных, от игровых приставок до научных суперкомпьютеров, от мобильных телефонов до Интернета. Java — это не только язык программирования, но и вычислительная платформа, в том числе, используемая для создания сайтов, веб-сервисов, порталов и корпоративных интранет-решений. Технологии Java позволяют реализовать веб-приложение любой сложности за счёт высокопроизводительной и масштабируемой серверной части и удобных инструментов для создания клиентской части и пользовательского интерфейса.

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

JSP

Технология Java Server Pages (JSP) была разработана компанией Sun Microsystems, чтобы облегчить создание страниц с динамическим содержанием.

В то время как сервлеты наилучшим образом подходят для выполнения кон-тролирующей функции приложения в виде обработки запросов и определения вида ответа, страницы JSP выполняют функцию формирования текстовых доку-ментов типа HTML, XML, WML и некоторых других.

Под терминами “динамическое/статическое содержание” обычно понима-ются не части JSP, а содержание Web-приложения:

1) динамические ресурсы, изменяемые в процессе работы: сервлеты, JSP, а также java-код;

2) статические ресурсы, не изменяемые в процессе работы – HTML, Ja-vaScript, изображения и т.д.

Смысл разделения динамического и статического содержания в том, что ста-тические ресурсы могут находиться под управлением HTTP-сервера, в то время как динамические нуждаются в движке (Servlet Engine) и в большинстве случаев в доступе к уровню данных.

Рекомендуется разделить и разрабатывать параллельно две части приложе-ния: Web-приложение, состоящее только из динамических ресурсов, и Web-приложение, состоящее только из статических ресурсов.

Некоторые преимущества использования JSP-технологии над другими мето-дами создания динамического содержания страниц:

1) Разделение динамического и статического содержания.

Возможность разделить логику приложения и дизайн Web-страницы снижает сложность разработки Web-приложений и упрощает их под-держку.

2) Независимость от платформы.

Так как JSP-технология, основанная на языке программирования Java, не зависит от платформы, то JSP могут выполняться практически на любом Web-сервере. Разрабатывать JSP можно на любой платформе.

3) Многократное использование компонентов.

Использование JavaBeans и Enterprise JavaBeans (EJB) позволяет мно-гократно использовать компоненты, что ускоряет создание Web-сайтов.

4) Скрипты и теги.

JSP составляется из стандартных HTML-тегов, JSP-тегов, action-тегов, JSTL и пользовательских тегов. В спецификации JSP 2.0 существует пять основных тегов:

<%@ директива %> – используются для установки параметров серверной страницы JSP.

<%! объявление %> – содержит переменные Java и методы, которые вызы-ваются в expression-блоке и являются полями генерируемого сервлета. Объявле-ние не должно производить запись в выходной поток out страницы, но может быть использовано в скриптлетах и выражениях.

<% скриптлет %> – вживление Java-кода в JSP-страницу. Скриптлеты обыч-но используют маленькие блоки кода и выполняются во время обработки запроса клиента. Когда все скриптлеты собираются воедино в том порядке, в котором они записаны на странице, они должны представлять собой правильный код языка программирования. Контейнер помещает код Java в метод _jspService() на этапе трансляции.

<%= вычисляемое выражение %> – операторы языка Java, которые вычис-ляются, после чего результат вычисления преобразуется в строку String и по-сылается в поток out.

<%-- JSP-комментарий --%> – комментарий, который не отображается в исходных кодах JSP-страницы после этапа выполнения.

Наши рекомендации