Разработка инструментов поддержки аспектно-ориентированного Web-программирования в системе Aspect.NET тема диссертации и автореферата по ВАК РФ 05.13.11, кандидат физико-математических наук Нгуен Ван Доан

  • Нгуен Ван Доан
  • кандидат физико-математических науккандидат физико-математических наук
  • 2012, Санкт-Петербург
  • Специальность ВАК РФ05.13.11
  • Количество страниц 125
Нгуен Ван Доан. Разработка инструментов поддержки аспектно-ориентированного Web-программирования в системе Aspect.NET: дис. кандидат физико-математических наук: 05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей. Санкт-Петербург. 2012. 125 с.

Оглавление диссертации кандидат физико-математических наук Нгуен Ван Доан

Оглавление

Введение

Глава 1. Концепции и история аспектно-ориентированного программирования

1.1. Основные концепции аспектно-ориентированного подхода

1.2. История аспектно-ориентированного программирования

1.2.1. Предпосылки возникновения аспектно-ориентированного программирования

1.2.2. Создание аспектно-ориентированного программирования

Глава 2. Существующие подходы к \¥еЬ-программированию

2.1. История \УеЬ-программирования

2.2. Технология ASP.NET и ее особенности

2.3. Существующий подход к разработке \¥еЬ-приложений и его недостатки

2.4. Существующие работы по применению АОП для \Veb-программирования

Глава 3. Аспектно-ориентированный подход к \¥еЬ-программированию

3.1. Инструментарий Aspect.NET

3.2. Взаимодействие Aspect.NET с ASP.NET

3.3. Принципы разработки аспектов в системе Aspect.NET для ASP.NET приложений

3.4. Задачи \УеЬ-программирования, допускающие решение с помощью аспектно-ориентированного подхода

3.5. Существующие решения задач \¥еЬ-программирования

3.6. Аспектно-ориентированный подход к решению задач \¥еЬ-программирования

Глава 4. Реализация аспектов поддержки Web-пpoгpaммиpoвaния

4.1. Реализация \¥еЬ-аспектов

4.2. Условие внедрения аспектов

4.3. Эффективность и производительность применения аспектно-ориентированного подхода

4.4. Отладка аспектов и оценка их влияния на \¥еЬ-приложения

Глава 5. Реализация библиотеки \УеЬ-аспектов

5.1. Архитектура библиотеки

5.2. Использование библиотеки

5.3. Внедрение \¥еЬ-аспектов в \¥еЬ-приложение

Заключение

Апробация и публикации автора по теме диссертации

Литература

Рекомендованный список диссертаций по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК

Введение диссертации (часть автореферата) на тему «Разработка инструментов поддержки аспектно-ориентированного Web-программирования в системе Aspect.NET»

Введение

На сегодняшний день объектно-ориентированное программирование (ООП) является методологией, которая находит широкое применение в сфере разработки программного обеспечения (ПО). Данная методология программирования, несомненно, показала свою силу при моделировании общего поведения разрабатываемой программной системы. Однако, опыт показывает, что ООП не в достаточной мере позволяет справляться со все возрастающей сложностью программных продуктов. При разработке ПО существуют проблемы, для решения которых необходимы новые методологии, такие как аспектно-ориентированное программирование.

Аспектно-ориентированное программирование (АОП) [7] -«перспективный подход к инженерии программ, предназначенный для разработки сквозной функциональности (cross-cutting concerns) - идей, методов, функциональных возможностей, реализуемых и модифицируемых в ходе разработки программ, которые принципиально, по своей природе, не могут быть реализованы одной обобщенной процедурой {generalized procedure) - тесно взаимосвязанной совокупностью модулей (например, иерархией классов), а требуют для своей реализации совокупности рассредоточенных действий (tangled actions), которые должны быть добавлены в различные части существующего программного кода целевого приложения, для того, чтобы новая сквозная функциональность заработала» [11]. Иначе говоря, сквозная функциональность - это функциональность, реализация которой рассредоточена по коду приложения. Тем самым, АОП позволяет систематически добавлять и модифицировать новую функциональность, в том числе и относящуюся к Web-программированию. АОП является развитием процедурного и объектно-ориентированного программирования. Данная методология призвана снизить время, стоимость

