Не отобразилась форма расчета стоимости? Переходи по ссылке

Не отобразилась форма расчета стоимости? Переходи по ссылке

Научная статья на тему «Разработка и особенности применения системы Aspect.NET для академической версии .NET»

Аннотация. Статья посвящена разработке и особенностям применения системы аспектно-ориентированного программирования (АОП) Aspect.NET для платформы Microsoft Shared Source CLI (Rotor). Статья включает в себя исследование существующих подходов к разработке с использованием методологии АОП и обзор необходимых технологических и инструментальных средств разработки программного обеспечения для платформы Rotor.

Ключевые слова: аспектно-ориентированное программирование (АОП), аспект, сквозная функциональность, методологии программирования.

На сегодняшний день наиболее распространена методология объектно-ориентированного программирования (ООП). Несмотря на эффективность подхода ООП, в настоящее время существуют проблемы, для которых нужна новая методология. В современном мире промышленное производство программного обеспечения достигло таких огромных масштабов и такой сложности, что с каждым днем все труднее и дороже обходятся его разработка, поддержка, отладка, добавление новой функциональности, документирование, расширение и развитие. Аспектно-ориентированное программирование (АОП) предлагает решение этой проблемы. Программная система рассматривается как совокупность различных компонент, отвечающих за ту или иную функциональность. Некоторую функциональность можно реализовать путем создания некоего модуля или нескольких модулей. Под «модулем» понимается некая четко выраженная структурная единица программы – процедура, функция, метод, класс, структура данных, пакет. Но есть еще такое понятие, как сквозная функциональность (crosscutting concerns), которую невозможно эффективно реализовать вышеописанным образом, ее нельзя выделить в отдельные сущности, так как фрагменты ее реализации рассредоточены по коду всей программной системы.

Примерами сквозной функциональности может служить протоколирование (logging), добавление новых конструкций в некоторый язык программирования (например, generics в С#), обработка ошибок, реализация подсистемы безопасности. Методология АОП предлагает выделять такую сквозную функциональность в отдельные сущности – аспекты.

Современные АОП-инструментарии в основном ориентированы на Java, в меньшей степени на .NET. В настоящее время, в силу ряда причин, не существует доступного инструментария АОП-разработки для shared-source платформы Rotor, несмотря на растущую популярность АОП-подхода к разработке ПО. Таким образом, описываемая работа имеет как теоретическую часть – исследование существующих подходов к разработке программного обеспечения с использованием парадигмы АОП, так и практическую – создание АОП-системы для SSCLI/Rotor. Основные технологии, на которых построена система: Phoenix Research Development Kit (RDK), SSCLI (Shared Source Common Language Infrastructure)/Rotor 2.0, QT SDK, Aspect.NET. Таким образом, разработанная система, позволяющая использовать АОП при разработках для академической версии .NET, способствует более широкому использованию и распространению АОП, не ограничиваясь лишь платформами Java и (коммерческой) Microsoft.NET, что позволит сделать еще один шаг для накопления индустрией ПО опыта в создании программных систем с использованием данной методологии, что, безусловно, будет усиливать ее развитие и активное использование.

Список использованных источников

1. Vladimir O. Safonov. “Using aspect-oriented programming for trustworthy software development”. Wiley Interscience. John Wiley & Sons, 2008, p. 338.
2. Сафонов В.О. Практическое руководство по системе аспектно-ориентированного программирования Aspect.NET. Часть 1. – Компьютерные инструменты в образовании, 2008, № 3, С. 20-33.
3. Сафонов В.О. Практическое руководство по системе аспектно-ориентированного программирования Aspect.NET. Часть 2. – Компьютерные инструменты в образовании, 2008, № 4, С. 12-20.
4. Фуксман А.Л. Технологические аспекты создания программных систем. М.: Статистика, 1979.
5. http://aosd.net/ — Aspect-Oriented Software Development Community & Conference.
6. Kiczales G., Lamping J., Mendhekar A. Aspect-oriented programming. Published in proceedings of the European Conference on Object-Oriented Programming (ECOOP). Finland, Springer-Verlag LNCS 1241. June 1997.

Средняя оценка 0 / 5. Количество оценок: 0

Поставьте оценку первым.

Сожалеем, что вы поставили низкую оценку!

Позвольте нам стать лучше!

Расскажите, как нам стать лучше?

1570

Закажите такую же работу

Не отобразилась форма расчета стоимости? Переходи по ссылке

Не отобразилась форма расчета стоимости? Переходи по ссылке