40. Основные принципы построения web-приложений. Основные требования, предъявляемые к web-приложениям.
Web-приложения (web applications, часто их называют Интернет-приложениями, internet applications) представляют собой набор страниц, объединенных общей функциональностью. Все Web-приложения являются клиент-серверными, что, очевидно, определяется технологией построения Интернета. В приложениях обычно задействуются все вышеперечисленные технологии, от DHTML, исполняемом в клиентском браузере, до расширений Web-сервера. В настоящий момент Web-приложения используются как внутри предприятий в локальных сетях, так и в Интернете - это широко известные Интернет-магазины.
Web-приложения
Началом «взрывного» роста Интернета принято считать начало 90х годов. Именно в это время появились и были стандартизованы протокол HTTP и язык описания страниц HTML, предназначенные для World Wide Web. Изначально WWW предназначался для публикации различной информации текстового и графического характера, поэтому язык HTML имел очень много недостатков, в первую очередь - практически отсутствовали механизмы управления размещением содержания на HTML-странице и взаимодействия с пользователями. Однако по мере роста интереса к Интернету росли и требования пользователей к содержанию (иначе - к контенту, от англ. content), что касалось как оформления опубликованной информации, так интерактивности при взаимодействии пользователя с сайтами. На сегодняшний день существующие в Интернете средства, реализованные в Web-серверах, средствах разработки сайтов и браузерах, позволяют говорить о создании так называемых Web-приложений, или приложений, построенных на мехнизмах Интернета и позволяющих пользователям взаимодействовать с Web-серверами. Безусловно, Web-приложения имеют клиент-серверную архитектуру, что диктуется общим построением Интернета. Как и традиционные программные приложения, Web-приложения имеют несколько аспектов: архитектура, подходы к разработке, безопасность приложений, которые и рассматриваются в этой главе.
Область использования Web-приложений
Одной из важных характеристик Web-приложения является область использования приложения. По области использования Web-приложения делятся на intranet - внутрикорпоративные приложения, рассчитанные на использование во внутренней (локальной) сети, extranet - также внутрикорпоративные, но уже работающие во внешней среде (Интернете), и, наконец, internet-приложения, рассчитанные на общее использование (например, Интернет-магазины). Такое деление возникает из-за различности подходов к построению таких приложений. Самые жесткие требования на разработку накладывает internet-приложение - это использование произвольных браузеров и максимальная безопасность в работе. При разработке intranet- и extranet-приложений список используемого программного обеспечения можно ограничить, а для intranet-приложений еще и снизить требования к безопасности.
Архитектура Web-приложений
Все Web-приложения можно условно разбить на три составные части: серверная часть, клиентское приложение и интерфейс.
Серверную часть образует Web-сервер, возвращающий страницы приложения по запросам пользователя. Чаще всего эти страницы создаются динамически на основе информации, обрабатываемой приложением. Именно на создание страниц "на лету" направлены различные расширения Web-серверов, одно из которых - CGI - уже было ранее упомянуто.
Клиентское приложение (браузер) последовательно запрашивает страницы с сервера, используя Dynamic HTML для управления интерфейсом и частичной обработки информации на компьютере клиента.
Пользовательский интерфейс специально выделен отдельным пунктом, так как именно формированием клиентского интерфейса и работой с ним Web-приложения отличаются от привычных клиент-серверных приложений. В последнем случае клиентское приложение обменивается с сервером только данными, используя для формирования интерфейса ресурсы приложения. В Web-приложениях интерфейс практически полностью формируется на сервере, оставляя для исполнения клиентом только управление созданной страницей. Более того, существующие стандарты на браузеры накладывают дополнительную специфику на модель поведения приложения. В частности, два свойства, которые необходимо принимать во внимание при разработке приложения -наличие истории просмотра страниц и произвольный доступ к любой странице приложения по известному адресу. Последнее свойство обязательно должно учитываться в приложениях, использующих авторизацию пользователя.
Другая серьезная проблема в разработке Web-приложения -отслеживание сессии конкретного пользователя. Дело в том, что по определению HTTP-протокол не имеет понятия текущего состояния (stateless), т.е. очередной запрос страницы абсолютно не зависит от предыдущих запросов и потому не требует уникального идентификатора. Для отслеживания последовательных запросов и идентификации пользователя используются так называемые cookies. Cookies (русского термина не имеют, в единственном числе -cookie, точный перевод - «домашнее печенье») представляют собой небольшие файлы, содержащие произвольную текстовую информацию. Эти файлы формируются и передаются пользовательскому приложению Web-сервером и хранятся на компьютере пользователя. При очередных запросах страниц информация из этих файлов пересылается на сервер вместе с запросом, что позволяет отличать и отслеживать работу различных пользователей с Web-сервером. Каждый cookie имеет следующие свойства:
· наименование cookie;
· значение cookie, содержащее собственно информацию;
· домен. Указанный домен ограничивает область видимости cookie. По умолчанию домен устанавливается в домен текущей страницы (например, для www.lc.ni- домен Ic.ru);
· каталог. Указанный каталог ограничивает область видимости cookie внутри сервера. Каталог "/" используется для указания всех каталогов сервера. По умолчанию каталог устанавливается в каталог текущей страницы;
· срок действия. Срок ограничивает время действия cookie. По истечении указанного срока cookie удаляется с компьютера пользователя. По умолчанию срок действия не устанавливается, что означает удаление cookie при закрытии браузера (это эквивалентно установке срока действия в 0);
· секретность. Cookie с установленным свойством секретности могут посылаться на Web-сервер только по SSL-соединению. Это свойство используется редко. По умолчанию секретность не устанавливается.
Домен и каталог необходимы для ограничения области действия cookie - информация из cookie посылается вместе с запросом только в том случае, если домен и каталог cookie в точности совпадают с доменом и каталогом запрашиваемой страницы. Каждый cookie полностью характеризуется своим наименованием, доменом и путем.
Согласно стандарту браузер может как хранить и использовать cookies в своей работе, так и отключать их прием и сохранение в целях безопасности. Для этого в настройках браузеров обычно присутствует флажок, включающий и отключающий работу с cookie. По умолчанию работа с cookie включена, однако пользователь вправе отключить прием cookie. Для intranet- и extranet-приложений возможность отключения cookie можно игнорировать, просто введя некоторую дисциплину использования приложения. Для общих Web-приложений, опирающихся на использование cookies, такая возможность отключения представляет серьезную проблему, так как не существует точного способа определить, принимает ли браузер cookies.
С использованием cookies отслеживание действий пользователя упрощается - теперь сервер может сохранить в cookie некоторую внутреннюю информацию, и при последующих обращениях идентифицировать пользователя. Однако здесь следует учесть одну тонкость. Поскольку два запущенных экземпляра одного браузера используют единую базу cookies, то сервер не сможет отличить эти браузеры, даже если они будут находиться на разных страницах. Из вышесказанного вытекает, что реально идентифицируется не сам пользователь, а скорее его компьютер. - при запуске двух одинаковых браузеров Web-сервер будет воспринимать их как одну сессию. При запуске разных браузеров может возникнуть две сессии, если браузеры используют разные базы для хранения cookies.
Построение Web-приложения
Как и для обычных приложений, универсальной схемы построения Web-приложения не существует, поскольку различные приложения требуют различных подходов к обработке данных, построению пользовательского интерфейса и т.д.
Однако можно построить некоторую приблизительную схему приложения с авторизацией. Все приложение делится на три части -незащищенную, часть, обеспечивающую авторизацию пользователя, и защищенную. В незащищенной части пользователь может перемещаться произвольно, следуя ссылкам или по запомненным ранее закладкам. Переход в защищенную часть осуществляется только после авторизации пользователя, и все перемещения по защищенным страницам обязательно авторизуются. При первой верной авторизации вся необходимая информация записывается в cookie, и при последующих авторизациях информация берется в первую очередь из сохраненного cookie. При отсутствии cookie (удален или браузер не принимает cookie) пользователь снова проходит через интерактивную часть авторизации. Отсюда следует, что при невозможности принимать cookie пользователь будет вынужден заново вводить авторизующую информацию при каждом запросе страницы из защищенной части, а каждая защищенная страница должна переадресовывать пользователя в незащищенную часть или на авторизацию. Часть, отвечающая за авторизацию, может быть реализована как одной, так и несколькими страницами.
Требования к Web-приложениям
Отправной точкой в web-проекте является анализ целей сайта и функций, которые будут предложены пользователю.
Вторым этапом будет построение информационной архитектуры сайта.
После того как будут известны все материалы сайта и его структура, можно перейти к дизайну навигации и самих страниц
- 1. Общая характеристика процессов сбора, передачи, обработки и накопления информации.
- 2. Технические и программные средства реализации информационных процессов.
- 3. Программное обеспечение и технологии программирования.
- 4. Информационные технологии. Определение, средства и результаты.
- 5. Федеральный закон об информации, информационных технологиях и о защите информации.
- 6. Классификация информационных систем. Информационный характер процесса управления. Многофункциональность информационных систем.
- 7. Программы-вирусы: виды и средства, рекомендации по применению, обнаружение вирусов, обезвреживание вирусов.
- 8. Методы защиты информации.
- 9. Методы криптографии. Средства криптографической защиты информации (скзи).
- 10. Электронная цифровая подпись (эцп), принципы ее формирования и использования.
- 11. Общая классификация видов информационных технологий и их реализация в технических областях.
- 12. Понятие информационной системы.
- 13. Назначение, функции и характеристики операционных систем. Вычислительные ресурсы и операционная система.
- 14. Основные понятия информационных сетей. Сетевые программные и технические средства информационных сетей.
- 15. Основные понятия теории моделирования.
- 16. Имитационные модели информационных процессов.
- 17. Языки моделирования. Имитационное моделирование информационных систем и сетей.
- 18. Классификация баз данных. Модель представления данных.
- 19. Иерархическая модель. Сетевая модель. Реляционная модель данных.
- 20. Системный анализ предметной области при проектировании ис. Методы системного анализа.
- 21. Erp-системы (Enterprise resource planning). Назначение и особенности применения.
- 22. Система управления базами данных (субд). Определение, основные понятия, назначение.
- 23. Case-технологии.
- 24. Архитектурные особенности организации эвм различных классов.
- 25. Вычислительные системы и сети.
- 26. Вычислительный процесс и его реализация с помощью ос. Основные функции ос.
- 27. Основные этапы решения задач на эвм.
- 29. Сетевые операционные среды и платформы.
- 30. Web-сайт и его структура.
- 31. Программные средства для разработки web-страниц и web-сайтов.
- 32. Универсальные средства разработки web-сайтов.
- 33. Понятие системы. Классификация систем.
- 34. Разработка web-приложений с помощью php.
- 35. Использование современных систем управления контентом сайта (cms).
- 36. Методы широкополосного скоростного доступа в Internet.
- 37. Организация, структура и функции web-сервера.
- 39. Технология web-сервисов. Интеграция портлетов в порталы.
- 40. Основные принципы построения web-приложений. Основные требования, предъявляемые к web-приложениям.
- 41. Язык разметки html. Структура документа html. Динамический html.
- 42. Современные технологии разработки web-приложений. Принципы использования субд в web-приложениях.
- 43. Информационное общество. Сущность и цели информатизации общества.
- 44. Свойства информации: конфиденциальность, доступность, целостность.
- 45. Назначение и возможности системы визуального программирования Delphi.
- 46. Характеристика рыночного механизма и его функционирования. Структур рынка.
- 47. Макроэкономическое равновесие: классический и кейнсианский подходы.
- 48. Экономический цикл как всеобщая форма экономической динамики, причины, виды и последствия инфляции и безработицы.
- 49. Виды учета в национальном хозяйстве. Понятие, значение и особенности бухгалтерского учета.
- 50. Баланс предприятия. Четыре типа операций, вызывающих изменения в балансе.
- 51. Общая характеристика плана счетов. Счета: понятие, виды, двойная запись.
- 52. Сущность и функции денег. Понятие и элементы денежной системы. Денежная система рф.
- 53. Формы безналичных расчетов.
- 54. Инфляция: причины, виды, последствия
- 55. Сущность и функции финансов. Финансовая система: понятие, элементы
- 57. Платежные поручения. Аккредитивная форма расчетов. Финансовый рынок: структура, функции, участники.
- 58. Бюджет: сущность, составные элементы, функции
- 59. Задачи и функции Банка рф в кредитной системе.
- 60. Финансовая система рф. Структура и принципы бюджетной системы рф.
- 61. Фондовая биржа: функции, организация работы
- 62. Становление и современное состояние налоговой системы рф.
- 63. Права и обязанности налогоплательщиков.
- 64. Структура налоговых органов рф, их права и обязанности.
- 65. Понятие, принципы построения и виды налогов. Прямые и косвенные налоги.
- 66. Возникновение и сущность банков. Зарождение и развитие российской банковской системы.
- 67. Банк: понятие и правовой статус. Современная банковская система Российской Федерации.
- 68. Статус, цели деятельности и основные задачи Центрального Банка Российской Федерации.
- 69. Функции коммерческого банка.
- 70. Инструменты денежно-кредитной политики Центрального Банка Российской Федерации.
- 71. Порядок создания банка. Виды банковских лицензий. Основания для отзыва банковской лицензии.
- 72. Банковская система. Организация и составные элементы. Сущность и виды небанковских кредитных организаций.
- 73. Общая характеристика операций коммерческого банка. Пассивные операции коммерческого банка. Активные операции коммерческого банка.
- 74. Ликвидность коммерческого банка. Управление ликвидностью.
- 75. Ресурсы коммерческого банка и его капитальная база.
- 76. Доходы коммерческого банка.
- 77. Расходы коммерческого банка.
- 78. Банковские риски и управление ими.
- 79. Организационно-правовые формы предпринимательской деятельности в рф.
- 80. Материальные ресурсы организации.
- Основной капитал
- Амортизация основного капитала
- Оборотный капитал
- Оборотный капитал (оборотные активы) и себестоимость
- Анализ оборотного капитала
- 82. Финансовые результаты деятельности организации и оценка эффективности ее функционирования.
- 83. Понятие инвестиционного рынка. Сегменты инвестиционного рынка. Основные элементы инвестиционного рынка (спрос, предложение, цена, конкуренция), их взаимосвязь.
- 84. Макроэкономические показатели развития инвестиционного рынка. Прогнозирование развития инвестиционного рынка.
- 85. Инвестиционная привлекательность отраслей экономики. Жизненный цикл отрасли, его стадии. Показатели инвестиционной привлекательности регионов.
- 86. Основные этапы процесса формирования инвестиционной стратегии предприятия.
- 87. Определение и сущность мирового хозяйства. Этапы, черты и тенденции развития мирового хозяйства. Субъекты современного мирового хозяйства.
- 88. Интернационализация, глобализация и транснационализация хозяйственной жизни.
- 89. Сущность международного разделения труда, единство и различия внутригосударственного и международного разделения труда.
- 90. Природные ресурсы и их роль в мировой экономике. Классификация природных ресурсов. Лесные ресурсы и их роль в мировом хозяйстве.
- 91. Человеческие ресурсы в мировом хозяйстве.
- 92. Основные понятия сетевой экономики. Метаперспективы сетевой экономики.
- 93. Электронное правительство, электронные службы, платежные системы, лицензирование, торговля.
- 94. Интернет-банкинг, интернет-трейдинг, телеработа, outsorsing.
- 95. Цена как экономическая категория. Роль цены на современном этапе экономического развития.
- 96. Ценообразующие факторы и их понятие. Методология ценообразования, ее понятие.
- 97. Ценовая политика, ее цели. Максимизация рентабельности (прибыли).
- 98. Основные типовые стратегии ценообразования и их характеристика.
- 99. Свободные цены и их роль в формировании рыночных отношений.
- 100. Теории цены в историческом аспекте. Стоимостная и маржинальная теория цены (теория предельной полезности), их недостатки. Теория рыночного ценообразования.