и сложность разработки современного программного продукта. Следует отметить, что концепция АОП не заменяет подход ООП, а органично дополняет его [8, 13].

Суть концепции АОП заключается в том, что программная система рассматривается как совокупность различных компонентов. Каждый компонент отвечает за ту или иную функциональность. Некоторую функциональность можно реализовать в одном модуле или в нескольких. Но существует функциональность, реализация которой рассредотачивается по всей программной системе, в связи с чем ее реализация путем создания некоего модуля или нескольких модулей затруднительна, наряду с данным обстоятельством ее нельзя выделить в отдельные сущности. В отличие от ООП, АОП позволяет выделить и реализовать сквозную функциональность в отдельных модулях, называемых аспектами. Каждый аспект применяется путем систематизированного внедрения (weaving) фрагментов кода аспекта в рассредоточенные модули целевой программной системы.

Примерами сквозной функциональности являются протоколирование (logging), безопасность исполнения программы в многопоточной вычислительной среде (MT-safety), обработка ошибок, реализация подсистемы безопасности (security).

В настоящее время Web-программирование играет важную роль в сфере разработки программного обеспечения (ПО). День ото дня Web-приложения (Web applications) быстро развиваются и постепенно заменяют приложения для настольной системы (desktop applications). Развитие Web-приложений является важной тенденцией эволюции компьютерных технологий, операционных систем, сетевых архитектур и прикладных программ [16]. Поэтому применение АОП в Web-программировании, как показано в данной работе, имеет важное значение для разработки Web-приложений. Оно позволяет разработчикам снизить время, стоимость и

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

В данной диссертационной работе рассмотрено применение АОП в Web-программировании для платформы Microsoft.NET. Web-программирование для данной платформы реализуется с помощью ASP.NET [17], а АОП для платформы .NET реализовано в системе Aspect.NET [18], разработанной в лаборатории Java-технологии математико-механического факультета Санкт-Петербургского Государственного Университета под научным руководством профессора Сафонова В. О.

Основные цели диссертационной работы:

1. Анализ методов применения АОП и системы Aspect.NET для разработки и модификации ASP.NET-приложений.

2. Выделение некоторых существенных задач Web-программирования, к которым можно применить АОП.

3. Разработка библиотеки аспектов в системе Aspect.NET для решения выделенных задач Web-программирования.

4. Анализ эффективности и производительности применения АОП для разработки ASP.NET-приложений.

Диссертационная работа состоит из введения, пяти глав, заключения, списка литературы. Работа содержит 125 страниц, 14 рисунков, 4 таблицы, список литературы из 111 наименований.

В первой главе объясняются концепции аспектно-ориентированного программирования, описывается история развития в индустрии программирования данной парадигмы программирования в целом. В частности, глава исследует предпосылки возникновения аспектно-ориентированного подхода и его создание.

Во второй главе описываются существующие подходы к Web-программированию. Дается история развития Web-программирования. Далее дается краткое описание технологии ASP.NET и ее особенности, приводятся условия при разработке ASP.NET-приложений, в которых можно применить Aspect.NET - в текущей версии (2.2) Aspect.NET применим только к ASP.NET Web-приложениям и к коду программной логики страниц (code-behind). Глава продолжается анализом существующего подхода, основанного на объектно-ориентированном программировании, к разработке ASP.NET Web-приложений. На основе данного анализа выявляются недостатки при разработке Web-приложений с использованием объектно-ориентированного подхода. В заключение в главе приводится обзор существующих работ по применению АОП для Web-программирования.

В третьей главе описывается аспектно-ориентированный подход к Web-программированию. Дается краткое описание инструментария Aspect.NET. Описывается взаимодействие Aspect.NET с ASP.NET. Далее в главе рассматриваются методы и принципы разработки аспектов в системе Aspect.NET для ASP.NET-приложений. Выделяются задачи Web-программирования, допускающие решение с помощью аспектно-ориентированного подхода, такие как:

1. протоколирование (logging);

2. безопасность (аутентификация, авторизация, олицетворение (передача пользователю полномочий другого пользователя, необходимых для выполнения каких-либо действий) -authentication, authorization, impersonation);

3. криптография строки запроса (query string)',

4. криптография cookie-файлов;

5. кодирование гипертекста;

