[#] Теория и практика AOP. Как мы это делаем в Яндексе
habrabot(difrex,1) — All
2016-06-30 18:00:03


Одна из ключевых особенностей работы в Яндексе — это свобода выбора технологий. В Авто.ру, где я работаю, нам приходится поддерживать большой пласт исторических решений, поэтому любая новая технология или библиотека встречается двумя вопросами коллег:

— Насколько это увеличит дистрибутив?
— Как это поможет нам писать меньше и эффективнее?

![][1]

Сейчас мы используем [RxJava][2], [Dagger 2][3], [Retrolambda][4] и [AspectJ][5]. И если о первых трёх технологиях слышал каждый разработчик, а многие даже применяют их у себя, то о четвёртой знают только хардкорные джависты, пишущие большие серверные проекты и разного рода энтерпрайзы.

Передо мной стояла цель ответить на эти два вопроса и обосновать использование AOP-методологии в Android-проекте. А это значит — написать код и показать наглядно, как аспектно-ориентированное программирование поможет нам ускорить и облегчить работу разработчиков. Но обо всём по порядку.

[Запасаемся поп-корном и готовим мозг к загрузке][6]

[1]: https://habrastorage.org/files/b11/1ea/672/b111ea67255547909ad1cfda06274286.jpg
[2]: https://github.com/ReactiveX/RxJava
[3]: http://google.github.io/dagger/
[4]: https://github.com/orfjackal/retrolambda
[5]: https://eclipse.org/aspectj/
[6]: https://habrahabr.ru/post/280117/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut