Preview

Труды Института системного программирования РАН

Расширенный поиск

Использование аспектно-ориентированного программирования для выполнения запросов по исходному коду программ

https://doi.org/10.15514/ISPRAS-2012-23-21

Аннотация

Запросы по исходному коду программ помогают разработчикам обнаруживать искомые фрагменты кода и определять их взаимоотношения друг с другом. Для выполнения запросов по исходному коду автоматизированным образом существуют различные подходы от достаточно простых, основывающихся на текстовом поиске по шаблонам, до более интеллектуальных, осуществляющих поиск на основе формального представления программ и позволяющих использовать для запросов естественные языки. В статье предлагается подход к выполнению запросов по исходному коду программ на основе аспектно-ориентированного программирования, рассматриваются достоинства и недостатки такого подхода.

Об авторах

Е. М. Новиков
ИСП РАН
Россия


А. В. Хорошилов
ИСП РАН
Россия


Список литературы

1. S. Paul and A. Prakash. Querying Source Code using an Algebraic Query Language. In Proceedings of the International Conference on Software Maintenance, pp. 127-136, 1994.

2. В.С. Мутилин, Е.М. Новиков, А.В. Страх, А.В. Хорошилов, П.Е. Швед. Архитектура Linux Driver Verification. Труды Института системного программирования РАН, том 20, cтр. 163-187, 2011.

3. A. Khoroshilov, V. Mutilin, E. Novikov, P. Shved, A. Strakh. Towards an Open Framework for C Verification Tools Benchmarking. Proceedings of the Eighth International Andrei Ershov Memorial Conference «Perspectives of Systems Informatics» (PSI 2011), pp. 82-91, 2011.

4. Проект верификации драйверов Linux Driver Verification. http://forge.ispras.ru/projects/ldv.

5. E. Novikov. One Approach to Aspect-Oriented Programming Implementation for the C programming language. roceedings of the 5th Spring/Summer Young Researchers' Colloquium on Software Engineering, Yekaterinburg, pp. 74-81, 12-13 May, 2011.

6. Реализация аспектно-ориентированного программирования для языка Си C Instrumentation Framework. http://forge.ispras.ru/projects/cif.

7. Реализация аспектно-ориентированного программирования для языка Java AspectJ. http://www.eclipse.org/aspectj.

8. GNU Compiler Collection. http://gcc.gnu.org.

9. S. Paul, A. Prakash. A framework for source code search using program patterns. In IEEE Transactions on Software Engineering, pp. 463–475, 1994.

10. W. G. Griswold, D. C. Atkinson, and C. McCurdy. Fast, flexible syntactic pattern matching and processing. In WPC’96: Proceedings of the 4th International Workshop on Program Comprehension (WPC’96), Washington, DC, USA, p. 144, 1996.

11. J. Ebert, B. Kullbach, A. Winter. Querying as an Enabling Technology in Software Reengineering, Proceedings of the Third European Conference on Software Maintenance and Reengineering, p.42, March 03-05, 1999.

12. E. Hajiyev, M. Verbaere, O. de Moor. CodeQuest: scalable source code queries with datalog. Proceedings of the 20th European conference on Object-Oriented Programming, Nantes, France, July 03-07, 2006.

13. M. P. Robillard, G. C. Murphy. Concern graphs: finding and describing concerns using structural program dependencies. Proceedings of the 24th International Conference on Software Engineering, May 19-25, Orlando, Florida, 2002.

14. D. Janzen and K. D. Volder. Navigating and querying code without getting lost. In Proceedings of the 2nd international conference on Aspect-oriented software development (AOSD '03), 178-187, 2003.

15. Интегрированная среда разработки Eclipse. http://www.eclipse.org.

16. H. Stuart. Hunting bugs with Coccinelle. Masters Thesis, University of Copenhagen, August, 2008.

17. M. Kimmig, M. Monperrus, and M. Mezini. Querying source code with natural language. In Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE '11), IEEE Computer Society, Washington, DC, USA, 376-379, 2011.


Рецензия

Для цитирования:


Новиков Е.М., Хорошилов А.В. Использование аспектно-ориентированного программирования для выполнения запросов по исходному коду программ. Труды Института системного программирования РАН. 2012;23. https://doi.org/10.15514/ISPRAS-2012-23-21

For citation:


Novikov E.M., Khoroshilov A.V. Using Aspect-Oriented Programming for Querying Source Code. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2012;23. (In Russ.) https://doi.org/10.15514/ISPRAS-2012-23-21



Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)