6. расширение пользовательского Web-интерфейса;

7. защита от Cross-Site Scripting атаки;

8. инструментирование ASP.NET-приложений для безопасности.

Глава продолжается рассмотрением существующих решений задач Web-программирования, в частности, дается краткий обзор существующих АОП-инструментариев для платформы .NET и объектно-ориентированный подход к решениям задач Web-программирования. В заключение в главе описываются недостатки существующих решений задач Web-программирования и приводится изложение аспектно-ориентированного подхода к их решению: с помощью АОП каждая задача реализуется в аспекте в виде набора действий (actions), затем определяются условия внедрения для присоединения этих действий к нужным точкам выполнения Web-приложения, после этого запускается подсистема внедрения (weaver) аспектов системы Aspect.NET.

В четвертой главе подробно рассматривается реализация аспектов поддержки Web-программирования, решающих выделенные в третьей главе задачи. Описывается влияние условий внедрения этих аспектов на Web-приложение. Главу продолжает анализ эффективности и производительности применения аспектно-ориентированного подхода для разработки ASP.NET-приложений. На основе данного анализа дается вывод, что производительность исполнения Web-приложения после внедрения аспектов с помощью Aspect.NET не хуже производительности такого Web-приложения без применения АОП, никакого избыточного инструментального кода не внедрено и не выполнено. То есть при использовании АОП для разработки Web-приложений в системе Aspect.NET, производительность не изменяется, однако объем кода, время разработки и трудоемкость уменьшаются, код Web-приложения упрощается. Приводятся недостатки реализации рассмотренных задач Web-программирования без применения АОП и преимущества их реализации с применением АОП. В заключение в главе рассматриваются отладка аспектов и оценка их влияния на Web-приложения.

В пятой главе рассматривается реализация библиотеки \¥еЬ-аспектов. Описывается архитектура библиотеки. Дается описание использования библиотеки. В заключение в главе описывается внедрение \¥еЬ-аспектов в \УеЬ-приложение с помощью командных строк.

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

Похожие диссертационные работы по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК

Заключение диссертации по теме «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», Нгуен Ван Доан

Заключение

В данной диссертационной работе рассмотрено применение АОП в Web-программировании для платформы Microsoft.NET. Применение АОП в Web-программировании открывает большие возможности для разработки Web-приложений. Благодаря применению АОП, Web-программирование наследует все преимущества аспектно-ориентированного программирования в процессе разработки Web-приложений: уменьшение времени, стоимости и сложности разработки; упрощение сопровождения Web-продуктов и внесения в них изменений; создание надежных и безопасных Web-приложений за счет выделения и реализации сквозной функциональности в определенных модулях - аспектах.

В диссертационной работе получены следующие основные результаты:

1. Проанализированы методы применения АОП, реализованного в системе Aspect.NET, для разработки и модификации ASP.NET-приложений.

2. Выделены важные задачи Web-программирования, к которым целесообразно применить АОП:

a. протоколирование (logging);

b. безопасность (аутентификация, авторизация, олицетворение (передача пользователю полномочий другого пользователя, необходимых для выполнения каких-либо действий) - authentication, authorization, impersonation);

c. криптография строки запроса (query string)',

d. криптография cookie-файлов;

e. кодирование гипертекста;

f. расширение пользовательского Web-интерфейса;

g. защита от Cross-Site Scripting атаки;

h. инструментирование ASP.NET-приложений для безопасности.

3. Разработана библиотека аспектов в системе Aspect.NET для решения выделенных задач Web-программирования.

4. Проанализированы эффективность и производительность применения АОП для разработки ASP.NET-приложений: производительность Web-приложения с применением и без применения Aspect.NET приблизительно одинакова, однако объем кода, время разработки и трудоемкость уменьшаются; код, сопровождение, изменение и расширение Web-приложения упрощаются.

Все полученные результаты являются новыми.

Библиотека аспектов поддержки Web-программирования, разработанная автором диссертации, позволила впервые предложить применение АОП при разработке Web-приложений в среде .NET. Библиотека Web-аспектов WebAspect и пример ее использования WebAspectExample опубликованы на сайте проекта Aspect.NET [18].

На основании рассмотренных и использованных идей выполняется дальнейшее исследование применения АОП и развитие библиотеки аспектов для разработки Web-приложений и Web-сервисов.

