jokerconf Joker 2013 (15.10.2013 — 15.10.2013)

Разработка API в Java-проекте: как оказывать влияние на людей и не приобрести врагов

img

Если ваша программа состоит более чем из одного Java-класса, это значит, что в ней есть API. Чем больше кода в продукте, чем больше людей над ним работают, чем дольше он существует, тем более важную роль играет качество API, при помощи которого разные части продукта взаимодействуют друг с другом. Как разрабатывать удобный API? Как безболезненно менять API? Как защитить других от неправильного использования создаваемого API? Как (и зачем) можно разработать свой микро-язык (DSL) на Java?

В своём докладе я поделюсь опытом разработки API для различных подсистем платформы IntelliJ IDEA, которые затем использовались в десятках плагинов к IDE.