По теме диссертации опубликованы работы [1 - 6].

Апробация и публикации автора по теме диссертации

Основные результаты и выводы диссертационной работы докладывались на следующих научных конференциях и семинарах:

1. Межвузовский конкурс-конференция студентов, аспирантов и молодых ученых Северо-Запада «Технологии Microsoft в теории и практике программирования». Россия, Санкт-Петербург, СПбГПУ, 2011.

2. Межвузовский конкурс-конференция студентов, аспирантов и молодых ученых Северо-Запада «Технологии Microsoft в теории и практике программирования». Россия, Санкт-Петербург, СПбГПУ, 2010.

3. Всероссийская конференция с элементами научной школы для молодежи «Проведение научных исследований в области обработки, хранения, передачи и защиты информации». Россия, Ульяновск, УлГТУ, 2009.

4. Семинары кафедры информатики и лаборатории Java-технологии математико-механического факультета СПбГУ.

Основные результаты диссертации опубликованы в работах [1 - 6]. В работах [1-6] Сафонову В. О. принадлежат общие постановки задач, а Нгуену Ван Доану - разработка и реализация методов и принципов решения данных задач, разработка примеров и программного комплекса. В работе [1] соискателю принадлежат описание методов применения АОП для задач безопасности в ASP.NET-приложениях, анализ эффективности и производительности применения аспектов безопасности в ASP.NET-приложениях. В работе [2] соискатель описывает аспектно-ориентированный подход к решению задач Web-программирования с использованием системы Aspect.NET. В работе [3] соискатель описывает методы применения АОП для

задач разработки АБР-МЕТ-приложений, реализацию аспектов поддержки \УеЬ-программироваиия, анализ эффективности и производительности применения \¥еЬ-аспектов в \¥еЬ-приложениях. В статье [4] соискателю принадлежит описание методов и принципов применения АОП для задач разработки \¥еЬ-приложений на платформе Microsoft.NET. В публикации [5] соискатель описывает применение АОП при разработке ASP.NET-приложений на основе системы Aspect.NET. В публикации [6] соискателем описывается применение АОП и системы Aspect.NET для реализации аспектов безопасности в А8РЛЧЕТ-приложениях. Работы [1 - 3] опубликованы в журналах, входящих в перечень ВАК.

Список литературы диссертационного исследования кандидат физико-математических наук Нгуен Ван Доан, 2012 год

Литература

[1]. Нгуен Ван Доан, Сафонов В. О., Реализация аспектов безопасности в А8Р^ЕТ-приложениях на основе системы Aspect.NET // Компьютерные инструменты в образовании. 2010. № 4. С. 3-11.

[2]. Нгуен Ван Доан, Сафонов В. О., Применение аспектно-ориентированного подхода и системы Aspect.NET к разработке \Veb-приложений // Компьютерные инструменты в образовании. 2010. № 5. С. 311.

[3]. Нгуен Ван Доан, Сафонов В. О., Средства аспектно-ориентированного программирования для разработки \¥еЬ-приложений в системе Aspect.NET // Вестн. С.-Петерб. ун-та. Сер. 10. 2011. Вып. 1. С. 85-105.

[4]. В. Д. Нгуен, В. О. Сафонов, Применение системы Aspect.NET для реализации аспектно-ориентированного программирования при разработке ASP.NET - приложений // Сборник трудов Всероссийской конференции с элементами научной школы для молодежи "Проведение научных

исследований в области обработки, хранения, передачи и защиты информации", Ульяновский государственный технический университет, 12/2009. Т. 3. С. 22-29.

[5]. Нгуен Ван Доан, Сафонов В. О., Применение аспектно-ориентированного программирования при разработке ASP.NET -приложений на основе системы Aspect.NET // Тезисы докладов конференции "Технологии Microsoft в теории и практике программирования", Санкт-Петербургский Государственный Политехнический Университет, 03/2010. С. 160-161.

[6]. Нгуен Ван Доан, Сафонов В. О., Применение аспектно-ориентированного подхода и системы Aspect.NET для реализации аспектов безопасности в ASP.NET-приложениях // Тезисы докладов конференции "Технологии Microsoft в теории и практике программирования", Санкт-Петербургский Государственный Политехнический Университет, 03/2011. С. 51.

[7]. Web-сайт по аспектно-ориентированной разработке программ. http://aosd.net. Проверено 17.08.2011 г.

[8]. Safonov V. О. Using aspect-oriented programming for trustworthy software development. Hoboken, New Jersey: Wiley Interscience, John Wiley & Sons. 2008. 338p.

[9]. Сафонов В. О. Aspect.NET - инструмент аспектно-ориентированного программирования для разработки надежных и безопасных программ // Компьютерные инструменты в образовании, 2007, 5, С. 03-13.

[10]. Сафонов В. О. Современные технологии разработки надежных и безопасных программ (Trustworthy Computing). - Компьютерные инструменты в образовании, 2008, JN2 6, С. 25-33.

[11]. Сафонов В. О. Практическое руководство по системе аспектно-ориентированного программирования Aspect.NET. Часть 1. - Компьютерные инструменты в образовании, 2008, № 3, С. 20-33.

[12]. Сафонов В. О. Практическое руководство по системе аспектно-ориентированного программирования Aspect.NET. Часть 2. - Компьютерные инструменты в образовании, 2008, № 4, С. 12-20.

[13]. Vladimir О. Safonov and Dmitry A.Grigoriev. "Aspect.NET - an aspect-oriented programming tool for Microsoft.NET." In: Proceedings of IEEE Regional Conference 2005, St. Petersburg, 2005.

[14]. Vladimir O. Safonov. "Aspect.NET: concepts and architecture." .NET Developer's Journal. October 2004.

[15]. Vladimir O. Safonov. "Aspect.NET - A New Approach to Aspect-Oriented Programming." .NET Developer's Journal.April 2003.

[16]. Rakesh Pai. Web Applications - The Wave Of The Future. http://piecesofrakesh.blogspot.com/2005/01/web-applications-wave-of-fltture.htmK Проверено 17.08.2011 г.

[17]. Web-сайт технологии ASP.NET http:/7www.asp.net. Проверено 17.08.2011 г.

[18]. Web-сайт проекта Aspect.NET. http://www.aspectdotnet.org. Проверено 17.08.2011 г.

[19]. Rational Software Corporation Web site, http://www-.rational .com. Проверено 17.08.2011 г.

[20]. E. Dijkstra. Programming Considered as a Human Activity. Classics in Software Engineering. New York, Yourdon Press, 1979.

[21]. Пышкин E. В. Основные концепции и механизмы объектно-ориентированного программирования- М., 2005.

[22]. Jacobson I., Ng P. Aspect-Oriented Software Development with Use Cases. - Addison Wesley Professional, 2004. - 464 c. - ISBN 0-321-26888-1.

[23]. Фуксман A.JI. Технологические аспекты создания программных систем. - М.: Статистика, 1979. - 184 с. - ISBN.

[24]. Stepanov Alexander A., Kershenbaum Aaron, and Musser David R.: Higher Order Programming. March 5, 1987.

[25]. Kapur Deepak, Musser David R, Stepanov Alexander A. Tecton, A language of manipulating Generic Objects. 1981.

[26]. Остерн M. Обобщенное программирование и STL. - Невский диалект, 2004. - 544 с. - ISBN 5-7940-0119-4.

[27]. Lopes С. АОР: a historical perspective (what's in a name?) // Aspect-Oriented Software Development. - , 2005.

[28]. Xerox PARC web site: http: //w vv w. pare .com. Проверено 17.08.2011 г.

[29]. Kiczales G., Lamping J., Mendhekar A., etc. Aspect-oriented programming. Published in proceedings of the European Conference on Object-Oriented Programming (ECOOP). Finland, Springer-Verlag LNCS 1241. June 1997.

[30]. AspectJ web site: http://www.eclipse.org/aspecti. Проверено 17.08.2011 г.

[31]. AspectC++ web site: http://www.aspectc.org. Проверено 17.08.2011 г.

[32]. FeatureC++ web site: http://wwwiti .cs.uni-magdeburg.de/i ti db/fee. Проверено 17.08.2011 г.

[33]. Aspect# web site: http://www.castleproject.org/AspectSharp. Проверено 17.08.2011 г.

[34]. AspectDNG web site: http://aspееtdng.tigris.оrg. Проверено 17.08.2011 г.

[35]. Spring АОР web site: h ttp:// w ww. spri n gfra me work. org. Проверено 17.08.2011 г.

[36]. Jboss АОР web site: http://www.iboss.org/ibossaop. Проверено 17.08.2011 г.

[37]. Интернет: http://ru.wikipedia.org/wiki/HHTepHeT. Проверено 17.08.2011 г.

[38]. Всемирная паутина: http://ru■wikipedia■org/wiki/Bceмиpнaя паутина. Проверено 17.08.2011 г.

[39]. Hobbes' Internet Timeline 10.1:

http:/7vvww.zakon.org/robert/1ntemet/tiineHne/. Проверено 17.08.2011 г.

[40]. Денис Борн. Интернету - 40 лет. Как всё начиналось:

http://www.3dnews.ru/news/i nternetu 40 _ 1 et kak vssh nachinalos/. Проверено 17.08.2011 г.

[41]. Рейволд Б.У. Универсум информации: Жизнь и деятельность Поля Отле.-М.: Книга, 1976.-401 с. - ISBN.

[42]. Brooks F.Jr. Mythical Man-Month, The: Essays on Software Engineering, Anniversary Edition. - Addison Wesley Professional, 1995. - 336 c. - ISBN 0201-83595-9.

[43]. Microsoft .NET web site: http,7/www.microsoft.сош/net/. Проверено 17.08.2011 г.

[44]. Architecture Journal Profile: Scott Guthrie: http:/7msdn.microsoft.com/cn-us/'l ibrary/bb266332.aspx. Проверено 17.08.2011 г.

[45]. Michiel van Otegem. Interview with Scott Guthrie, creator of ASP.NET: http://www.va^temii.nl/PermaLin.k,guid,d9826145-4()8c-4fb9-8939-79d7e6al9218.aspx. Проверено 17.08.2011 г.

[46]. Tim Anderson. How ASP.NET began in Java: http://www.theregister.co.Uk/2007/l0/30/asp net Java project cool/. Проверено 17.08.2011 г.

[47]. CRUD: http://ru.wikipedia.org/wiki/CRUD. Проверено 17.08.2011 г.

[48]. ASP.NET A J AX: http://www.asp.net/ajax. Проверено 17.08.2011 г.

[49]. Introduction to Web Application Projects: http : //m sdn. microsoft.com/en-u s Л i b r a ry / a a73 0 8 80( V S. 8 0 ). a s p x. Проверено 17.08.2011 г.

[50]. Microsoft Visual Studio 2005 Team Suite Service Pack 1: http://www.rnicrosoft.com/downloads/details.aspx?familyid=bb4a75ab-e2d4-4c96-b39d-37baf6bSb 1 dc&displavlang:-en. Проверено 17.08.2011 г.

[51]. Астелс Д., Миллер Г., Новак М. Практическое руководство по экстремальному программированию. - М.: Издательский дом "Вильяме", 2002. - 320 с. - ISBN 5-8459-0329-7.

[52]. Kroll P., Kruchten P. Rational Unified Process Made Easy: A Practitioner's Guide to the RUP, The. - Addison Wesley Professional, 2003. - c. - ISBN 0-32116609-4.

[53]. Kruchten P. Rational Unified Process, The: An Introduction. - Addison Wesley Professional, 2003. - 336 c. - ISBN 0-321-19770-4.

[54]. Beck K. Extreme Programming Explained: Embrace Change. - Addison Wesley Professional, 2004. - 224 c. - ISBN 0-321-27865-8.

[55]. Morville P., Rosenfeld L. Information Architecture for the World Wide Web. - O'Reilly, 2006. - 456 c. - ISBN 0-596-52734-9.

[56]. Internet World Stats: http://www.internetworldstats.сот/. Проверено 17.08.2011 г.

[57]. Monnox A. Rapid J2EE Development: An Adaptive Foundation for Enterprise Applications. - Prentice Hall, 2005. - 432 c. - ISBN 0-13-147220-8.

[58]. Matthew MacDonald, Mario Szpuszta. Pro ASP.NET 3.5 in C# 2008. Apress. 2008. ISNB 1-59059-893-8.

[59]. Building Secure ASP.NET Applications: Authentication, Authorization, and Secure Communication: littp://msdn■microsoft.com/en-us/1ibrarv/aa302388.aspx. Проверено 17.08.2011 г.

[60]. Статистика уязвимостей Web-приложений за 2009 год: http://www.securitylab.m/analytics/394205.php. Проверено 17.08.2011 г.

[61]. Введение. Подготовка к инструментированию и трассировка: http://msdn.microsoft.coni/m-ru/library/x5952w0c.aspx. Проверено 17.08.2011 г.

[62]. Instrument ASP.NET 2.0 Applications for Security: http://msdn.mic.rosoft.com/en4is/ms998325.aspx. Проверено 17.08.2011 г.

[63]. Общие сведения о мониторинге работоспособности системы ASP.NET: http://msdii.niicrosoft.com/ni-ru/library/bb3989330/o28v=VS.9()%29.aspx. Проверено 17.08.2011 г.

[64]. LOOM.NET Web pages. Available at http://www.rapier-loom.net. Проверено 17.08.2011 г.

[65]. Mono. Available at http://www.mono- project.com. Проверено 17.08.2011 г.

[66]. AspectDNG Web pages. Available at http://aspectdng.tigris.org. Проверено 17.08.2011 г.

[67]. Aspect# Web pages. Available at http://sourceforge.Tiet/projects/aspectsharp. Проверено 17.08.2011 г.

[68]. PostSharp Web pages. Available at http://www.pоstsharp.оrg. Проверено 17.08.2011 г.

[69]. Weave.NET. Available at http://www.dsg.cs.tcd.ie/dynamic/7category__id— 26. Проверено 17.08.2011 г.

[70]. Wicca and Phx.Morph Web site. Available at http://www.cs.columbia.edu/-eaddy/wicca. Проверено 17.08.2011 г.

[71]. Microsoft Phoenix. Available at http://research.m.icrosoft.com/phoenix. Проверено 17.08.2011 г.

[72]. Prevent Cross-Site Scripting in ASP.NET: http:/7msdn.mi croso ft.co m/en -u.s/iifararv/ms998274.aspx. Проверено 17.08.2011 г.

[73]. Protect From Injection Attacks in ASP.NET: http://msdn.microsoft.com/en-us/library/bb355989.aspx. Проверено 17.08.2011 г.

[74]. Preventing JavaScript Injection Attacks: http://www.asp.net/LEARN/mvc/tutorial-06-cs.aspx. Проверено 17.08.2011 г.

[75]. Log4net project: http://logging.apache.org/log4net. Проверено 17.08.2011 г.

[76]. Windows Data Protection: http://msdn.microsoft.com/en-us/1 ibrary/ms995355.aspx. Проверено 17.08.2011 г.

[77]. Boehm В. Software Engineering Economics. Prentice Hall, Englewood Cliffs, NJ, 1981.

[78]. Nicholas Lesiecki. Unit test your aspects:

htt.ps:/7wwfw.ibm.com/developerworks/1ava/'library/j-aopwoi'kl 1. Проверено

17.08.2011 г.

[79]. Mitigating Cross-site Scripting With HTTP-only Cookies:

http://msdn.microsoft.com/en-us/librarv/ms533Q46.aspx. Проверено 17.08.2011 г.

[80]. Сайт элемента управления Google-карта: http://en.googlemaps.subgurim.net/. Проверено 17.08.2011 г.

[81]. Google Maps API: http://code.google.com/apis/inaps/signup.htm1. Проверено 17.08.2011 г.

[82]. Web-программирование Wiki: litip://ru.wikipedia.оrg/wiki/Bеб-программирование. Проверено 17.08.2011 г.

[83]. Интервью Степанова: http://www.stlport.org/resources/StepanovUSA.html. Проверено 17.08.2011 г.

[84]. NSFNET: http://www.nsfnet-1egacy.org/. Проверено 17.08.2011 г.

[85]. История Интернета: http://vidy-saitov.ru/.istoriya-interneta.htm. Проверено 17.08.2011 г.

[86]. Дмитрий Шейко. Аспектно-ориентированная веб-разработка и РНР: http://сitforurn.ru/internet/php/aosd/. Проверено 17.08.2011 г.

[87]. aoPHP project: http://sourceforge.net/projects/aophp/. Проверено 17.08.2011 г.

[88]. Seasar.PHP project: http://www.seasar.org/en/php5/index.html. Проверено 17.08.2011 г.

[89]. MFAOP project: http://www.mfaop.com/. Проверено 17.08.2011 г.

[90]. PHPAspect project: http://phpaspect.org/. Проверено 17.08.2011 г.

[91]. Ренат Зубаиров. Использование аспектно-ориентированного программирования для реализации системы защиты WEB приложений: http://citfomm,ru/internet/javascript/a.op/. Проверено 17.08.2011 г.

[92]. Hokamura К., Ubayashi N., Nakajima S., Iwai A. Aspect-Oriented Programming for Web Controller Layer. Software Engineering Conference, 2008. APSEC '08. 15th Asia-Pacific.

[93]. Gabriel Hermosillo, Roberto Gomez-Cardenas, Lionel Seinturier, Laurence Duchien. AProSec: an Aspect for Programming Secure Web Applications.

[94]. M. Huang, C. Wang, L. Zhang. Toward a Reusable and Generic Security Aspect Library. In 11.

[95]. Sven Casteleyn, Zoltân Fiala, Geert-Jan Houben, Kees van der Sluijs. From Adaptation Engineering To Aspect-Oriented Context-Dependency.

[96]. Fiala, Z., Houben G.J. A Generic Transcoding Tool for Making Web Applications Adaptive. In Proceedings of the CAiSE'05 FORUM, Porto, Portugal, 2005, 15-20.

[97]. A. M. Reina, J. Torres, M. Того. Aspect-Oriented Web Development vs. Non Aspect-Oriented Web Development.

[98]. Design by Contract: http://en.wikipedia.Org/w.iki/Design by contract. Проверено 17.08.2011 г.

[99]. Nicolai Kuntze, Thomas Rauch, Andreas U. Schmidt. Security for distributed Web-applications via Aspect-Oriented Programming.

[100].Gabriel Hermosillo, Roberto Gomez-Cardenas, Lionel Seinturier, Laurence Duchien. Using Aspect Programming to Secure Web Applications.

[101]. Михеев О. И. Разработка сред пользовательских интерфейсов нового поколения с применением аспектно-ориентированного программирования. -Дисс. на соиск. уч. степ. канд. техн. наук, СПб: Политехнический университет, 2007.

[102]. JSR-000168 Portlet Specification:

http://www.jcp,org/aboutJava/communityprocess/review/isrl68/. Проверено 17.08.2011 г.

[103].Нгуен Ван Доан, Михеев О. И. Практическое применение АОП при разработке пользовательских интерфейсов на основе Веб-технологий.

[104].Нгуен Ван Доан. Разработка систем удаленного доступа к данным на основе технологии AJAX с применением Аспектно-Ориентированного Программирования. - Дисс. на соиск. уч. степ, магистра, СПб: Политехнический университет, 2008.

[105]. Михеев О. И, Нгуен Ван Доан. Web-based spreadsheets with OpenOffice.org and Dojo: http://www.iav3world.com/javaworld/iw~05-2008/jw-05-spreadsheets.html. Проверено 17.08.2011 г.

[106].Иванова Е. Б., Михеев О. И., Нгуен Ван Доан. Осуществление удаленного доступа к электронным документам с использованием аспектно-ориентированного подхода. Научно-технические ведомости СПБ ГПУ. № 3. -СПБ.: Изд-во Политехи, ун-та, 2008. - С 18-21.

[107]. OpenOffice.org: http://www.openoffice.org/. Проверено 17.08.2011 г.

[108]. Dojо Toolkit: http://doiotoolkit.org/. Проверено 17.08.2011 г.

[109]. Johnny Halife. АОР in the ASP.NET МУС way: http://blogs.southworks.net/ihalife/2008/08/06/aop-in-the-aspnet-mvc-way/. Проверено 17.08.2011 г.

[110]. Can Gencer. ASP.NET МУС 3 Aspect Oriented Programming with Castle Interceptors: http://cangencer.wordpress.com/201 l./06/02/asp-net-mvc-3-aspect-oriented-programming-with-castle-interceptors/. Проверено 17.08.2011 г.

[111]. Castle project: http://www.castleproject.org. Проверено 17.08.2011 г.

Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.